@abtnode/blocklet-services 1.8.64 → 1.8.65-beta-5405baf2

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/409.e053e762.chunk.js","mappings":"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","sources":["contexts/node.js","contexts/team.js","components/blocklet/component.js","components/layout/admin.js","pages/dashboard.js","../../../blocklet/meta/lib/parse-navigation-from-blocklet.js","../../util/lib/format-name.js","../../util/lib/is-path-prefix-equal.js","../../ux/lib/actions.js","../../ux/lib/blocklet/access/config-access.js","../../ux/lib/blocklet/access/index.js","../../ux/lib/blocklet/actions.js","../../ux/lib/blocklet/add-cert.js","../../ux/lib/blocklet/agreement-app.js","../../ux/lib/blocklet/agreement.js","../../ux/lib/blocklet/app-avatar.js","../../ux/lib/blocklet/audit-logs.js","../../ux/lib/blocklet/blocklet-source.js","../../ux/lib/blocklet/bundle-avatar.js","../../ux/lib/blocklet/component/add.js","../../ux/lib/blocklet/component/configuration.js","../../ux/lib/blocklet/component/delete.js","../../ux/lib/blocklet/component/environment.js","../../ux/lib/blocklet/component/expiration.js","../../ux/lib/blocklet/component/index.js","../../ux/lib/blocklet/component/line.js","../../ux/lib/blocklet/component/navigation/locale-tabs.js","../../ux/lib/blocklet/component/navigation/navigation-actions.js","../../ux/lib/blocklet/component/navigation/navigation-dialog.js","../../ux/lib/blocklet/component/navigation/navigation-preview.js","../../ux/lib/blocklet/component/navigation/simple-select.js","../../ux/lib/blocklet/component/select-store.js","../../ux/lib/blocklet/component/setting.js","../../ux/lib/blocklet/component/sortable-tree.js","../../ux/lib/blocklet/component/store-blocklet-list.js","../../ux/lib/blocklet/config-navigation.js","../../ux/lib/blocklet/configuration.js","../../ux/lib/blocklet/disk-info.js","../../ux/lib/blocklet/icons.js","../../ux/lib/blocklet/install-from-url.js","../../ux/lib/blocklet/log.js","../../ux/lib/blocklet/mode.js","../../ux/lib/blocklet/monitor.js","../../ux/lib/blocklet/overview.js","../../ux/lib/blocklet/preferences/app-sk.js","../../ux/lib/blocklet/preferences/index.js","../../ux/lib/blocklet/preferences/wallet-type.js","../../ux/lib/blocklet/purchase/common.js","../../ux/lib/blocklet/purchase/component-purchase.js","../../ux/lib/blocklet/purchase/index.js","../../ux/lib/blocklet/router/action/add-domain-alias.js","../../ux/lib/blocklet/router/action/add-rule.js","../../ux/lib/blocklet/router/action/config-routing-rule.js","../../ux/lib/blocklet/router/action/delete-domain-alias.js","../../ux/lib/blocklet/router/action/delete-rule.js","../../ux/lib/blocklet/router/action/update-rule.js","../../ux/lib/blocklet/router/domain-actions.js","../../ux/lib/blocklet/router/domain-status.js","../../ux/lib/blocklet/router/rule-actions.js","../../ux/lib/blocklet/router/rule-list.js","../../ux/lib/blocklet/router/util.js","../../ux/lib/blocklet/runtime-info.js","../../ux/lib/blocklet/status.js","../../ux/lib/blocklet/types.js","../../ux/lib/blocklet/version.js","../../ux/lib/certificate.js","../../ux/lib/click-to-copy.js","../../ux/lib/confirm.js","../../ux/lib/contexts/audit-log.js","../../ux/lib/contexts/deleting-blocklets.js","../../ux/lib/contexts/node.js","../../ux/lib/contexts/session.js","../../ux/lib/contexts/team.js","../../ux/lib/delete-confirm.js","../../ux/lib/did-address.js","../../ux/lib/dot.js","../../ux/lib/form/form-text-input.js","../../ux/lib/hooks/mobile-width.js","../../ux/lib/hooks/use-app-logo.js","../../ux/lib/hooks/use-bundle-logo.js","../../ux/lib/hooks/use-navigation.js","../../ux/lib/layout/feedback.js","../../ux/lib/logs/clock.js","../../ux/lib/logs/download.js","../../ux/lib/logs/log-terminal.js","../../ux/lib/monitor/card.js","../../ux/lib/monitor/cpu.js","../../ux/lib/monitor/memory.js","../../ux/lib/passport-tag.js","../../ux/lib/permission.js","../../ux/lib/relative-time.js","../../ux/lib/store/add.js","../../ux/lib/store/delete.js","../../ux/lib/store/item.js","../../ux/lib/table-icons.js","../../ux/lib/table.js","../../ux/lib/tag.js","../../ux/lib/team/members/actions.js","../../ux/lib/team/members/index.js","../../ux/lib/team/members/invitations.js","../../ux/lib/team/members/invite-member.js","../../ux/lib/team/members/issue-passport.js","../../ux/lib/team/members/member.js","../../ux/lib/team/members/passport-issuances.js","../../ux/lib/team/members/passports.js","../../ux/lib/team/members/toggle-user-approval.js","../../ux/lib/team/members/transfer-node.js","../../ux/lib/team/members/util.js","../../ux/lib/team/passports/color.js","../../ux/lib/team/passports/detail.js","../../ux/lib/team/passports/index.js","../../ux/lib/team/passports/mutate-role.js","../../ux/lib/team/passports/trusted-issuer.js","../../ux/lib/team/passports/trusted-issuers.js","../../ux/lib/team/search-input.js","../../ux/lib/team/styles/list-header.js","../../ux/lib/util/api.js","../../ux/lib/util/constants.js","../../ux/lib/util/locales.js"],"sourcesContent":["import { useContext } from 'react';\n\nimport { NodeContext } from '@abtnode/ux/lib/contexts/node';\nimport { WELLKNOWN_SERVICE_PATH_PREFIX } from '@abtnode/constant';\n\nimport client from '../libs/client';\nimport getWsClient, { create, useSubscription } from '../libs/ws';\nimport restApi from '../libs/api';\n\nconst { Provider, Consumer } = NodeContext;\n\n// eslint-disable-next-line react/prop-types\nfunction NodeProvider({ children }) {\n const imgPrefix = `${WELLKNOWN_SERVICE_PATH_PREFIX}/static/images`;\n\n const { serverDid, serverVersion } = window.env;\n\n const value = {\n imgPrefix,\n api: client,\n restApi,\n ws: {\n getWsClient,\n create,\n useSubscription,\n },\n type: 'service',\n\n // Compatible with format in server dashboard\n info: {\n // server did\n did: serverDid,\n version: serverVersion,\n },\n };\n\n return <Provider value={{ node: value }}>{children}</Provider>;\n}\n\nfunction useNodeContext() {\n const { node } = useContext(NodeContext);\n return node;\n}\n\nexport { NodeContext, NodeProvider, Consumer as NodeConsumer, useNodeContext };\n","import { useState, useContext, useEffect } from 'react';\n\nimport Toast from '@abtnode/ux/lib/toast';\nimport { getDisplayName } from '@blocklet/meta/lib/util';\nimport { BLOCKLET_CONFIGURABLE_KEY } from '@blocklet/constant';\nimport { RBAC_CONFIG, EVENTS } from '@abtnode/constant';\nimport { TeamContext } from '@abtnode/ux/lib/contexts/team';\n\nimport { useBlockletContext } from './blocklet';\nimport client from '../libs/client';\nimport { useSubscription } from '../libs/ws';\n\nconst { Provider, Consumer } = TeamContext;\n\nconst { did: teamDid, appId } = window.env;\n\n// eslint-disable-next-line react/prop-types\nfunction TeamProvider({ children }) {\n const { blocklet } = useBlockletContext();\n\n const [invitations, setInvitations] = useState([]);\n const [roles, setRoles] = useState([]);\n const [permissions, setPermissions] = useState([]);\n\n const teamName = getDisplayName(blocklet);\n\n const passportColor =\n (blocklet?.environments || []).find((x) => x.key === BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_PASSPORT_COLOR)?.value ||\n 'auto';\n\n const trustedPassports = blocklet?.trustedPassports || [];\n const enablePassportIssuance = blocklet?.enablePassportIssuance !== false;\n\n const getTeamData = async () => {\n try {\n const res = await client.doBatchQuery({\n getRoles: { input: { teamDid } },\n getPermissions: { input: { teamDid } },\n getInvitations: { input: { teamDid } },\n });\n\n setRoles(\n (res.getRoles.roles || [])\n // exclude some roles: not passport or only for ci\n .filter((x) => !RBAC_CONFIG.roles.some((y) => y.name === x.name && (!y.passport || y.ci)))\n // backwards compatibility\n .map((x) => {\n x.description = x.description || `Use this passport to connect ${teamName} as ${x.title}`;\n return x;\n })\n );\n setPermissions(res.getPermissions.permissions || []);\n setInvitations(res.getInvitations.invitations || []);\n } catch (err) {\n Toast.error(err.message);\n }\n };\n\n const getUsers = async ({ query, paging } = {}) => {\n const input = { teamDid };\n if (paging) {\n input.paging = paging;\n }\n\n if (query) {\n input.query = query;\n }\n\n input.sort = { lastLoginAt: -1 };\n\n return client.getUsers({ input });\n };\n\n const getUsersCountPerRole = () => client.getUsersCountPerRole({ input: { teamDid } });\n\n const refreshTeam = () => getTeamData();\n\n useEffect(() => {\n if (!blocklet?.meta?.did) {\n return;\n }\n getTeamData();\n }, [blocklet?.meta?.did]); // eslint-disable-line\n\n const onUserEvent = (data) => {\n if (data.teamDid === teamDid) {\n getTeamData(teamDid);\n }\n };\n\n useSubscription(EVENTS.USER_ADDED, onUserEvent, [teamDid]);\n useSubscription(EVENTS.USER_REMOVED, onUserEvent, [teamDid]);\n useSubscription(EVENTS.USER_UPDATED, onUserEvent, [teamDid]);\n\n const value = {\n teamDid,\n teamIssuerDid: appId,\n teamName,\n invitations,\n roles,\n permissions,\n trustedPassports,\n isNodeTeam: false,\n enablePassportIssuance,\n refresh: refreshTeam,\n passportColor,\n endpoint: window.location.origin,\n blocklet,\n api: {\n getUsers,\n getUsersCountPerRole,\n },\n };\n\n return <Provider value={value}>{children}</Provider>;\n}\n\nfunction useTeamContext() {\n return useContext(TeamContext);\n}\n\nexport { TeamContext, TeamProvider, Consumer as TeamConsumer, useTeamContext };\n","import PropTypes from 'prop-types';\nimport joinUrl from 'url-join';\n\nimport Components from '@abtnode/ux/lib/blocklet/component';\n\nexport default function BlockletComponent({ blocklet, ...props }) {\n const getComponentUrl = (mountPoint) => `${joinUrl(window.location.origin, mountPoint)}`;\n\n return <Components blocklet={blocklet} getComponentUrl={getComponentUrl} {...props} />;\n}\n\nBlockletComponent.propTypes = {\n blocklet: PropTypes.object.isRequired,\n};\n\nBlockletComponent.defaultProps = {};\n","/** @jsxImportSource @emotion/react */\nimport PropTypes from 'prop-types';\nimport styled from '@emotion/styled';\nimport { Box } from '@mui/material';\nimport ErrorOutlineIcon from '@mui/icons-material/ErrorOutline';\nimport { ErrorBoundary } from 'react-error-boundary';\nimport '@iconify/iconify';\n\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport Center from '@arcblock/ux/lib/Center';\nimport Button from '@arcblock/ux/lib/Button';\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport { ErrorFallback } from '@arcblock/ux/lib/ErrorBoundary';\nimport { useLocation } from 'react-router-dom';\nimport Dashboard from '@blocklet/ui-react/lib/Dashboard';\nimport { formatError } from '@abtnode/ux/lib/util';\nimport Feedback from '@abtnode/ux/lib/layout/feedback';\n\nimport { useBlockletContext } from '../../contexts/blocklet';\nimport { useNodeContext } from '../../contexts/node';\n\nexport default function Layout({ children }) {\n const { t } = useLocaleContext();\n const {\n loading,\n error,\n actions: { refreshBlocklet },\n env,\n blocklet,\n } = useBlockletContext();\n const { info: nodeInfo } = useNodeContext();\n const location = useLocation();\n\n const { appId, version } = env;\n\n const infos = [\n {\n label: 'App ID',\n value: appId,\n },\n {\n label: 'App Version',\n value: version,\n },\n {\n label: 'App Bundle Name',\n value: blocklet?.meta?.bundleName,\n },\n {\n label: 'Server Id',\n value: nodeInfo.did,\n },\n {\n label: 'Server Version',\n value: nodeInfo.version,\n },\n ];\n\n return (\n <StyledDashboard\n legacy={false}\n fullWidth\n footerProps={{\n addon: <Feedback infos={infos} />,\n }}>\n {!blocklet && loading && (\n <Center relative=\"parent\">\n <Spinner />\n </Center>\n )}\n\n {!blocklet && error && (\n <Center relative=\"parent\">\n <Box display=\"flex\" alignItems=\"center\">\n <ErrorOutlineIcon color=\"error\" sx={{ marginRight: 1 }} />\n {formatError(error)}\n </Box>\n <Button onClick={() => refreshBlocklet()}>\n <span style={{ textDecoration: 'underline' }}>{t('common.retry')}</span>\n </Button>\n </Center>\n )}\n\n {!!blocklet && (\n <div className=\"dashboard-layout-body\">\n <div className=\"dashboard-layout-main\">\n <Box className=\"dashboard-layout-main\">\n <Box flex={1} padding=\"16px\" display=\"flex\" flexDirection=\"column\">\n <ErrorBoundary FallbackComponent={ErrorFallback} resetKeys={[location.pathname]}>\n {children}\n </ErrorBoundary>\n </Box>\n </Box>\n </div>\n </div>\n )}\n </StyledDashboard>\n );\n}\n\nLayout.propTypes = {\n children: PropTypes.any,\n};\n\nLayout.defaultProps = {\n children: null,\n};\n\nconst StyledDashboard = styled(Dashboard)`\n .dashboard-layout-body {\n flex: 1;\n display: flex;\n padding-top: 16px;\n }\n .dashboard-layout-main {\n flex: 1;\n padding: 0;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n }\n`;\n","/* eslint-disable react/jsx-one-expression-per-line */\nimport styled from '@emotion/styled';\nimport { useEffect, isValidElement } from 'react';\nimport { useNavigate, useParams } from 'react-router-dom';\n\nimport Box from '@mui/material/Box';\nimport Badge from '@mui/material/Badge';\n\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport Tabs from '@arcblock/ux/lib/Tabs';\nimport { getDisplayName, getAppMissingConfigs } from '@blocklet/meta/lib/util';\nimport { WELLKNOWN_SERVICE_PATH_PREFIX } from '@abtnode/constant';\nimport { getBlockletServices, isInstalling } from '@abtnode/ux/lib/util';\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport Alert from '@arcblock/ux/lib/Alert';\n\nimport { DeletingBlockletProvider } from '@abtnode/ux/lib/contexts/deleting-blocklets';\nimport Logs from '@abtnode/ux/lib/blocklet/log';\nimport Overview from '@abtnode/ux/lib/blocklet/overview';\nimport Preferences from '@abtnode/ux/lib/blocklet/preferences';\nimport AuditLogs from '@abtnode/ux/lib/blocklet/audit-logs';\nimport BlockletConfigNavigation from '@abtnode/ux/lib/blocklet/config-navigation';\nimport Passports from '@abtnode/ux/lib/team/passports';\nimport Members from '@abtnode/ux/lib/team/members';\nimport BlockletStatus from '@abtnode/ux/lib/blocklet/status';\nimport BlockletActions from '@abtnode/ux/lib/blocklet/actions';\nimport BlockletAppAvatar from '@abtnode/ux/lib/blocklet/app-avatar';\nimport Monitor from '@abtnode/ux/lib/blocklet/monitor';\n\nimport getWsClient from '../libs/ws';\nimport { useBlockletContext } from '../contexts/blocklet';\nimport { NodeProvider } from '../contexts/node';\nimport { TeamProvider } from '../contexts/team';\nimport Components from '../components/blocklet/component';\nimport AdminLayout from '../components/layout/admin';\n\nfunction BlockletService() {}\n\nfunction Dashboard() {\n const navigate = useNavigate();\n const { tab: currentTab = 'overview' } = useParams();\n const {\n blocklet,\n actions: { refreshBlocklet },\n } = useBlockletContext();\n const { t } = useLocaleContext();\n\n const did = blocklet?.meta?.did;\n\n const onTabChange = (newTab) => {\n navigate(`${WELLKNOWN_SERVICE_PATH_PREFIX}/admin/${newTab}`);\n };\n\n const onUpdate = async () => {\n refreshBlocklet();\n };\n\n const missingRequiredConfigs = !blocklet || isInstalling(blocklet.status) ? [] : getAppMissingConfigs(blocklet);\n\n const tabs = [\n { label: t('common.overview'), value: 'overview' },\n // TODO\n // { label: t('router.routerSetting'), value: 'access' },\n {\n label: (\n <Badge color=\"error\" variant=\"dot\" invisible={!missingRequiredConfigs.length}>\n {t('common.components')}\n </Badge>\n ),\n value: 'components',\n },\n ];\n\n if (!isInstalling(blocklet?.status)) {\n tabs.push({ label: t('common.configuration'), value: 'configuration' });\n }\n\n tabs.push({ label: t('common.auditLogs'), value: 'audit-logs' });\n tabs.push({ label: t('common.logs'), value: 'logs' });\n tabs.push({ label: t('common.configNavigation'), value: 'navigation' });\n tabs.push({ label: t('common.monitor'), value: 'monitor' });\n\n const services = getBlockletServices(blocklet);\n if (services.length) {\n // TODO\n // tabs.splice(2, 0, { label: t('blocklet.services'), value: 'services' });\n }\n\n const renderAuditLogs = <AuditLogs scope={did} />;\n\n const renders = {\n overview: <Overview />,\n services: <BlockletService />,\n members: (\n <Box mt={-5}>\n <Members type=\"blocklet\" />\n </Box>\n ),\n passports: (\n <Box mt={-4.5}>\n <Passports />\n </Box>\n ),\n components: Components,\n configuration: <Preferences blocklet={blocklet} onUpdate={onUpdate} />,\n 'audit-logs': renderAuditLogs,\n logs: Logs,\n navigation: BlockletConfigNavigation,\n monitor: <Monitor />,\n };\n const TabComponent = renders[currentTab] || renders.overview;\n\n const showHeader = !['members', 'passports'].includes(currentTab);\n\n const content = !blocklet ? (\n <Spinner />\n ) : (\n <DeletingBlockletProvider type=\"components\">\n {showHeader && <Tabs tabs={tabs} current={currentTab} onChange={onTabChange} scrollButtons=\"auto\" />}\n <div className=\"page-content\">\n {isValidElement(TabComponent) ? TabComponent : <TabComponent blocklet={blocklet} />}\n </div>\n </DeletingBlockletProvider>\n );\n\n return (\n <NodeProvider>\n <TeamProvider>\n <AdminLayout>\n <Main>\n {showHeader && (\n <>\n <Box component=\"div\" className=\"page-header\">\n <Box component=\"h2\" variant=\"h4\" className=\"page-title\" color=\"textPrimary\">\n {blocklet ? <BlockletAppAvatar blocklet={blocklet} style={{ marginRight: 16 }} /> : null}\n {blocklet ? (\n <Box display=\"flex\" alignItems=\"center\">\n <Box>{getDisplayName(blocklet)}</Box>\n {!!blocklet && (\n <BlockletStatus\n size=\"12px\"\n style={{ marginLeft: 8 }}\n status={blocklet.status}\n source={blocklet.source}\n />\n )}\n </Box>\n ) : (\n `${t('common.blocklet')} ${t('common.detail')}`\n )}\n </Box>\n {blocklet ? (\n <BlockletActions\n className=\"page-actions\"\n hasPermission\n blocklet={blocklet}\n onStart={() => {}}\n onComplete={() => {}}\n variant=\"group\"\n />\n ) : null}\n </Box>\n\n {!!missingRequiredConfigs.length && (\n <Alert type=\"error\" style={{ margin: '12px 0' }}>\n {t('blocklet.config.missingRequired')}\n </Alert>\n )}\n </>\n )}\n {content}\n </Main>\n </AdminLayout>\n </TeamProvider>\n </NodeProvider>\n );\n}\n\nexport default function WrapDashboard() {\n const { blocklet } = useBlockletContext();\n\n const did = blocklet?.meta?.did;\n\n useEffect(() => {\n const wsClient = getWsClient();\n\n if (did) {\n wsClient.connect();\n }\n\n return () => {\n if (did && wsClient.isConnected()) {\n wsClient.disconnect();\n }\n };\n }, [did]);\n\n return <Dashboard />;\n}\n\nconst Main = styled.main`\n .page-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .page-title {\n display: flex;\n align-items: center;\n\n .page-link {\n font-size: 15px;\n margin-top: 8px;\n margin-left: 8px;\n }\n }\n\n .page-content {\n margin-top: 36px;\n }\n\n @media (max-width: ${(props) => props.theme.breakpoints.values.md}px) {\n .page-header {\n flex-direction: column;\n align-items: flex-start;\n .page-actions,\n .MuiButtonGroup-root {\n width: 100%;\n }\n .MuiButtonGroup-root {\n .MuiButtonBase-root {\n flex: 1;\n }\n .blocklet-action-text {\n display: none;\n }\n }\n }\n\n .page-title {\n margin-bottom: 15px;\n }\n }\n`;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.splitNavigationBySection = exports.flatternNavigation = exports.checkLink = exports.joinLink = exports.cleanOrphanNavigation = exports.filterNavigation = exports.nestNavigationList = exports.isMatchSection = exports.deepWalk = exports.parseNavigation = void 0;\nconst unionWith_1 = __importDefault(require(\"lodash/unionWith\"));\nconst isEqual_1 = __importDefault(require(\"lodash/isEqual\"));\nconst pick_1 = __importDefault(require(\"lodash/pick\"));\nconst isNil_1 = __importDefault(require(\"lodash/isNil\"));\nconst omit_1 = __importDefault(require(\"lodash/omit\"));\nconst cloneDeep_1 = __importDefault(require(\"lodash/cloneDeep\"));\nconst url_join_1 = __importDefault(require(\"url-join\"));\nconst path_1 = __importDefault(require(\"path\"));\nconst is_absolute_url_1 = __importDefault(require(\"is-absolute-url\"));\nconst lodash_1 = require(\"lodash\");\nconst DEFAULT_SECTION = 'header';\nconst BASE_PATH = '/';\nconst DEFAULT_LINK = '/';\nconst ID_SEPARATE = '/';\n/**\n * 判断一个 url 是否为合法的 url 拼接路径\n * /abc, /abc/bcd valid\n * /abc, /abc//bcd invalid\n * @param value 需要检查的 url path\n * @returns boolean\n */\nconst checkUrlPath = (value) => {\n return /^\\/(?:[^/]+\\/)*$/.test(value) || /^\\/(?:[^/]+\\/)*[^/]+$/.test(value);\n};\nconst checkLink = (value) => {\n if ((0, is_absolute_url_1.default)(value) || checkUrlPath(value)) {\n return true;\n }\n return false;\n};\nexports.checkLink = checkLink;\nfunction deepWalk(tree, cb = () => { }, { key = 'children', order = 'first' } = {}) {\n function walk(current, { index = 0, parent = null, level = 0 } = {}) {\n if (Array.isArray(current)) {\n current.forEach((item, i) => {\n walk(item, { index: i, parent, level: level + 1 });\n });\n }\n else if (current) {\n if (order === 'first') {\n cb(current, parent, { index, level });\n }\n walk(current[key], { parent: current, level });\n if (order === 'last') {\n cb(current, parent, { index, level });\n }\n }\n }\n walk(tree);\n}\nexports.deepWalk = deepWalk;\n/**\n * 判断一个传入值是否属于一个 section\n * @param {string | array} sections 需要判断的对象\n * @param {string} section 目标 section\n */\nfunction isMatchSection(sections, section) {\n if (section === DEFAULT_SECTION && (0, isNil_1.default)(sections)) {\n return true;\n }\n if (Array.isArray(sections)) {\n return sections.includes(section);\n }\n return sections === section;\n}\nexports.isMatchSection = isMatchSection;\nfunction tryParseItem(item) {\n try {\n return JSON.parse(item);\n }\n catch (_a) {\n return item;\n }\n}\nfunction normalizeNavigationList(navigationList) {\n return navigationList.map((item) => {\n const tempData = Object.assign({}, item);\n if (tempData.role) {\n tempData.role = tryParseItem(tempData.role);\n }\n if (tempData.section) {\n tempData.section = tryParseItem(tempData.section);\n }\n if (tempData.title) {\n tempData.title = tryParseItem(tempData.title);\n }\n if (tempData.link) {\n tempData.link = tryParseItem(tempData.link);\n }\n return tempData;\n });\n}\nfunction optionalJoin(prefix = '/', url = '') {\n if ((0, is_absolute_url_1.default)(url || '')) {\n return url;\n }\n // remove last slash\n const resultUrl = path_1.default.join(prefix, url || DEFAULT_LINK);\n if (resultUrl.length > 1 && resultUrl.endsWith('/')) {\n return resultUrl.slice(0, resultUrl.length - 1);\n }\n return resultUrl;\n}\nfunction smartJoinLink(_parentLink, _childLink, { strict = true, } = {}) {\n let parentLink = _parentLink;\n let childLink = _childLink;\n if (!strict) {\n parentLink = parentLink || '/';\n childLink = childLink || '/';\n }\n if ((0, lodash_1.isObject)(parentLink) && (0, lodash_1.isString)(childLink) && checkLink(childLink)) {\n return Object.keys(parentLink).reduce((res, key) => {\n res[key] = optionalJoin(parentLink[key], childLink);\n return res;\n }, {});\n }\n if ((0, lodash_1.isString)(parentLink) && checkLink(parentLink) && (0, lodash_1.isObject)(childLink)) {\n return Object.keys(childLink).reduce((res, key) => {\n res[key] = optionalJoin(parentLink, childLink[key]);\n return res;\n }, {});\n }\n if ((0, lodash_1.isString)(parentLink) && (0, lodash_1.isString)(childLink)) {\n if (checkLink(parentLink) || checkLink(childLink)) {\n return optionalJoin(parentLink, childLink);\n }\n return childLink;\n }\n if ((0, lodash_1.isObject)(parentLink) && (0, lodash_1.isObject)(childLink)) {\n const keys = [...new Set([...Object.keys(parentLink), ...Object.keys(childLink)])];\n return keys.reduce((res, key) => {\n res[key] = optionalJoin(parentLink[key], childLink[key]);\n return res;\n }, {});\n }\n return childLink;\n}\nfunction joinLink(navigation, components) {\n const copyNavigation = (0, cloneDeep_1.default)(navigation);\n deepWalk(copyNavigation, (item, parent) => {\n const component = item.component || item.child;\n if (component) {\n const findComponent = components.find((v) => v.name === component);\n if (findComponent) {\n item.link = smartJoinLink(findComponent.link, item.link, { strict: false });\n }\n }\n else if (parent) {\n item.link = smartJoinLink(parent.link, item.link);\n }\n }, { key: 'items' });\n return copyNavigation;\n}\nexports.joinLink = joinLink;\n/**\n * 将树状结构的导航列表进行扁平化处理\n * @param {array} navigationList 树状结构的导航列表\n * @param {object} params 配置参数\n * @param {number} params.depth 扁平化的层级,默认为 1(全拍平)\n * @param {function} params.transform 当发生拍平处理时\n * @returns 扁平化后的导航列表\n */\nfunction flatternNavigation(list = [], { depth = 1, transform = (v) => v } = {}) {\n const copyList = (0, cloneDeep_1.default)(list);\n const finalList = [];\n deepWalk(copyList, (item, parent, { level }) => {\n if (level >= depth) {\n const { items = [] } = item;\n if (items && Array.isArray(items) && items.length > 0) {\n delete item.items;\n const transformedItems = items.map((v) => transform(v, item));\n if (parent) {\n parent.items.push(...transformedItems);\n }\n else {\n const tmpItem = transform((0, omit_1.default)(item, ['items']), parent);\n finalList.push(tmpItem, ...transformedItems);\n }\n }\n else if (level === 1) {\n const tmpItem = transform((0, omit_1.default)(item, ['items']), parent);\n finalList.push(tmpItem);\n }\n }\n else if (level === 1) {\n finalList.push(item);\n }\n }, { key: 'items', order: 'last' });\n return finalList;\n}\nexports.flatternNavigation = flatternNavigation;\n/**\n * 将 blocklet 中的数据进行处理,获得当前应用的导航数据及组件数据\n * @param {object} blocklet blocklet 应用实例对象\n * @returns 导航数据及组件数据\n */\nfunction parseBlockletNavigationList(blocklet = {}) {\n const components = [];\n /**\n *\n * @param {object} current 当前 blocklet 的数据\n * @param {object} parent 当前 blocklet 的父组件数据\n * @returns\n */\n function genNavigationListByBlocklet(current, parent = {}) {\n var _a, _b, _c, _d, _e, _f, _g;\n const targetList = [];\n const { children = [], meta = {} } = current;\n const navigation = (0, cloneDeep_1.default)((meta === null || meta === void 0 ? void 0 : meta.navigation) || []);\n if (((_b = (_a = current.meta) === null || _a === void 0 ? void 0 : _a.capabilities) === null || _b === void 0 ? void 0 : _b.navigation) !== false) {\n targetList.push(...navigation);\n }\n const parentName = parent.name || '';\n const parentBase = parent.mountPoint || BASE_PATH;\n const currentName = current === blocklet ? '' : meta.name || '';\n const currentBase = current === blocklet ? '' : current.mountPoint || BASE_PATH;\n for (const child of children) {\n const childName = child.meta.name;\n const childBase = child.mountPoint;\n const mergeName = [parentName, currentName, childName].filter(Boolean).join('.');\n const childNavigation = child.meta.navigation || [];\n const mergeBase = (0, url_join_1.default)(parentBase, currentBase, childBase);\n if (((_d = (_c = child.meta) === null || _c === void 0 ? void 0 : _c.capabilities) === null || _d === void 0 ? void 0 : _d.navigation) !== false) {\n components.push({\n did: child.meta.did,\n name: mergeName,\n link: mergeBase,\n title: child.meta.title || '',\n navigation: childNavigation.map((item) => (Object.assign({ \n // 给每个 navigation 赋予一个 setion,用于在 autocomplete 提供依据 section 筛选的基础\n section: DEFAULT_SECTION }, item))),\n });\n }\n // 在现有的 navigation 中判断是否存在 children\n const matchNavigation = navigation.find((item) => {\n if (item.component) {\n return item.component === childName;\n }\n return false;\n });\n // 如果存在,并且当前 navigation 未配置任何 link,则将 child mountpoint 给它\n if (matchNavigation) {\n if (!matchNavigation.link) {\n if (child.meta.navigation && child.meta.navigation.length > 0) {\n const items = genNavigationListByBlocklet(child, { mountPoint: currentBase, name: currentName });\n if (items.length > 0) {\n matchNavigation.items = (_e = matchNavigation.items) !== null && _e !== void 0 ? _e : [];\n matchNavigation.items.push(...items);\n }\n }\n else {\n matchNavigation.link = DEFAULT_LINK;\n }\n }\n }\n else if (((_g = (_f = child.meta) === null || _f === void 0 ? void 0 : _f.capabilities) === null || _g === void 0 ? void 0 : _g.navigation) !== false) {\n const childItems = genNavigationListByBlocklet(child, { mountPoint: currentBase, name: currentName });\n // 否则动态注入一个 navigation\n const tmpData = {\n title: child.meta.title,\n component: childName,\n // 动态注入的 navigation 需要一个默认的 id,blocklet.meta.id 是唯一的,可以用上这个值\n id: child.meta.did,\n };\n if (childItems.length > 0) {\n tmpData.items = childItems;\n tmpData.link = undefined;\n }\n else {\n tmpData.link = DEFAULT_LINK;\n }\n targetList.push(tmpData);\n }\n }\n return targetList;\n }\n const navigationList = genNavigationListByBlocklet(blocklet);\n return {\n navigationList,\n components,\n };\n}\nfunction patchBuiltinNavigation(navigation) {\n const copyNavigation = (0, cloneDeep_1.default)(navigation).filter((item) => item.id);\n deepWalk(copyNavigation, (item, parent) => {\n var _a;\n if (item.items && item.items.length) {\n for (let i = item.items.length - 1; i >= 0; i--) {\n if (!item.items[i].id) {\n item.items.splice(i, 1);\n }\n }\n // 如果 items 全都不符合规范,保留 item 本身,为其增加一个默认的链接\n if (item.items.length === 0) {\n if (item.component) {\n item.link = item.link || DEFAULT_LINK;\n }\n }\n }\n if (parent) {\n item.parent = parent.id;\n // 由于默认设置的 id(在 blocklet.yml 中手动赋予的存在重复的可能性比较大,所以通过 `/` 拼接父节点的 id,可以大大降低重复的概率)\n item.id = [parent.id, item.id].join(ID_SEPARATE);\n }\n item.from = item.from || 'yaml';\n item.visible = (_a = item.visible) !== null && _a !== void 0 ? _a : true;\n }, { key: 'items' });\n return copyNavigation;\n}\n/**\n * 将多层结构的导航列表压缩至指定最大深度的树状结构\n * @param {array} navigation 树状结构的导航列表数据\n * @param {number} depth 压缩的层级\n * @returns 压缩后的树状结构导航列表数据\n */\nfunction compactNavigation(navigation, depth = 2) {\n const copyNavigation = (0, cloneDeep_1.default)(navigation);\n const resData = flatternNavigation(copyNavigation, {\n depth,\n transform: (item, parent) => {\n var _a;\n if (parent) {\n if (!item._parent) {\n item._parent = parent.id;\n if (!parent.component) {\n item.link = smartJoinLink(parent.link, item.link);\n }\n }\n item.section = item.section || parent.section || [DEFAULT_SECTION];\n item.visible = (_a = item.visible) !== null && _a !== void 0 ? _a : parent.visible;\n }\n item.component = [parent.component, item.component].filter(Boolean).join('.');\n return item;\n },\n });\n deepWalk(resData, (item) => {\n if (item.items && item.items.length > 0) {\n item.items.reduceRight((all, cur) => {\n if (cur._parent) {\n const index = item.items.findIndex((v) => v.id === cur._parent);\n if (index >= 0) {\n item.items.splice(index, 1);\n }\n delete cur._parent;\n }\n return null;\n }, null);\n }\n }, { key: 'items' });\n return resData;\n}\n/**\n * 返回指定的导航中的子菜单(属于指定 section)\n * @param {object} navigationItem 指定的某一个导航数据\n * @param {string} section 指定的 section 区域\n * @returns\n */\nfunction getNavigationListBySection(navigationItem, section) {\n if (section && Array.isArray(navigationItem.items)) {\n return navigationItem.items\n .filter((item) => {\n // 如果当前子菜单没有 section,它的 section 应该跟随父菜单的 section\n if ((0, isNil_1.default)(item.section)) {\n return isMatchSection(navigationItem.section, section);\n }\n if (isMatchSection(item.section, section)) {\n return true;\n }\n return false;\n })\n .map((item) => (Object.assign(Object.assign({}, item), { section })));\n }\n return [];\n}\n/**\n * 根据导航中每一个子菜单所属的 section,将原由的导航数据分离为多个导航数据(此时每一个导航 item 只会包含一个 section)\n * @param {array} navigation 导航列表数据(树状结构,目前只适用于两层的树状结构)\n * @returns\n */\nfunction splitNavigationBySection(navigation) {\n const copyNavigation = (0, cloneDeep_1.default)(navigation);\n const allNavigationList = [];\n for (const navigationItem of copyNavigation) {\n const baseNavigation = (0, cloneDeep_1.default)((0, omit_1.default)(navigationItem, ['items']));\n const itemNavigationList = [];\n // eslint-disable-next-line no-inner-declarations\n function patchNavigationItem(item, section) {\n const sectionNavigationList = getNavigationListBySection(item, section);\n itemNavigationList.push(Object.assign(Object.assign({}, baseNavigation), { section, items: sectionNavigationList }));\n }\n if (Array.isArray(navigationItem.section)) {\n for (const section of navigationItem.section) {\n patchNavigationItem(navigationItem, section);\n }\n }\n else if (navigationItem.section) {\n const { section } = navigationItem;\n patchNavigationItem(navigationItem, section);\n }\n else if (navigationItem.items && navigationItem.items.length > 0) {\n const allSectionList = navigationItem.items.reduce((list, currentValue) => {\n const { section = [DEFAULT_SECTION] } = currentValue || {};\n list.push(...section);\n return list;\n }, []);\n const sectionList = [...new Set(allSectionList)];\n for (const section of sectionList) {\n patchNavigationItem(navigationItem, section);\n }\n }\n else {\n itemNavigationList.push(Object.assign(Object.assign({}, navigationItem), { section: DEFAULT_SECTION }));\n }\n allNavigationList.push(...itemNavigationList);\n }\n return allNavigationList;\n}\nexports.splitNavigationBySection = splitNavigationBySection;\n/**\n * 将导航数据进行层叠处理\n * @param {array} list 扁平化的导航数据\n * @returns 处理后的导航\n */\nfunction nestNavigationList(list = []) {\n const cloneList = (0, cloneDeep_1.default)(list);\n cloneList.reduceRight((res, item, index) => {\n if (item.parent) {\n const parent = cloneList.find((i) => {\n if (item.section && i.section) {\n return i.section === item.section && i.id === item.parent;\n }\n return i.id === item.parent;\n });\n if (parent) {\n if (!parent.items)\n parent.items = [];\n // 由于 reduceRight 是从后向前遍历,所以后遍历到的其实顺序在前面\n parent.items = [item, ...parent.items];\n }\n cloneList.splice(index, 1);\n }\n return null;\n }, null);\n return cloneList;\n}\nexports.nestNavigationList = nestNavigationList;\nfunction filterNavigation(navigationList, components = []) {\n const nestedNavigation = nestNavigationList(navigationList);\n deepWalk(nestedNavigation, (item) => {\n if (item === null || item === void 0 ? void 0 : item.component) {\n if (!components.some((x) => x.name === item.component)) {\n item.visible = false;\n }\n }\n if (item.items && item.items.length) {\n for (let i = item.items.length - 1; i >= 0; i--) {\n if (item.items[i].visible === false) {\n item.items.splice(i, 1);\n }\n }\n }\n }, { key: 'items' });\n const filteredNavigation = nestedNavigation.filter((item) => {\n var _a;\n if (item.visible === false)\n return false;\n // 如果某一菜单的 子菜单 均为隐藏状态,则一级菜单本身也不显示出来\n if (item.items &&\n Array.isArray(item.items) &&\n item.items.length > 0 &&\n ((_a = item.items) === null || _a === void 0 ? void 0 : _a.every((v) => v.visible === false)))\n return false;\n return true;\n });\n return filteredNavigation;\n}\nexports.filterNavigation = filterNavigation;\nfunction cleanOrphanNavigation(list) {\n // 将仅有一个 child 的菜单提升到上一级\n return list.map((item) => {\n if (item.items && Array.isArray(item.items) && item.items.length === 1) {\n if (['header', 'footer', '', undefined, null].includes(item.section)) {\n return item.items[0];\n }\n }\n return item;\n });\n}\nexports.cleanOrphanNavigation = cleanOrphanNavigation;\nfunction parseNavigation(blocklet = {}, options = {}) {\n var _a;\n const { beforeProcess = (v) => v } = options;\n const { navigationList: builtinNavigation, components } = parseBlockletNavigationList(blocklet);\n const customNavigationList = ((_a = blocklet === null || blocklet === void 0 ? void 0 : blocklet.settings) === null || _a === void 0 ? void 0 : _a.navigations) || [];\n const compactedNavigation = compactNavigation(beforeProcess(builtinNavigation));\n const patchedNavigation = patchBuiltinNavigation(compactedNavigation);\n const splitNavigation = splitNavigationBySection(patchedNavigation);\n // 将 footer-social, footer-bottom, sessionManager 的二级菜单提升为一级菜单\n const levelUpNavigation = splitNavigation.reduce((all, cur) => {\n if (['bottom', 'social', 'sessionManager'].includes(cur.section)) {\n if (cur.items && cur.items.length > 0) {\n all.push(...cur.items.map((x) => {\n const { section } = cur;\n const link = smartJoinLink(cur.link, x.link);\n const component = [cur.component, x.component].filter(Boolean).join('.');\n return Object.assign(Object.assign({}, x), { section, link, component, parent: '' });\n }));\n return all;\n }\n }\n all.push(cur);\n return all;\n }, []);\n const flatNavigation = flatternNavigation(levelUpNavigation, {\n transform(item, parent) {\n let { component } = item;\n if (parent === null || parent === void 0 ? void 0 : parent.component) {\n component = [parent.component, item.component].filter(Boolean).join('.');\n }\n return Object.assign(Object.assign({}, item), { component });\n },\n });\n const rawNavigation = (0, unionWith_1.default)(normalizeNavigationList(customNavigationList), flatNavigation, (prev, next) => {\n const keys = ['id', 'section'];\n return (0, isEqual_1.default)((0, pick_1.default)(prev, keys), (0, pick_1.default)(next, keys));\n });\n return { navigationList: rawNavigation, components, builtinList: flatNavigation };\n}\nexports.parseNavigation = parseNavigation;\n","const slugify = require('slugify');\n\nconst formatName = (name) => slugify(name.replace(/^[@./-]/, '').replace(/[@./_]/g, '-'));\n\nmodule.exports = formatName;\n","const normalizePathPrefix = require('./normalize-path-prefix');\n\nmodule.exports = (a, b) => normalizePathPrefix(a) === normalizePathPrefix(b);\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Actions;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Menu = _interopRequireDefault(require(\"@mui/material/Menu\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _MoreHoriz = _interopRequireDefault(require(\"@mui/icons-material/MoreHoriz\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"actions\"],\n _excluded2 = [\"icon\", \"text\", \"onClick\", \"disabled\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction Actions(_ref) {\n let {\n actions\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n const [anchorEl, setAnchorEl] = (0, _react.useState)(null);\n const open = Boolean(anchorEl);\n const onOpen = e => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused) {}\n setAnchorEl(e.currentTarget);\n };\n const onClose = e => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused2) {}\n setAnchorEl(null);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({}, props), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"aria-label\": \"more\",\n \"aria-controls\": \"actions-menu\",\n \"aria-haspopup\": \"true\",\n \"data-cy\": \"actions-menu-icon\",\n onClick: onOpen,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_MoreHoriz.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Menu.default, {\n id: \"actions-menu\",\n \"data-cy\": \"actions-menu\",\n anchorEl: anchorEl,\n keepMounted: true,\n open: open,\n onClose: onClose,\n PaperProps: {},\n children: actions.map((action, index) => {\n if (typeof action === 'function') {\n return action({\n close: onClose\n });\n }\n const {\n icon,\n text,\n onClick: _onClick,\n disabled = false\n } = action,\n opts = _objectWithoutProperties(action, _excluded2);\n return /*#__PURE__*/(0, _react.createElement)(_MenuItem.default, _objectSpread(_objectSpread({}, opts), {}, {\n disabled: disabled,\n dense: true,\n onClick: e => {\n onClose();\n _onClick(e);\n }\n // eslint-disable-next-line react/no-array-index-key\n ,\n key: index\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n style: {\n minWidth: 24,\n marginRight: 8\n },\n children: icon\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: text\n }));\n })\n })]\n }));\n}\nActions.propTypes = {\n actions: _propTypes.default.array\n};\nActions.defaultProps = {\n actions: []\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ConfigAccess;\nexports.getComponentWhoCanAccess = void 0;\nvar _react = require(\"react\");\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _Group = _interopRequireDefault(require(\"@mui/icons-material/Group\"));\nvar _Chip = _interopRequireDefault(require(\"@mui/material/Chip\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\nvar _constant = require(\"@blocklet/constant\");\nvar _constant2 = require(\"@abtnode/constant\");\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util2 = require(\"../../util\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _config = _interopRequireDefault(require(\"../../who-can-access/config\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst CONFIG_ROLE = 'roles';\nconst Configs = [..._config.default, {\n value: CONFIG_ROLE,\n icon: _Group.default,\n title: {\n zh: '指定通行证可访问',\n en: 'Accessible to selected passports'\n },\n description: {\n zh: '只有指定的通行证可以访问',\n en: 'Only specified passports can access'\n }\n}];\nconst getAccess = (whoCanAccess, roleStore) => {\n if (whoCanAccess && whoCanAccess.startsWith(_constant2.WHO_CAN_ACCESS_PREFIX_ROLES)) {\n const roleNames = (0, _util.getRolesFromAuthConfig)({\n whoCanAccess\n });\n const filterRoles = roleStore.filter(x => roleNames.includes(x.name));\n return {\n access: CONFIG_ROLE,\n roles: filterRoles\n };\n }\n return {\n access: whoCanAccess,\n roles: []\n };\n};\nconst getComponentWhoCanAccess = function getComponentWhoCanAccess(component, app) {\n let {\n roles = []\n } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n const access = (component.configs || []).find(x => x.key === _constant.BLOCKLET_CONFIGURABLE_KEY.COMPONENT_ACCESS_WHO);\n if (access) {\n return getAccess(access.value, roles);\n }\n if (app && (0, _get.default)(app, 'settings.whoCanAccess') && (0, _get.default)(app, 'settings.whoCanAccess') !== _constant2.WHO_CAN_ACCESS.ALL) {\n return getAccess((0, _get.default)(app, 'settings.whoCanAccess'), roles);\n }\n const service = (0, _util.findServiceFromMeta)(component.meta, _constant2.NODE_SERVICES.AUTH);\n if ((0, _get.default)(service, 'config.whoCanAccess')) {\n return getAccess(service.config.whoCanAccess, roles);\n }\n return {\n access: _constant2.WHO_CAN_ACCESS.ALL,\n roles: []\n };\n};\nexports.getComponentWhoCanAccess = getComponentWhoCanAccess;\nfunction ConfigAccess(_ref) {\n let {\n blocklet,\n ancestors,\n children\n } = _ref;\n const theme = (0, _useTheme.default)();\n const [showDialog, setShowDialog] = (0, _react.useState)('');\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n roles: roleList\n } = (0, _team.useTeamContext)();\n const [loading, setLoading] = (0, _react.useState)('');\n const root = ancestors[0] || blocklet;\n const {\n access: defaultValue,\n roles: defaultRoles\n } = getComponentWhoCanAccess(blocklet, root, {\n roles: roleList\n });\n const [whoCanAccess, setWhoCanAccess] = (0, _react.useState)(defaultValue);\n const [roles, setRoles] = (0, _react.useState)(defaultRoles);\n const dids = [...ancestors.map(x => x.meta.did), blocklet.meta.did];\n const iconStyle = {\n marginRight: 4,\n fontSize: 18,\n verticalAlign: 'text-bottom',\n color: theme.palette.text.secondary\n };\n const componentName = ancestors.concat(blocklet).map(x => (0, _util.getDisplayName)(x, true)).join(' / ');\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n if (blocklet.status === 'unknown' && (0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n const onClose = () => {\n setShowDialog(false);\n };\n const onOpen = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setShowDialog(true);\n };\n const onWhoCanAccessChange = e => {\n const {\n value\n } = e.target;\n setWhoCanAccess(value);\n };\n const onRolesChange = e => {\n setRoles(roleList.filter(x => (e.target.value || []).includes(x.name)));\n };\n const onConfirm = async () => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n let value = whoCanAccess;\n if (value === CONFIG_ROLE) {\n value = \"\".concat(_constant2.WHO_CAN_ACCESS_PREFIX_ROLES).concat(roles.map(x => x.name).join(','));\n }\n await api.updateWhoCanAccess({\n input: {\n did: dids,\n whoCanAccess: value\n }\n });\n _toast.default.success(t('blocklet.config.access.updatedTip'));\n onClose();\n setLoading(false);\n } catch (err) {\n setLoading(false);\n _toast.default.error((0, _util2.formatError)(err));\n }\n };\n const disabled = loading || whoCanAccess === CONFIG_ROLE && !roles.length;\n return [typeof children === 'function' ? children({\n open: onOpen\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: onOpen,\n \"data-cy\": \"action-config-component\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Edit.default, {})\n }), showDialog && /*#__PURE__*/(0, _jsxRuntime.jsxs)(StyledDialog, {\n open: true,\n fullWidth: true,\n title: componentName,\n onClose: onClose,\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onClose,\n color: \"inherit\",\n \"data-cy\": \"config-access-cancel\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: onConfirm,\n color: \"primary\",\n disabled: disabled,\n variant: \"contained\",\n autoFocus: true,\n \"data-cy\": \"config-access-confirm\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.confirm')]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 4,\n mb: 3,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('blocklet.config.access.description'),\n select: true,\n fullWidth: true,\n value: whoCanAccess,\n onChange: onWhoCanAccessChange,\n \"data-cy\": \"config-access-select\",\n SelectProps: {\n renderValue: selected => {\n const d = Configs.find(x => x.value === selected);\n return d ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(d.icon, {\n style: iconStyle\n }), d.title[locale]]\n }) : null;\n }\n },\n children: Configs.map(d => {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(StyledMenuItem, {\n value: d.value,\n sx: {\n display: 'block'\n },\n \"data-cy\": \"config-access-opt-\".concat(d.value),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(d.icon, {\n style: iconStyle\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: d.title[locale]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"tip\",\n children: d.description[locale]\n })\n })]\n });\n })\n })\n }), whoCanAccess === CONFIG_ROLE && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 4,\n mb: 3,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('blocklet.config.access.description'),\n select: true,\n fullWidth: true,\n value: roles.map(x => x.name),\n onChange: onRolesChange,\n SelectProps: {\n multiple: true,\n renderValue: selected => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n sx: {\n display: 'flex',\n flexWrap: 'wrap',\n gap: 0.5\n },\n children: selected.map(value => {\n const role = roleList.find(x => x.name === value);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Chip.default, {\n label: role.title\n }, role.text);\n })\n })\n },\n children: roleList.map(_ref2 => {\n let {\n name,\n title\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n value: name,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Checkbox.default, {\n checked: roles.some(x => x.name === name)\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: title\n })]\n }, name);\n })\n })\n })]\n })];\n}\nConfigAccess.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n children: _propTypes.default.any\n};\nConfigAccess.defaultProps = {\n ancestors: [],\n children: null\n};\nconst StyledDialog = (0, _styled.default)(_Dialog.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiDialogContent-root {\\n padding-top: 0;\\n margin-top: -32px;\\n }\\n .MuiToolbar-root {\\n padding-right: 12px;\\n }\\n .ux-dialog_right {\\n padding-right: 20px;\\n }\\n\"])));\nconst StyledMenuItem = (0, _styled.default)(_MenuItem.default)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n .tip {\\n font-size: 12px;\\n color: \", \";\\n }\\n\"])), props => props.theme.palette.text.secondary);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletAccess;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _ExpandMore = _interopRequireDefault(require(\"@mui/icons-material/ExpandMore\"));\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\nvar _Collapse = _interopRequireDefault(require(\"@mui/material/Collapse\"));\nvar _Launch = _interopRequireDefault(require(\"@mui/icons-material/Launch\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _blocklet = require(\"../../contexts/blocklet\");\nvar _team = require(\"../../contexts/team\");\nvar _util2 = require(\"../../util\");\nvar _line = _interopRequireDefault(require(\"../component/line\"));\nvar _bundleAvatar = _interopRequireDefault(require(\"../bundle-avatar\"));\nvar _configAccess = _interopRequireWildcard(require(\"./config-access\"));\nvar _config = _interopRequireDefault(require(\"../../who-can-access/config\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ComponentItem(_ref) {\n var _blocklet$children;\n let {\n blocklet,\n ancestors,\n depth\n } = _ref;\n const theme = (0, _useTheme.default)();\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n roles: roleList\n } = (0, _team.useTeamContext)();\n const [expand, setExpand] = (0, _react.useState)(true);\n const {\n recommendedDomain: domain\n } = (0, _blocklet.useBlockletContext)();\n const app = ancestors[0] || blocklet;\n const mountPoint = \"/\".concat(ancestors.map(x => x.mountPoint || '/').join('/'), \"/\").concat(blocklet.mountPoint || '/').replace(/\\/+/g, '/');\n const href = (0, _util2.getBlockletUrl)({\n blocklet: app,\n domain: {\n value: domain\n },\n mountPoint,\n params: (0, _util2.getBlockletUrlParams)(app, locale)\n });\n const iconStyle = {\n fill: theme.palette.text.secondary\n };\n const canExpand = depth > 0 && blocklet.children.length > 0;\n const expandIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n size: \"small\",\n children: expand ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {\n fontSize: \"inherit\"\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChevronRight.default, {\n fontSize: \"inherit\"\n })\n });\n const {\n access: whoCanAccess,\n roles\n } = (0, _configAccess.getComponentWhoCanAccess)(blocklet, app, {\n roles: roleList\n });\n let accessConfig;\n if (whoCanAccess !== 'roles') {\n accessConfig = _config.default.find(x => x.value === whoCanAccess) || _config.default[2];\n } else {\n const str = roles.map(x => x.title).join('/');\n accessConfig = {\n title: {\n zh: \"\\u53EA\\u6709 \".concat(str, \" \\u53EF\\u4EE5\\u8BBF\\u95EE\"),\n en: \"Only \".concat(str, \" can access\")\n }\n };\n }\n return [(depth > 0 || blocklet.meta.group !== 'gateway') && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n py: 2,\n className: \"component-item\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n pl: Math.max((depth - 1) * 2, 0),\n width: {\n xs: 300,\n md: 400\n },\n display: \"flex\",\n alignItems: \"center\",\n style: {\n cursor: canExpand ? 'pointer' : 'cursor'\n },\n onClick: () => canExpand && setExpand(!expand),\n children: [canExpand ? expandIcon : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n width: 28\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_bundleAvatar.default, {\n blocklet: blocklet,\n ancestors: ancestors\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n ml: \"16px\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n style: {\n color: '#222',\n fontSize: 18\n },\n children: (0, _util.getDisplayName)(blocklet, true)\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n color: \"text.secondary\",\n children: accessConfig.title[locale]\n })\n })]\n })]\n }, blocklet), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.visit'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n title: href,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Launch.default, {})\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_configAccess.default, {\n blocklet: blocklet,\n ancestors: ancestors,\n children: _ref2 => {\n let {\n open\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.edit'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: open,\n \"data-cy\": \"btn-edit-\".concat(blocklet.meta.did),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {\n style: iconStyle\n })\n })\n });\n }\n })]\n }, \"actions\")]\n }, \"group-not-gateway-box\"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_line.default, {\n depth: depth\n }), (_blocklet$children = blocklet.children) !== null && _blocklet$children !== void 0 && _blocklet$children.length ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Collapse.default, {\n in: expand,\n children: blocklet.children.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentItem, {\n blocklet: x,\n ancestors: [...ancestors, blocklet],\n depth: depth + 1\n }, \"\".concat(depth + 1, \"-\").concat(x.meta.did)))\n }, \"blocklet-collapse\") : null];\n}\nComponentItem.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n depth: _propTypes.default.number\n};\nComponentItem.defaultProps = {\n ancestors: [],\n depth: 0\n};\nfunction BlockletAccess() {\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const components = [...blocklet.children] || [];\n if (blocklet.meta.group !== 'gateway') {\n // add root blocklet to table list\n components.unshift(blocklet);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, {\n component: \"div\",\n children: components && components.length ? [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 2,\n ml: {\n xs: '-12px',\n md: '-24px'\n },\n style: {\n maxWidth: 1080\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentItem, {\n blocklet: blocklet\n }, \"0-\".concat(blocklet.meta.did))\n }, \"top-blocklet-\".concat(blocklet.meta.did))] : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 8,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('blocklet.component.noComponent')\n })\n })\n });\n}\nBlockletAccess.propTypes = {};\nconst Div = (0, _styled.default)(_Box.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .title {\\n font-size: 1.2rem;\\n font-weight: bold;\\n margin-top: \", \";\\n margin-bottom: \", \";\\n &.first {\\n margin-top: 0;\\n }\\n }\\n\"])), props => props.theme.spacing(5), props => props.theme.spacing(3));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletActions;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _reactRouterDom = require(\"react-router-dom\");\nvar _useLocalStorage = _interopRequireDefault(require(\"react-use/lib/useLocalStorage\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Menu = _interopRequireDefault(require(\"@mui/material/Menu\"));\nvar _Divider = _interopRequireDefault(require(\"@mui/material/Divider\"));\nvar _ButtonGroup = _interopRequireDefault(require(\"@mui/material/ButtonGroup\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _MoreVert = _interopRequireDefault(require(\"@mui/icons-material/MoreVert\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Radio = _interopRequireDefault(require(\"@mui/material/Radio\"));\nvar _RadioGroup = _interopRequireDefault(require(\"@mui/material/RadioGroup\"));\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@blocklet/constant\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _util2 = require(\"../util\");\nvar _util3 = require(\"./util\");\nvar _node = require(\"../contexts/node\");\nvar _confirm = _interopRequireDefault(require(\"../confirm\"));\nvar _icons = _interopRequireDefault(require(\"./icons\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"onStart\", \"onComplete\", \"variant\", \"hasPermission\", \"useBlockletUrlEvaluation\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletActions(_ref) {\n let {\n blocklet,\n onStart,\n onComplete,\n variant,\n hasPermission,\n useBlockletUrlEvaluation\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const navigate = (0, _reactRouterDom.useNavigate)();\n const node = (0, _node.useNodeContext)();\n const [anchorEl, setAnchorEl] = (0, _react.useState)(null);\n const [currentAction, setCurrentAction] = (0, _react.useState)(null);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [skipSetup] = (0, _useLocalStorage.default)('skip-blocklet-setup', false);\n const {\n loading: recommendedUrlLoading,\n recommendedUrl\n } = useBlockletUrlEvaluation(blocklet);\n const inProgress = (0, _util2.isInProgress)(blocklet.status);\n const {\n inService\n } = node;\n const createHandler = function createHandler(action, fn) {\n let requireUserConfirm = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return async () => {\n const onConfirm = async params => {\n onStart({\n action,\n blocklet\n });\n setLoading(true);\n setCurrentAction(action);\n setConfirmSetting(null);\n let isRemoved = false;\n try {\n var _blocklet$settings;\n const input = {\n did: blocklet.meta.did\n };\n if (action === 'remove') {\n input.keepData = params.removeType === 'keepData';\n }\n if (action === 'start' && !inService && !skipSetup && !((_blocklet$settings = blocklet.settings) !== null && _blocklet$settings !== void 0 && _blocklet$settings.initialized)) {\n // 启动 blocklet 并跳转到 setup 流程界面时携带 serverUrl 查询参数\n const serverUrl = (0, _util3.getServerUrl)(node.info);\n const url = new URL(recommendedUrl);\n url.searchParams.set('serverUrl', serverUrl);\n window.open(url.href);\n onComplete({\n action,\n blocklet\n });\n return;\n }\n await fn({\n input\n });\n if (action === 'remove') {\n isRemoved = true; // Deleted send request and succeeded\n } else {\n await (0, _util2.sleep)(1000); // just avoid user feeling so fast\n }\n\n if (action === 'reload') {\n _toast.default.success(t('blocklet.reloadSuccess'));\n }\n onComplete({\n action,\n blocklet\n });\n } catch (err) {\n const errMsg = \"Blocklet \".concat(action, \" failed: \").concat((0, _util2.formatError)(err));\n onComplete({\n action,\n blocklet,\n error: new Error(errMsg)\n });\n } finally {\n if (!isRemoved) {\n setLoading(false);\n }\n }\n };\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const name = (0, _util.getDisplayName)(blocklet, true);\n const removeSetting = blocklet.source === (0, _constant.fromBlockletSource)(_constant.BlockletSource.custom) ? {\n description: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n gutterBottom: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"b\", {\n children: t('blocklet.action.forceRemoveDescription')\n })\n })\n }),\n params: {\n removeType: 'complete'\n }\n } : {\n description: (params, setParams) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n gutterBottom: true,\n children: t('blocklet.action.removeDescription')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_RadioGroup.default, {\n name: \"removeType\",\n value: params.removeType,\n onChange: e => setParams(_objectSpread(_objectSpread({}, params), {}, {\n removeType: e.target.value\n })),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n value: \"keepData\",\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),\n label: t('blocklet.action.removeKeepData')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n value: \"complete\",\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),\n label: t('blocklet.action.removeComplete')\n })]\n })]\n }),\n params: {\n removeType: 'keepData'\n }\n };\n const confirmSettings = {\n stop: {\n title: \"\".concat(t('common.stop'), \" \").concat(name),\n description: t('blocklet.action.stopDescription'),\n confirm: t('blocklet.action.confirmStop'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n },\n restart: {\n title: \"\".concat(t('common.restart'), \" \").concat(name),\n description: t('blocklet.action.restartDescription'),\n confirm: t('blocklet.action.confirmRestart'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n },\n remove: _objectSpread({\n title: \"\".concat(t('common.remove'), \" \").concat(name),\n confirm: t('blocklet.action.confirmRemove'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n }, removeSetting),\n cancelDownload: {\n title: \"\".concat(t('common.cancel')),\n description: t('blocklet.action.cancelDownloadDescription', {\n name\n }),\n confirm: t('common.confirm'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n }\n };\n if (requireUserConfirm) {\n setConfirmSetting(confirmSettings[action]);\n } else {\n await onConfirm();\n }\n };\n };\n const open = Boolean(anchorEl);\n const onOpen = e => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused) {}\n setAnchorEl(e.currentTarget);\n };\n const onClose = e => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused2) {}\n setAnchorEl(null);\n };\n const onAction = async (action, e) => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused3) {}\n setAnchorEl(null);\n if (typeof action.handler === 'function') {\n try {\n setLoading(true);\n setCurrentAction(action.action);\n await action.handler();\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error(\"Blocklet \".concat(action.name, \" failed: \"), err);\n } finally {\n setLoading(false);\n }\n }\n };\n const removeAction = !inService && (0, _util.isDeletableBlocklet)(blocklet) ? {\n action: 'remove',\n icon: _icons.default.Remove,\n name: t('common.remove'),\n handler: createHandler('remove', node.api.deleteBlocklet, true),\n disabled: inProgress\n } : null;\n const cancelDownloadAction = !inService ? {\n action: 'remove',\n icon: _icons.default.Remove,\n name: t('common.cancel'),\n handler: createHandler('cancelDownload', node.api.cancelDownloadBlocklet, true)\n } : null;\n const missingRequiredConfigs = (0, _util.getAppMissingConfigs)(blocklet);\n const actions = [{\n action: 'start',\n icon: _icons.default.Start,\n name: t('common.start'),\n handler: createHandler('start', node.api.startBlocklet),\n disabled: !(0, _util.hasRunnableComponent)(blocklet) || blocklet.status === 'running' || blocklet.status === 'corrupted' || missingRequiredConfigs.length > 0 || (0, _util2.isDownloading)(blocklet.status) || blocklet.mode === _constant.BLOCKLET_MODES.DEVELOPMENT || recommendedUrlLoading || inProgress\n }, {\n action: 'stop',\n icon: _icons.default.Stop,\n name: t('common.stop'),\n handler: createHandler('stop', node.api.stopBlocklet, true),\n disabled: !['running', 'starting'].includes(blocklet.status) || blocklet.mode === _constant.BLOCKLET_MODES.DEVELOPMENT\n }, {\n action: 'restart',\n icon: _icons.default.Restart,\n name: t('common.restart'),\n handler: createHandler('restart', node.api.restartBlocklet, true),\n disabled: blocklet.status !== 'running' || blocklet.mode === _constant.BLOCKLET_MODES.DEVELOPMENT\n }, {\n action: 'reload',\n icon: _icons.default.Reload,\n name: t('common.reload'),\n handler: createHandler('reload', node.api.reloadBlocklet),\n disabled: blocklet.status !== 'running' || blocklet.mode === _constant.BLOCKLET_MODES.DEVELOPMENT\n }, (0, _util2.isDownloading)(blocklet.status) ? cancelDownloadAction : removeAction, {\n separator: true\n }, {\n onlyInMenu: true,\n action: 'config',\n icon: _icons.default.Config,\n name: t('common.config'),\n handler: () => {\n navigate(\"/blocklets/\".concat(blocklet.meta.did, \"/configuration\"));\n },\n disabled: (0, _util2.isDownloading)(blocklet.status)\n }, {\n onlyInMenu: true,\n action: 'team',\n icon: _icons.default.Group,\n name: t('common.manageTeam'),\n handler: () => {\n navigate(\"/blocklets/\".concat(blocklet.meta.did, \"/members\"));\n },\n disabled: (0, _util2.isDownloading)(blocklet.status)\n }, {\n onlyInMenu: true,\n action: 'log',\n icon: _icons.default.Log,\n name: t('common.log'),\n handler: () => {\n navigate(\"/logs/blocklet-\".concat(blocklet.meta.did));\n },\n disabled: (0, _util2.isDownloading)(blocklet.status)\n }].filter(Boolean);\n if (variant === 'menu') {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n \"data-cy\": \"blocklet-actions\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"aria-label\": \"more\",\n \"aria-controls\": \"actions-menu\",\n \"aria-haspopup\": \"true\",\n \"data-cy\": \"trigger-blocklet-actions\",\n \"actions-blocklet-did\": blocklet.meta.did,\n onClick: onOpen,\n size: \"small\",\n disabled: !hasPermission || !(0, _util2.isDownloading)(blocklet.status) && loading,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_MoreVert.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Menu.default, {\n id: \"actions-menu\",\n anchorEl: anchorEl,\n keepMounted: true,\n open: open,\n onClose: onClose,\n PaperProps: {},\n children: [missingRequiredConfigs.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Alert.default, {\n style: {\n maxWidth: '400px'\n },\n severity: \"error\",\n children: [t('blocklet.config.missingRequired'), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"br\", {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRouterDom.Link, {\n to: \"/blocklets/\".concat(blocklet.meta.did, \"/components\"),\n children: t('blocklet.config.gotoFix')\n })]\n }), actions.map((action, i) => {\n if (action.separator) {\n // eslint-disable-next-line react/no-array-index-key\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Divider.default, {}, \"separator-\".concat(i));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n dense: true,\n onClick: e => onAction(action, e),\n disabled: action.disabled,\n \"data-cy\": \"\".concat(action.action, \"-blocklet\"),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n style: {\n minWidth: 24\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(action.icon, {\n fontSize: \"small\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: action.name\n })]\n }, action.name);\n })]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({\n \"data-cy\": \"blocklet-actions\"\n }, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonGroup.default, {\n children: actions.filter(x => !x.separator && !x.onlyInMenu).map(action => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n title: action.name,\n \"data-cy\": \"\".concat(action.action, \"-blocklet\"),\n onClick: () => onAction(action),\n disabled: Boolean(action.disabled) || loading,\n children: [currentAction === action.action && loading && inProgress ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(action.icon, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: \"blocklet-action-text\",\n children: action.name\n })]\n }, action.name))\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n }));\n}\nBlockletActions.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n onStart: _propTypes.default.func.isRequired,\n onComplete: _propTypes.default.func.isRequired,\n variant: _propTypes.default.oneOf(['menu', 'group']),\n hasPermission: _propTypes.default.bool,\n useBlockletUrlEvaluation: _propTypes.default.func\n};\nBlockletActions.defaultProps = {\n variant: 'menu',\n hasPermission: false,\n useBlockletUrlEvaluation: () => {\n var _window, _window$location;\n return {\n loading: false,\n recommendedUrl: (_window = window) === null || _window === void 0 ? void 0 : (_window$location = _window.location) === null || _window$location === void 0 ? void 0 : _window$location.href\n };\n }\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n align-items: center;\\n\\n @media (max-width: \", \"px) {\\n .MuiButton-root {\\n padding: 4px;\\n font-size: 10px;\\n }\\n }\\n\"])), props => props.theme.breakpoints.values.sm);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddCert;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _useAsyncRetry = _interopRequireDefault(require(\"react-use/lib/useAsyncRetry\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _CircularProgress = _interopRequireDefault(require(\"@mui/material/CircularProgress\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@blocklet/constant\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _confirm = _interopRequireDefault(require(\"../confirm\"));\nvar _node = require(\"../contexts/node\");\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"domain\", \"domainStatus\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nconst isCertInProgress = status => ['waiting', 'creating', 'renewaling'].includes(status);\nfunction Add(props) {\n var _certState$value2;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const {\n domain,\n onAdd,\n children,\n did\n } = props;\n const {\n api,\n ws: {\n useSubscription\n }\n } = (0, _node.useNodeContext)();\n const [issuing, setIssuing] = (0, _react.useState)(false);\n const {\n actions: {\n refreshDomainStatus\n }\n } = (0, _blocklet.useBlockletContext)();\n const certState = (0, _useAsyncRetry.default)(async () => {\n const {\n cert\n } = await api.findCertificateByDomain({\n input: {\n domain,\n did\n }\n });\n return cert;\n });\n const handleIssueComplete = (cert, type) => {\n if (cert.domain === domain) {\n setIssuing(false);\n if (type === 'success') {\n _toast.default.success(\"The \".concat(cert.domain, \" certificate is issued successfully\"));\n } else if (type === 'error') {\n _toast.default.error(\"Failed to issue certificate for \".concat(cert.domain));\n }\n }\n };\n (0, _react.useEffect)(() => {\n var _certState$value;\n if (!certState.loading && isCertInProgress((_certState$value = certState.value) === null || _certState$value === void 0 ? void 0 : _certState$value.status)) {\n setIssuing(true);\n }\n }, [certState]);\n useSubscription(_constant.BlockletEvents.certError, cert => handleIssueComplete(cert, 'error'));\n useSubscription(_constant.BlockletEvents.certIssued, cert => {\n certState.retry();\n refreshDomainStatus(cert.domain);\n handleIssueComplete(cert, 'success');\n });\n if (certState.loading) {\n return ''; // 如果正在加载证书的状态,则不渲染任何元素\n }\n\n if (((_certState$value2 = certState.value) === null || _certState$value2 === void 0 ? void 0 : _certState$value2.status) === 'normal') {\n return ''; // 如果证书已经生成,则不渲染任何元素\n }\n\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n setLoading(true);\n try {\n await api.issueLetsEncryptCert({\n input: {\n domain,\n did\n }\n });\n onAdd();\n setIssuing(true);\n } catch (error) {\n console.error(error);\n setIssuing(false);\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n title: t('router.cert.genLetsEncryptCert.title'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"success\",\n children: t('router.cert.genLetsEncryptCert.dnsTip')\n }), t('router.cert.genLetsEncryptCert.description')]\n }),\n confirm: t('common.confirm'),\n onConfirm,\n onCancel\n };\n const onClick = e => {\n e.stopPropagation();\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [issuing ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('router.cert.issuing'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {\n size: 12\n })\n }) : children({\n loading,\n open: onClick\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n color: \"primary\",\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nAdd.propTypes = {\n domain: _propTypes.default.string.isRequired,\n did: _propTypes.default.string.isRequired,\n onAdd: _propTypes.default.func,\n children: _propTypes.default.any\n};\nAdd.defaultProps = {\n onAdd: () => {},\n children: null\n};\nfunction AddCert(props) {\n const {\n domain,\n domainStatus\n } = props,\n others = _objectWithoutProperties(props, _excluded);\n if (!(0, _util.shouldCheckDomainStatus)(domain) || domainStatus !== null && domainStatus !== void 0 && domainStatus.isHttps) {\n return '';\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Add, _objectSpread({}, _objectSpread({\n domain\n }, others)));\n}\nAddCert.propTypes = {\n domain: _propTypes.default.string.isRequired,\n domainStatus: _propTypes.default.shape({\n isHttps: _propTypes.default.bool\n }).isRequired,\n did: _propTypes.default.string.isRequired,\n onAdd: _propTypes.default.func,\n children: _propTypes.default.any\n};\nAddCert.defaultProps = {\n onAdd: () => {},\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AgreementApp;\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectDestructuringEmpty(obj) { if (obj == null) throw new TypeError(\"Cannot destructure \" + obj); }\nfunction AgreementApp(_ref) {\n let props = Object.assign({}, (_objectDestructuringEmpty(_ref), _ref));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", _objectSpread(_objectSpread({}, props), {}, {\n style: {\n width: '100%'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"h3\", {\n children: \"End User License Agreement for Application\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: \"Blocklet Server License Agreement ArcBlock, Inc. version 2020-08-28\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: \"BLOCKLET SERVER LICENSE AGREEMENT\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: \"\\u6682\\u65E0\"\n })]\n }));\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Agreement;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _reactRouterDom = require(\"react-router-dom\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _serverEula = _interopRequireDefault(require(\"@blocklet/launcher-layout/lib/wizard/server-eula\"));\nvar _wizardDesc = _interopRequireDefault(require(\"@blocklet/launcher-layout/lib/wizard/wizard-desc\"));\nvar _agreementApp = _interopRequireDefault(require(\"./agreement-app\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n// TODO: 加载 Blocklet 定义的 Agreement\nfunction Agreement(_ref) {\n let {\n meta,\n onClickNext,\n handleDescEle\n } = _ref;\n const navigate = (0, _reactRouterDom.useNavigate)();\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const clickNext = onClickNext || (() => {\n navigate(\"/launch-blocklet/install\".concat(window.location.search));\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Container, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"app-content\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"agreement\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"agreement-content\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_wizardDesc.default, {\n blockletMeta: {\n data: meta\n },\n locale: locale,\n handleDescEle: handleDescEle\n })\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"button-container\",\n \"data-cy\": \"agree-all\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_serverEula.default, {\n onContinue: clickNext,\n description: /*#__PURE__*/(0, _jsxRuntime.jsx)(_agreementApp.default, {}),\n texts: {\n listenName: t('launchBlocklet.license'),\n buttonNext: t('launchBlocklet.next')\n }\n })\n })]\n });\n}\nAgreement.propTypes = {\n meta: _propTypes.default.object.isRequired,\n onClickNext: _propTypes.default.func,\n handleDescEle: _propTypes.default.node\n};\nAgreement.defaultProps = {\n onClickNext: null,\n handleDescEle: ''\n};\nconst Container = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n height: 100%;\\n flex: 1;\\n .app-content {\\n padding: 2px 24px 24px;\\n \", \" {\\n padding-top: 10px;\\n }\\n width: 100%;\\n flex: 1;\\n letter-spacing: normal;\\n }\\n .agreement {\\n position: relative;\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n height: 100%;\\n border: 1px solid \", \";\\n border-radius: 12px;\\n \", \" {\\n margin-top: 24px;\\n }\\n \", \" {\\n margin-top: 16px;\\n }\\n .agreement-content {\\n position: absolute;\\n left: 0;\\n top: 0;\\n width: 100%;\\n height: 100%;\\n font-size: 14px;\\n overflow-y: auto;\\n \", \" {\\n padding: 0 24px;\\n }\\n \", \" {\\n padding: 0 16px;\\n }\\n &:after {\\n display: block;\\n content: '';\\n height: 24px;\\n }\\n }\\n }\\n .button-container {\\n padding-top: 24px;\\n padding-bottom: 34px;\\n \", \" {\\n padding-right: 24px;\\n margin-left: auto;\\n }\\n \", \" {\\n padding-top: 0;\\n padding-bottom: 16px;\\n }\\n }\\n\"])), props => props.theme.breakpoints.down('md'), props => props.theme.palette.grey['100'], props => props.theme.breakpoints.up('md'), props => props.theme.breakpoints.down('md'), props => props.theme.breakpoints.up('md'), props => props.theme.breakpoints.down('md'), props => props.theme.breakpoints.up('md'), props => props.theme.breakpoints.down('md'));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletAppAvatar;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\nvar _Avatar2 = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _constant = require(\"@blocklet/constant\");\nvar _useAppLogo = _interopRequireDefault(require(\"../hooks/use-app-logo\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\", \"style\", \"size\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletAppAvatar(_ref) {\n let {\n blocklet,\n style,\n size\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n logoUrl\n } = (0, _useAppLogo.default)({\n blocklet\n });\n const {\n variant\n } = rest;\n let imgEle = /*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n src: logoUrl,\n alt: \"\",\n style: {\n width: size\n }\n });\n if (!blocklet.meta.logo) {\n var _find;\n const exist = (_find = (blocklet.configs || []).find(x => x.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO_SQUARE)) === null || _find === void 0 ? void 0 : _find.value;\n if (!exist) {\n imgEle = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar2.default, {\n did: blocklet.meta.did || '',\n responsive: true\n });\n }\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, _objectSpread(_objectSpread({\n variant: variant || 'square',\n style: Object.assign({\n backgroundColor: 'transparent',\n width: size,\n height: size,\n borderRadius: 10\n }, style)\n }, rest), {}, {\n children: imgEle\n }));\n}\nBlockletAppAvatar.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n style: _propTypes.default.object,\n size: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])\n};\nBlockletAppAvatar.defaultProps = {\n style: {},\n size: 40\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = WrappedAuditLogs;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _reactRouterDom = require(\"react-router-dom\");\nvar _reactMarkdownPreview = _interopRequireDefault(require(\"@uiw/react-markdown-preview\"));\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Pagination = _interopRequireDefault(require(\"@mui/lab/Pagination\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Select = _interopRequireDefault(require(\"@mui/material/Select\"));\nvar _InputLabel = _interopRequireDefault(require(\"@mui/material/InputLabel\"));\nvar _FormControl = _interopRequireDefault(require(\"@mui/material/FormControl\"));\nvar _auditLog = require(\"../contexts/audit-log\");\nvar _node = require(\"../contexts/node\");\nvar _relativeTime = _interopRequireDefault(require(\"../relative-time\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst getUserLink = _ref => {\n let {\n log,\n info,\n inService\n } = _ref;\n if (inService) {\n // TODO\n return \"/members?did=\".concat(log.actor.did);\n }\n if (log.scope === info.did) {\n return \"/team/members?did=\".concat(log.actor.did);\n }\n return \"/blocklets/\".concat(log.scope, \"/members?did=\").concat(log.actor.did);\n};\nfunction AuditLog(_ref2) {\n var _log$env$os, _log$env$browser;\n let {\n log\n } = _ref2;\n const {\n inService,\n info\n } = (0, _node.useNodeContext)();\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"log-entry\",\n \"data-cy\": \"log-entry\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"log-author\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n did: log.actor.did,\n size: 36,\n shape: \"circle\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"log-body\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n className: \"log-header\",\n color: \"textSecondary\",\n component: \"p\",\n gutterBottom: true,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactRouterDom.Link, {\n to: getUserLink({\n log,\n inService,\n info\n }),\n target: \"_blank\",\n children: [log.actor.fullName, log.actor.role ? \"(\".concat(log.actor.role, \")\") : '']\n }), ' ', \"- \", log.action]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n className: \"log-content\",\n color: \"textPrimary\",\n component: \"div\",\n \"data-color-mode\": \"light\",\n gutterBottom: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactMarkdownPreview.default, {\n source: log.content,\n linkTarget: \"_blank\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"log-meta\",\n variant: \"body2\",\n children: [!!log.ip && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"span\",\n color: \"textSecondary\",\n children: \"IP: \".concat(log.ip)\n }), !!((_log$env$os = log.env.os) !== null && _log$env$os !== void 0 && _log$env$os.name) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"span\",\n color: \"textSecondary\",\n children: [log.env.os.name, \"(\", log.env.os.version, \")\"]\n }), !!((_log$env$browser = log.env.browser) !== null && _log$env$browser !== void 0 && _log$env$browser.name) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"span\",\n color: \"textSecondary\",\n children: [log.env.browser.name, \"(\", log.env.browser.version, \")\"]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"span\",\n color: \"textSecondary\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_relativeTime.default, {\n value: log.createdAt\n })\n })]\n })]\n })]\n });\n}\nfunction AuditLogs() {\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n data,\n loading,\n paging,\n filter,\n categories,\n setCategory,\n fetch\n } = (0, _auditLog.useAuditLogContext)();\n if (loading) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n textAlign: 'center',\n marginTop: '50px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n \"data-cy\": \"audit-logs\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"log-controls\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_FormControl.default, {\n style: {\n width: '240px'\n },\n variant: \"outlined\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_InputLabel.default, {\n children: t('common.filter')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Select.default, {\n \"data-cy\": \"filter-by-category-trigger\",\n value: filter.category,\n onChange: e => setCategory(e.target.value),\n fullWidth: true,\n label: t('common.category'),\n disabled: loading,\n children: categories.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: x.value,\n \"data-cy\": \"filter-by-category-\".concat(x.value),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: x.label\n })\n })\n }, x.label))\n })]\n })\n }), data.length === 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n }), data.length > 0 && data.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(AuditLog, {\n log: x\n }, x.id)), paging.pageCount > 1 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Pagination.default, {\n page: paging.page,\n count: paging.pageCount,\n onChange: (e, page) => fetch({\n page\n }),\n showFirstButton: true,\n showLastButton: true\n })]\n });\n}\nfunction WrappedAuditLogs(_ref3) {\n let {\n scope\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_auditLog.AuditLogProvider, {\n scope: scope,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(AuditLogs, {})\n });\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .log-controls {\\n display: flex;\\n justify-content: space-between;\\n }\\n .log-entry {\\n display: flex;\\n margin: 16px 0;\\n\\n .log-author {\\n margin-right: 8px;\\n }\\n\\n .log-body {\\n flex: 1;\\n\\n a {\\n color: \", \";\\n }\\n\\n .log-header {\\n }\\n\\n .log-content {\\n p {\\n margin-bottom: 4px;\\n }\\n ul,\\n ol {\\n padding-left: 2rem;\\n }\\n li {\\n list-style-type: disc;\\n }\\n }\\n\\n .log-meta {\\n margin-top: 4px;\\n\\n span {\\n font-size: 0.8rem;\\n display: inline-block;\\n margin-right: 8px;\\n padding-right: 8px;\\n border-right: 1px solid #ccc;\\n\\n &:last-of-type {\\n border-right: none;\\n }\\n }\\n }\\n }\\n }\\n\"])), _ref4 => {\n let {\n theme\n } = _ref4;\n return theme.palette.primary.main;\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletSource;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _toUpper = _interopRequireDefault(require(\"lodash/toUpper\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction BlockletSource(_ref) {\n var _blocklet$meta;\n let {\n sourceInfo,\n blocklet\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n type: \"success\",\n children: (0, _toUpper.default)(sourceInfo.source)\n }, \"source\"), sourceInfo.source === 'registry' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n href: (0, _urlJoin.default)(sourceInfo.deployedFrom, 'blocklets', (blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.bundleDid) || ''),\n target: \"_blank\",\n className: \"page-link\",\n underline: \"hover\",\n style: {\n display: 'flex',\n alignItems: 'center',\n marginLeft: 8\n },\n children: t('blocklet.overview.viewInStore')\n })]\n });\n}\nBlockletSource.propTypes = {\n sourceInfo: _propTypes.default.shape({\n source: _propTypes.default.string,\n deployedFrom: _propTypes.default.string\n }),\n blocklet: _propTypes.default.object\n};\nBlockletSource.defaultProps = {\n sourceInfo: {},\n blocklet: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletAvatar;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\nvar _Avatar2 = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _useBundleLogo = _interopRequireDefault(require(\"../hooks/use-bundle-logo\"));\nvar _node = require(\"../contexts/node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\", \"style\", \"size\", \"ancestors\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletAvatar(_ref) {\n let {\n blocklet,\n style,\n size,\n ancestors\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const node = (0, _node.useNodeContext)();\n const {\n logoUrl,\n inService\n } = (0, _useBundleLogo.default)({\n blocklet,\n ancestors\n });\n const {\n variant\n } = rest;\n const setFallBackUrl = inService ? () => {} : ev => {\n ev.target.src = \"\".concat(node.imgPrefix, \"/blocklet.png\");\n };\n let imgEle = /*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n src: logoUrl,\n onError: setFallBackUrl,\n alt: blocklet.meta.name,\n style: {\n width: size\n }\n });\n if (!blocklet.meta.logo) {\n imgEle = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar2.default, {\n did: blocklet.meta.did || '',\n responsive: true\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, _objectSpread(_objectSpread({\n variant: variant || 'square',\n style: Object.assign({\n backgroundColor: 'transparent',\n width: size,\n height: size,\n borderRadius: 10\n }, style)\n }, rest), {}, {\n children: imgEle\n }));\n}\nBlockletAvatar.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n style: _propTypes.default.object,\n size: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n ancestors: _propTypes.default.array\n};\nBlockletAvatar.defaultProps = {\n style: {},\n size: 40,\n ancestors: []\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddComponent;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _uniqBy = _interopRequireDefault(require(\"lodash/uniqBy\"));\nvar _flatten = _interopRequireDefault(require(\"lodash/flatten\"));\nvar _isEmpty = _interopRequireDefault(require(\"lodash/isEmpty\"));\nvar _isNil = _interopRequireDefault(require(\"lodash/isNil\"));\nvar _pageHeader = _interopRequireDefault(require(\"@blocklet/launcher-layout/lib/page-header\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Link = _interopRequireDefault(require(\"@mui/icons-material/Link\"));\nvar _Check = _interopRequireDefault(require(\"@mui/icons-material/Check\"));\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@blocklet/constant\");\nvar _launcherLayout = _interopRequireDefault(require(\"@blocklet/launcher-layout\"));\nvar _step = require(\"@blocklet/launcher-layout/lib/context/step\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _AnimationWaiter = _interopRequireDefault(require(\"@arcblock/ux/lib/AnimationWaiter\"));\nvar _launchResultMessage = _interopRequireDefault(require(\"@blocklet/launcher-layout/lib/launch-result-message\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _node = require(\"../../contexts/node\");\nvar _util2 = require(\"../../util\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _schemaForm = _interopRequireDefault(require(\"../../schema-form\"));\nvar _required = _interopRequireDefault(require(\"../../form/required\"));\nvar _purchase = require(\"../purchase\");\nvar _util3 = require(\"../router/util\");\nvar _agreement = _interopRequireDefault(require(\"../agreement\"));\nvar _installFromUrl = _interopRequireDefault(require(\"../install-from-url\"));\nvar _selectStore = _interopRequireDefault(require(\"./select-store\"));\nvar _storeBlockletList = _interopRequireDefault(require(\"./store-blocklet-list\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;\nconst _excluded = [\"name\", \"validation\"],\n _excluded2 = [\"default\", \"key\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst requirePurchase = meta => meta.inStore && (0, _util.isFreeBlocklet)(meta) === false;\nconst hasRequiredEnvironments = meta => (meta.environments || []).some(x => x.required);\nconst hasMissRequiredConfigs = (configsList, sharedValueMap) => {\n return configsList === null || configsList === void 0 ? void 0 : configsList.some(item => {\n return item.required && !sharedValueMap[item.key];\n });\n};\nconst getParamsName = function getParamsName() {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return params.title || params.name;\n};\nconst StepContent = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {\n let {\n meta,\n isMobile,\n onStepChange\n } = _ref;\n const {\n steps,\n activeStep,\n setActiveStepByKey,\n setActiveStepByIndex\n } = (0, _step.useStepContext)();\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const step = steps[activeStep];\n (0, _react.useEffect)(() => {\n onStepChange(activeStep);\n }, [onStepChange, activeStep]);\n\n // expose the func and activeStep\n (0, _react.useImperativeHandle)(ref, () => ({\n setActiveStepByKey,\n setActiveStepByIndex\n }));\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(DialogContentWrapper, {\n component: \"div\",\n className: isMobile ? 'mobileStyle' : '',\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_launcherLayout.default, {\n locale: locale,\n blockletMeta: _objectSpread({\n title: ' '\n }, meta),\n pcWidth: \"100%\",\n pcHeight: \"100%\",\n logoUrl: meta && meta.logo && meta.registryUrl ? (0, _util2.getBlockletLogoUrl)({\n did: meta.did,\n baseUrl: meta.registryUrl,\n logoPath: meta.logo\n }) : null,\n stepTip: t('blocklet.component.add'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(RightContent, {\n children: step !== null && step !== void 0 && step.body && typeof step.body === 'function' ? step.body() : step.body\n })\n })\n });\n});\nStepContent.propTypes = {\n meta: _propTypes.default.any,\n onStepChange: _propTypes.default.func.isRequired,\n isMobile: _propTypes.default.bool.isRequired\n};\nStepContent.defaultProps = {\n meta: null\n};\nfunction AddComponent(_ref2) {\n var _blocklet$meta2, _blocklet$meta3, _blocklet$meta4, _purchaseRef$current, _purchaseRef$current$, _purchaseRef$current2, _purchaseRef$current3;\n let {\n blocklet,\n children\n } = _ref2;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [editingItem, setEditingItem] = (0, _react.useState)(null);\n const [error, setError] = (0, _react.useState)('');\n const [showDialog, setShowDialog] = (0, _react.useState)('');\n const [configs, setConfigs] = (0, _react.useState)([]);\n const {\n api,\n ws: {\n useSubscription\n },\n inService,\n info: nodeInfo\n } = (0, _node.useNodeContext)();\n const [purchaseData, setPurchaseData] = (0, _react.useState)(null);\n const [isWaitingPurchase, setIsWaitingPurchase] = (0, _react.useState)(false);\n const initParams = {\n bundleDid: '',\n componentDid: '',\n componentName: '',\n pathPrefix: '',\n name: '',\n title: '',\n configsList: [],\n configsValue: {},\n hasMissRequiredConfigs: false,\n hasEnvironmentsStep: false,\n hasRequiredEnvironments: false,\n requirePurchase: false,\n installResultProps: {},\n purchaseResultProps: {},\n showFromUrlDialog: false\n };\n const [params, setParams] = (0, _react.useState)(initParams);\n const [activeStep, setActiveStep] = (0, _react.useState)(0);\n const component = (0, _react.useRef)({});\n const stepRef = (0, _react.useRef)({});\n const purchaseRef = (0, _react.useRef)({});\n const isMobile = (0, _useMediaQuery.default)(theme => theme.breakpoints.down('md'));\n const {\n meta\n } = component.current;\n // eslint-disable-next-line no-unused-vars\n const {\n setActiveStepByIndex\n } = stepRef.current || {};\n const updateParams = obj => setParams(x => _objectSpread(_objectSpread({}, x), obj));\n (0, _react.useEffect)(() => {\n if (params.pathPrefix) {\n const {\n errMsg\n } = validateInput(_objectSpread(_objectSpread({}, params), {}, {\n pathPrefix: params.pathPrefix,\n locale\n }));\n setError(errMsg);\n }\n }, [params.pathPrefix]); // eslint-disable-line\n\n (0, _react.useEffect)(() => {\n if (activeStep === 0) {\n // reset params, when step change to select component\n setParams(initParams);\n }\n }, [activeStep]); // eslint-disable-line\n\n const getComponentName = () => {\n var _component$current;\n if (component !== null && component !== void 0 && (_component$current = component.current) !== null && _component$current !== void 0 && _component$current.meta) {\n return (0, _util.getDisplayName)(component.current);\n }\n return '';\n };\n const setInstallErrorResult = errorMessage => {\n updateParams({\n installResultProps: {\n variant: 'error',\n title: getComponentName(),\n subTitle: errorMessage,\n footer: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n className: \"bottom-button\",\n \"data-cy\": \"retry-install-component\",\n onClick: () => {\n updateParams({\n installResultProps: {}\n });\n onInstall(component.current.installInput);\n },\n children: t('common.retry')\n })\n }\n });\n };\n const createBlockletEventHandler = handler => {\n return b => {\n var _b$meta, _blocklet$meta;\n if (((b === null || b === void 0 ? void 0 : (_b$meta = b.meta) === null || _b$meta === void 0 ? void 0 : _b$meta.did) || (b === null || b === void 0 ? void 0 : b.meta)) === (blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.did)) {\n handler(b);\n }\n };\n };\n useSubscription(_constant.BlockletEvents.statusChange, createBlockletEventHandler(e => {\n switch (e.status) {\n case _constant.BlockletStatus.upgrading:\n updateParams({\n installResultProps: {\n variant: 'success',\n title: getComponentName(),\n subTitle: t('blocklet.component.installSuccessTip')\n }\n });\n break;\n default:\n }\n }), [blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta2 = blocklet.meta) === null || _blocklet$meta2 === void 0 ? void 0 : _blocklet$meta2.did]);\n useSubscription(_constant.BlockletEvents.downloadFailed, createBlockletEventHandler(() => {\n setInstallErrorResult(t('blocklet.component.installComponentError'));\n }), [blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta3 = blocklet.meta) === null || _blocklet$meta3 === void 0 ? void 0 : _blocklet$meta3.did]);\n useSubscription(_constant.BlockletEvents.installFailed, createBlockletEventHandler(() => {\n setInstallErrorResult(t('blocklet.component.installComponentError'));\n }), [blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta4 = blocklet.meta) === null || _blocklet$meta4 === void 0 ? void 0 : _blocklet$meta4.did]);\n const onClose = () => {\n setLoading(false);\n setShowDialog(false);\n setParams({});\n component.current = {};\n };\n const onInstall = async payload => {\n var _component$current2, _component$current3;\n const {\n pathPrefix: mountPoint,\n bundleDid,\n title,\n componentName = '',\n componentDid = ''\n } = params;\n // eslint-disable-next-line no-shadow\n const {\n configs = [],\n registryUrl,\n inStore,\n inputUrl\n } = ((_component$current2 = component.current) === null || _component$current2 === void 0 ? void 0 : _component$current2.meta) || {};\n const downloadTokenList = (_component$current3 = component.current) === null || _component$current3 === void 0 ? void 0 : _component$current3.downloadTokenList;\n const url = inStore ? (0, _util2.getBlockletMetaUrl)(registryUrl, bundleDid) : inputUrl;\n setLoading(true);\n const installInput = _objectSpread(_objectSpread(_objectSpread({\n rootDid: blocklet.meta.did,\n url,\n mountPoint,\n title,\n name: componentName,\n did: componentDid\n }, params.hasEnvironmentsStep && configs.length > 0 ? {\n configs: configs.map(item => {\n return _objectSpread(_objectSpread({}, item), {}, {\n value: params.configsValue[item.key] || ''\n });\n })\n } : {}), downloadTokenList ? {\n downloadTokenList\n } : {}), payload);\n try {\n await api.installComponent({\n input: installInput\n });\n if (registryUrl) {\n const {\n teamDid,\n storeList\n } = (0, _util2.getStoreList)({\n fromBlocklet: inService,\n nodeInfo,\n blocklet\n });\n const {\n isNew,\n decoded\n } = (0, _util2.isNewStoreUrl)(registryUrl, storeList);\n if (isNew) {\n await api.addBlockletStore({\n input: {\n teamDid,\n url: decoded\n }\n });\n }\n }\n } catch (err) {\n _toast.default.error(err.message);\n console.error('installComponent error: ', err);\n setInstallErrorResult(err.message);\n } finally {\n setLoading(false);\n component.current.installInput = installInput;\n }\n };\n const validateInput = input => {\n // FIXME: validatePathPrefix should be updated\n const errMsg = (0, _util3.validatePathPrefix)({\n params: _objectSpread(_objectSpread({}, input), {}, {\n did: input.bundleDid\n }),\n blocklets: [blocklet],\n // blocklets: component.current?.blocklets?.map(x => ({ meta: x })) || [],\n blocklet,\n locale\n });\n return {\n errMsg\n };\n };\n const onNext = payload => {\n const {\n errMsg\n } = validateInput(_objectSpread(_objectSpread({}, params), {}, {\n locale\n }));\n setError(errMsg);\n\n // the step can complete, install component\n if (activeStep === steps.length - 2) {\n updateParams({\n installResultProps: {}\n });\n onInstall(payload);\n }\n setActiveStepByIndex(x => x + 1);\n };\n const _onCancel = () => {\n setActiveStepByIndex(x => x - 1);\n };\n const onGeneratePurchaseData = async () => {\n const {\n pathPrefix: mountPoint,\n bundleDid,\n title,\n componentName = '',\n componentDid = ''\n } = params;\n\n // eslint-disable-next-line no-shadow\n const {\n meta = {}\n } = component.current || {};\n const {\n registryUrl,\n inStore,\n inputUrl\n } = meta;\n const url = inStore ? (0, _util2.getBlockletMetaUrl)(registryUrl, bundleDid) : inputUrl;\n setPurchaseData({\n meta,\n installOpts: {\n type: 'component',\n rootDid: blocklet.meta.did,\n mountPoint,\n url,\n title,\n name: componentName,\n did: componentDid\n }\n });\n };\n const onCancelPurchase = errorMessage => {\n setIsWaitingPurchase(false);\n updateParams({\n purchaseResultProps: {\n variant: 'error',\n title: getComponentName(),\n subTitle: errorMessage,\n style: {\n paddingTop: 120\n },\n footer: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n className: \"bottom-button\",\n \"data-cy\": \"retry-purchase-component\",\n onClick: () => {\n updateParams({\n purchaseResultProps: {}\n });\n },\n children: t('common.retry')\n })\n }\n });\n };\n const onSuccessPurchase = _ref3 => {\n let {\n downloadTokenList\n } = _ref3;\n component.current.downloadTokenList = downloadTokenList;\n setIsWaitingPurchase(false);\n onNext();\n };\n const setConfigValue = _ref4 => {\n var _blocklet$settings, _list$, _list$$meta, _meta$environments;\n let {\n chooseParams = component.current,\n componentDid: componentDidValue,\n isInit = false\n } = _ref4;\n // eslint-disable-next-line no-shadow\n const {\n meta,\n registryUrl,\n inStore,\n inputUrl\n } = chooseParams;\n const {\n did: bundleDid,\n title,\n name\n } = meta;\n\n // deleted history list\n const list = (((_blocklet$settings = blocklet.settings) === null || _blocklet$settings === void 0 ? void 0 : _blocklet$settings.children) || []).filter(x => x.status === 'deleted' && x.meta.bundleDid === bundleDid).sort((a, b) => new Date(a.deletedAt) > new Date(b.deletedAt) ? -1 : 1);\n setConfigs(list);\n const componentDid = componentDidValue || ((_list$ = list[0]) === null || _list$ === void 0 ? void 0 : (_list$$meta = _list$.meta) === null || _list$$meta === void 0 ? void 0 : _list$$meta.did) || '';\n const newConfigs = (_meta$environments = meta.environments) === null || _meta$environments === void 0 ? void 0 : _meta$environments.map(item => {\n const {\n name: key,\n validation\n } = item,\n rest = _objectWithoutProperties(item, _excluded);\n const formatItem = {\n // if the blocklet has validation, provide the validation (fix not inStore)\n validation: (0, _isNil.default)(validation) ? '' : validation\n };\n return _objectSpread(_objectSpread({}, rest), {}, {\n key\n }, formatItem);\n });\n component.current = _objectSpread(_objectSpread({}, chooseParams), {}, {\n meta: _objectSpread(_objectSpread({}, meta), {}, {\n // init configs from environments\n configs: newConfigs,\n registryUrl,\n inStore,\n inputUrl\n })\n });\n let doc = {};\n\n // if is init, should update configs\n if (isInit) {\n const ancestors = [blocklet];\n\n // component config\n const componentSelfConfigs = newConfigs || [];\n\n // TODO: meta not include children environments/configs before install, waiting for next sprint to design\n const componentChildrenConfigs = [];\n\n // eslint-disable-next-line\n // chooseBlocklet?.children?.map(childBlocklet => {\n // // eslint-disable-next-line no-shadow\n // forEachChildSync(childBlocklet, (b, { ancestors }) => {\n // const ancestorDids = ancestors.slice(1).map(x => x.meta.did);\n\n // componentChildrenConfigs.push(\n // (b.configs || []).map(x => ({ ...x, childDid: ancestorDids.concat(b.meta.did) }))\n // );\n // });\n\n // return false;\n // });\n\n const componentAllConfigs = (0, _uniqBy.default)((0, _flatten.default)([...componentSelfConfigs, ...componentChildrenConfigs]), 'key').filter(x => !!x.key).sort((a, b) => {\n if (a.required && !b.required) {\n return -1;\n }\n if (b.required && !a.required) {\n return 1;\n }\n return 0;\n });\n const sharedConfigObj = (0, _util.getSharedConfigObj)({\n configs: componentAllConfigs\n }, ancestors);\n const configsValue = {};\n const configsList = componentAllConfigs.map(item => {\n const {\n default: defaultValue,\n key\n } = item,\n rest = _objectWithoutProperties(item, _excluded2);\n configsValue[key] = sharedConfigObj[key] || defaultValue;\n return _objectSpread(_objectSpread({}, rest), {}, {\n key,\n hidden: !!_constant.BLOCKLET_CONFIGURABLE_KEY[key]\n });\n });\n doc = _objectSpread(_objectSpread({}, doc), {}, {\n configsList,\n configsValue,\n hasMissRequiredConfigs: hasMissRequiredConfigs(configsList, configsValue)\n });\n }\n\n // use deleted history\n if (componentDid && componentDid !== '_empty_') {\n const config = list.find(x => x.meta.did === componentDid);\n doc = _objectSpread(_objectSpread({}, doc), {}, {\n pathPrefix: config === null || config === void 0 ? void 0 : config.mountPoint,\n title: config === null || config === void 0 ? void 0 : config.meta.title,\n componentName: config === null || config === void 0 ? void 0 : config.meta.name,\n // use history's environments\n hasEnvironmentsStep: false\n });\n } else {\n var _component$current$me, _component$current$me2;\n doc = _objectSpread(_objectSpread({}, doc), {}, {\n pathPrefix: \"/\".concat((0, _util.urlFriendly)(name)),\n title: title || '',\n componentName: '',\n hasEnvironmentsStep: ((_component$current$me = component.current.meta) === null || _component$current$me === void 0 ? void 0 : (_component$current$me2 = _component$current$me.environments) === null || _component$current$me2 === void 0 ? void 0 : _component$current$me2.length) > 0\n });\n }\n\n // eslint-disable-next-line no-shadow\n const componentRequirePurchase = requirePurchase(component.current.meta);\n updateParams(_objectSpread(_objectSpread({\n bundleDid,\n componentDid\n }, doc), {}, {\n hasRequiredEnvironments: hasRequiredEnvironments(component.current.meta),\n requirePurchase: componentRequirePurchase\n }));\n if (isInit && componentRequirePurchase) {\n onGeneratePurchaseData();\n }\n };\n const steps = [{\n key: 'selectComponent',\n name: t('blocklet.component.selectComponent'),\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(TypographyWrapper, {\n component: \"div\",\n children: [params.showFromUrlDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(_installFromUrl.default\n // if not set defaultUrl, the dialog will always show step 1 when the dialog is opened\n // defaultUrl={meta?.inputUrl}\n , {\n mode: \"component\",\n onCancel: () => {\n updateParams({\n showFromUrlDialog: false\n });\n }\n // eslint-disable-next-line no-shadow\n ,\n onSuccess: _ref5 => {\n let {\n meta,\n inputUrl,\n inStore,\n registryUrl\n } = _ref5;\n setConfigValue({\n chooseParams: {\n meta,\n inputUrl,\n inStore,\n registryUrl\n },\n isInit: true\n });\n updateParams({\n showFromUrlDialog: false\n });\n onNext();\n },\n handleText: {\n title: t('blocklet.component.addComponentTip.fromUrl'),\n confirm: t('blocklet.component.choose')\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_selectStore.default, {\n extra: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"text\",\n color: \"primary\",\n \"data-cy\": \"add-component-from-url\",\n onClick: () => {\n updateParams({\n showFromUrlDialog: true\n });\n },\n style: {\n padding: '0 2px'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n style: {\n fontSize: 20,\n marginRight: 4\n }\n }), \" \", t('blocklet.component.addComponentTip.fromUrl'), ' ']\n }),\n loading: loading,\n onChange: () => {\n setParams({});\n component.current = {};\n },\n children: _ref6 => {\n let {\n currentRegistry\n } = _ref6;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_storeBlockletList.default, {\n style: isMobile ? {\n // should remove other dom height/margin\n height: 'calc(100vh - 56px - 80px - 32px - 40px )'\n } : {\n height: 'calc(100% - 40px)'\n },\n storeUrl: currentRegistry.url,\n handleButtonClick: chooseParams => {\n setConfigValue({\n chooseParams: _objectSpread(_objectSpread({}, chooseParams), {}, {\n inStore: true // choose from store, must be inStore\n }),\n\n isInit: true\n });\n },\n handleBlockletRender: _ref7 => {\n let {\n blocklet: blockletItem,\n defaultRender\n } = _ref7;\n const isChosen = (params === null || params === void 0 ? void 0 : params.bundleDid) && (params === null || params === void 0 ? void 0 : params.bundleDid) === (blockletItem === null || blockletItem === void 0 ? void 0 : blockletItem.did);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(StoreBlockletItemWrapper, {\n children: [isChosen && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"check-container\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Check.default, {\n className: \"check-icon\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: isChosen ? 'choose-blocklet' : '',\n style: {\n marginLeft: 16\n },\n children: defaultRender\n })]\n });\n },\n extraFilter: allBlocklets => {\n // only use blocklets that are component\n return allBlocklets === null || allBlocklets === void 0 ? void 0 : allBlocklets.filter(x => !!(0, _util.isComponentBlocklet)(x));\n }\n });\n }\n })]\n }),\n cancel: t('common.cancel'),\n confirm: getParamsName(params) ? t('blocklet.component.addNext', {\n name: getParamsName(params)\n }) : t('common.next'),\n onCancel: onClose,\n onConfirm: () => {\n onNext();\n }\n }, {\n key: 'agreement',\n name: t('launchBlocklet.introduction'),\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(TypographyWrapper, {\n component: \"div\",\n className: \"agreement-wrapper\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_pageHeader.default, {\n title: t('launchBlocklet.introduction'),\n subTitle: t('blocklet.component.addComponentTip.introduction')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_agreement.default, {\n meta: meta,\n onClickNext: onNext,\n handleDescEle: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n // eslint-disable-next-line\n dangerouslySetInnerHTML: {\n __html: t(\"blocklet.component.addComponentTip.\".concat(params.requirePurchase ? 'isPurchase' : 'isFree'), {\n name: getComponentName()\n })\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: t('blocklet.component.addComponentTip.belowInformation')\n })]\n })\n })]\n }),\n cancel: t('common.pre'),\n confirm: t('launchBlocklet.next'),\n onCancel: _onCancel,\n onConfirm: () => {\n setIsWaitingPurchase(false);\n onNext();\n }\n }, meta && params.requirePurchase && {\n key: 'purchase',\n name: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [t('common.verifyNFT'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_required.default, {})]\n }),\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(TypographyWrapper, {\n component: \"div\",\n className: \"flex-align-center\",\n style: {\n flexDirection: 'column'\n },\n children: [!(((_purchaseRef$current = purchaseRef.current) === null || _purchaseRef$current === void 0 ? void 0 : (_purchaseRef$current$ = _purchaseRef$current.getCurrentStep) === null || _purchaseRef$current$ === void 0 ? void 0 : _purchaseRef$current$.call(_purchaseRef$current)) === 2 || isWaitingPurchase) && /*#__PURE__*/(0, _jsxRuntime.jsx)(PageHeaderWrapper, {\n title: t('common.verifyNFT'),\n subTitle: t('blocklet.component.addComponentTip.verifyNFT')\n }), !(0, _isEmpty.default)(params.purchaseResultProps) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"flex-align-center flex-justify-center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_launchResultMessage.default, _objectSpread({}, params.purchaseResultProps))\n }) : purchaseData && /*#__PURE__*/(0, _jsxRuntime.jsx)(_purchase.ComponentPurchaseSelect, {\n ref: purchaseRef,\n meta: purchaseData.meta\n // if select deleted history, use verify mode\n ,\n mode: params.componentDid ? 'verify' : 'both',\n onCancel: onCancelPurchase,\n installOpts: purchaseData.installOpts,\n handlePaySuccess: onSuccessPurchase\n })]\n }),\n disabled: ((_purchaseRef$current2 = purchaseRef.current) === null || _purchaseRef$current2 === void 0 ? void 0 : (_purchaseRef$current3 = _purchaseRef$current2.getCurrentStep) === null || _purchaseRef$current3 === void 0 ? void 0 : _purchaseRef$current3.call(_purchaseRef$current2)) === 2 || isWaitingPurchase,\n cancel: t('common.pre'),\n confirm: t('common.next'),\n onConfirm: () => {\n if (typeof purchaseRef.current.onNext === 'function') {\n purchaseRef.current.onNext();\n setIsWaitingPurchase(true);\n }\n },\n onCancel: () => {\n _onCancel();\n }\n }, {\n key: 'config',\n name: t('common.config'),\n error,\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(TypographyWrapper, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(PageHeaderWrapper, {\n title: t('common.config'),\n subTitle: t('blocklet.component.addComponentTip.config')\n }), !!params.bundleDid && !!configs.length && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_TextField.default, {\n select: true,\n label: t('blocklet.component.selectInstance'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"did\",\n helperText: t('blocklet.component.selectInstanceTip'),\n \"data-cy\": \"component-instance-select\",\n fullWidth: true,\n value: params.componentDid || '_empty_',\n onChange: e => {\n setConfigValue({\n componentDid: e.target.value\n });\n },\n style: {\n marginBottom: 32\n },\n margin: \"normal\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: \"_empty_\",\n children: t('blocklet.component.newInstance')\n }, \"_empty_\"), configs.map(x => {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n value: x.meta.did,\n \"data-cy\": x.meta.did,\n children: [x.meta.title, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n style: {\n marginLeft: 8\n },\n children: (0, _util2.formatToDatetime)(x.deletedAt)\n })]\n }, x.meta.did);\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('blocklet.component.mountPoint'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"pathPrefix\",\n inputProps: {\n 'data-cy': 'mount-point-input'\n },\n fullWidth: true,\n helperText: t('blocklet.component.mountPointTip'),\n style: {\n marginBottom: 32\n },\n margin: \"normal\",\n value: params.pathPrefix,\n onChange: e => {\n const pathPrefix = e.target.value;\n updateParams({\n pathPrefix\n });\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.title'),\n autoComplete: \"off\",\n variant: \"outlined\",\n fullWidth: true,\n style: {\n marginBottom: 32\n },\n margin: \"normal\",\n value: params.title,\n helperText: t('blocklet.component.titleTip'),\n onChange: e => {\n const title = e.target.value;\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n title\n }));\n }\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n style: {\n width: '100%',\n marginTop: 8\n },\n children: error\n })]\n }),\n cancel: t('common.pre'),\n confirm: t('common.next'),\n onCancel: _onCancel,\n onConfirm: () => {\n onNext();\n }\n }, meta && (params === null || params === void 0 ? void 0 : params.hasEnvironmentsStep) && {\n key: 'environment',\n name: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [t('common.environment'), \" \", params.hasRequiredEnvironments && /*#__PURE__*/(0, _jsxRuntime.jsx)(_required.default, {})]\n }),\n disabled: !!editingItem || (params === null || params === void 0 ? void 0 : params.hasMissRequiredConfigs),\n body: () => {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(TypographyWrapper, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(PageHeaderWrapper, {\n title: t('common.environment'),\n subTitle: t('blocklet.component.addComponentTip.environment')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_schemaForm.default, {\n style: {\n marginTop: -12,\n width: '100%'\n },\n schema: params.configsList,\n defaultValue: params.configsValue\n // eslint-disable-next-line\n ,\n onChange: (changeValue, _ref8) => {\n let {\n action,\n currentItem,\n allValues\n } = _ref8;\n if (action === 'confirm') {\n updateParams({\n hasMissRequiredConfigs: hasMissRequiredConfigs(params.configsList, allValues),\n configsValue: allValues\n });\n }\n if (action === 'edit') {\n setEditingItem(currentItem);\n } else if (['cancel', 'confirm'].includes(action)) {\n setEditingItem(null);\n }\n }\n })]\n });\n },\n cancel: t('common.pre'),\n confirm: t('common.next'),\n onCancel: _onCancel,\n onConfirm: onNext\n }, {\n key: 'install',\n name: t('common.install'),\n disabled: false,\n loading: false,\n body: /*#__PURE__*/(0, _jsxRuntime.jsx)(TypographyWrapper, {\n component: \"div\",\n className: \"flex-justify-center flex-align-center\",\n style: {\n flexDirection: 'column'\n },\n children: (0, _isEmpty.default)(params.installResultProps) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_AnimationWaiter.default, {\n message: /*#__PURE__*/(0, _jsxRuntime.jsx)(MessageDiv, {\n children: t('blocklet.component.installingCanCloseWindowTip')\n }),\n increaseSpeed: 0.3,\n messageLoop: false\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 120\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_launchResultMessage.default, _objectSpread({}, params.installResultProps))\n })\n }),\n confirm: t('common.complete'),\n // onCancel: onClose,\n onConfirm: () => {\n onClose();\n // scroll to bottom\n setTimeout(() => {\n const scrollDom = document.getElementsByClassName('dashboard-main')[0];\n if (scrollDom) {\n scrollDom.scrollTop = scrollDom.scrollHeight;\n }\n }, 200);\n }\n }].filter(item => item);\n const step = steps[activeStep] || {};\n const onMenuItemClick = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setShowDialog(true);\n };\n const isDisabled = () => {\n if (loading || step.error || !params.bundleDid) {\n return true;\n }\n if (activeStep > 0) {\n return !params.pathPrefix;\n }\n return false;\n };\n\n // show close button when step is not the last one\n const showCloseButton = activeStep < steps.length - 1;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"component-action\",\n \"data-cy\": \"action-add-component\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('blocklet.component.add')]\n }), showDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(DialogWrapper, {\n title: t('blocklet.component.addWithName', {\n name: (0, _util.getDisplayName)(blocklet)\n }),\n maxWidth: false,\n fullWidth: false,\n PaperProps: {\n style: isMobile ? {\n width: '100%',\n height: window.innerHeight\n } : {\n maxWidth: 1350,\n minWidth: 930,\n width: '80%'\n }\n }\n // eslint-disable-next-line no-unused-vars\n ,\n onClose: (event, reason) => {\n var _steps$, _steps$$onCancel;\n // disable backdropClick\n if (reason === 'backdropClick') {\n return;\n }\n (_steps$ = steps[0]) === null || _steps$ === void 0 ? void 0 : (_steps$$onCancel = _steps$.onCancel) === null || _steps$$onCancel === void 0 ? void 0 : _steps$$onCancel.call(_steps$);\n },\n showCloseButton: showCloseButton,\n disableEscapeKeyDown: true,\n open: true,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [step.cancel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n step.onCancel();\n },\n color: \"inherit\",\n children: step.cancel || t('common.cancel')\n }), step.confirm && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n step.onConfirm();\n },\n color: \"primary\",\n \"data-cy\": \"submit-confirm-next\",\n disabled: typeof step.disabled === 'boolean' ? step.disabled : isDisabled(),\n variant: \"contained\",\n autoFocus: true,\n title: step.confirm,\n style: {\n marginLeft: 8,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n maxWidth: '200px',\n display: 'inline-block'\n },\n children: [(typeof step.loading === 'boolean' ? step.loading : loading) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), step.confirm]\n })]\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_step.StepProvider, {\n steps: steps,\n mode: \"memory\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StepContent, {\n ref: stepRef,\n meta: meta,\n isMobile: isMobile,\n onStepChange: newStep => {\n setActiveStep(newStep);\n }\n })\n })\n })]\n });\n}\nAddComponent.propTypes = {\n children: _propTypes.default.any,\n blocklet: _propTypes.default.object.isRequired\n};\nAddComponent.defaultProps = {\n children: null\n};\nconst DialogWrapper = (0, _styled.default)(_Dialog.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiDialogContent-root {\\n padding-left: 0;\\n padding-right: 0;\\n padding-bottom: 0;\\n }\\n .MuiDialogActions-root {\\n padding: 16px 24px;\\n }\\n\"])));\nconst TypographyWrapper = (0, _styled.default)(_Typography.default)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n width: 100%;\\n height: 100%;\\n\"])));\nconst RightContent = _styled.default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n padding: 34px 24px 24px;\\n width: 100%;\\n display: flex;\\n flex-direction: column;\\n justify-content: flex-start;\\n align-items: flex-start;\\n\\n .bottom-button {\\n min-width: 200px;\\n }\\n\\n // blocklet-select-side\\n aside {\\n width: 140px;\\n }\\n\"])));\nconst isMobileDialogContent = props => {\n if (props.isMobile) {\n return \"\\n height: calc(100vh - 56px - 64px - 48px);\\n \";\n }\n return '';\n};\nconst DialogContentWrapper = (0, _styled.default)(_DialogContentText.default)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n \", \"\\n\\n & .flex-justify-center {\\n display: flex;\\n justify-content: center;\\n }\\n\\n & .flex-align-center {\\n display: flex;\\n height: 100%;\\n align-items: center;\\n \", \"\\n }\\n\\n & .agreement-wrapper {\\n \", \"\\n max-height: 60vh;\\n .eula-trigger {\\n padding-right: 0;\\n }\\n .next-button {\\n display: none;\\n }\\n }\\n\\n & .connect {\\n background: white;\\n }\\n\"])), _ref9 => {\n let {\n className\n } = _ref9;\n // mobile extra style\n if (className === 'mobileStyle') {\n return \"\\n & > div{\\n height: 100%;\\n }\\n .root-header {\\n .app-name-content {\\n display: none;\\n }\\n }\\n\\n // content-panel\\n .root-header + div{\\n padding-top: 0;\\n position: relative;\\n & > div {\\n padding-top: 0;\\n }\\n }\\n\\n \";\n }\n return \"\\n height: 72vh;\\n position: relative;\\n .root-header {\\n z-index: auto !important;\\n position: fixed !important;\\n }\\n & > div {\\n height: 100%;\\n width: 100%;\\n max-width: 100%;\\n & > div {\\n max-height: unset !important;\\n max-width: 100%;\\n & > div {\\n // left-panel\\n &:first-child {\\n padding-top: 0;\\n // padding-left: 0;\\n width: 25%;\\n min-width: 240px;\\n & > div:first-child {\\n display: none;\\n }\\n // step\\n & > div:last-child {\\n // margin-top: 32px;\\n margin-top: 0;\\n }\\n }\\n // right-panel\\n &:last-child {\\n padding-top: 0;\\n padding-right: 24px;\\n overflow-y: auto;\\n .app-content {\\n padding: 0 0 24px 0;\\n }\\n .button-container {\\n padding-right: 0;\\n }\\n }\\n }\\n }\\n }\\n\\n \";\n}, props => isMobileDialogContent(props), props => isMobileDialogContent(props));\nconst PageHeaderWrapper = (0, _styled.default)(_pageHeader.default)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n margin-bottom: 24px;\\n\"])));\nconst StoreBlockletItemWrapper = _styled.default.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n position: relative;\\n\\n .choose-blocklet {\\n background-color: rgb(236, 251, 253);\\n border-color: rgb(236, 251, 253);\\n border-radius: 8px;\\n }\\n\\n .check-container {\\n position: absolute;\\n right: 0;\\n bottom: 0;\\n display: flex;\\n justify-content: flex-end;\\n align-items: flex-end;\\n width: 30px;\\n height: 30px;\\n border-radius: 0 0 8px 0;\\n color: \", \";\\n overflow: hidden;\\n transition: all ease 0.3s;\\n &:after {\\n position: absolute;\\n z-index: 0;\\n display: block;\\n width: 0;\\n height: 0;\\n border-top: transparent solid 15px;\\n border-left: transparent solid 15px;\\n border-bottom: \", \" solid 15px;\\n border-right: \", \" solid 15px;\\n transition: all ease 0.1s;\\n content: '';\\n }\\n\\n .check-icon {\\n position: relative;\\n z-index: 2;\\n margin: 0 1px 1px 0;\\n font-size: 16px;\\n transition: all ease 0.2s;\\n }\\n }\\n\"])), props => props.theme.palette.common.white, props => props.theme.palette.primary.main, props => props.theme.palette.primary.main);\nconst MessageDiv = _styled.default.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n color: \", \";\\n .msg-before {\\n display: inline-block;\\n color: #aaa;\\n font-size: 14px;\\n margin-right: 6px;\\n }\\n\"])), props => props.theme.palette.primary.main);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ComponentConfiguration;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Tabs = _interopRequireDefault(require(\"@arcblock/ux/lib/Tabs\"));\nvar _util2 = require(\"../../util\");\nvar _environment = _interopRequireDefault(require(\"./environment\"));\nvar _setting = _interopRequireDefault(require(\"./setting\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ComponentConfiguration(_ref) {\n let {\n blocklet,\n ancestors,\n children\n } = _ref;\n const [showDialog, setShowDialog] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const isRoot = !ancestors.map(x => x.meta.did)[0];\n const isDynamic = blocklet.dynamic;\n const [tab, setTab] = (0, _react.useState)('settings');\n const name = ancestors.concat(blocklet).map(x => (0, _util.getDisplayName)(x, true)).join(' / ');\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n if (blocklet.status === 'unknown' && (0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n const onClose = () => {\n setShowDialog(false);\n };\n const onOpen = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setShowDialog(true);\n };\n const tabConfigs = {\n settings: {\n label: t('blocklet.component.setting'),\n value: 'settings',\n component: /*#__PURE__*/(0, _jsxRuntime.jsx)(_setting.default, {\n blocklet: blocklet,\n ancestors: ancestors\n })\n },\n environments: {\n label: t('common.environment'),\n value: 'environments',\n component: /*#__PURE__*/(0, _jsxRuntime.jsx)(_environment.default, {\n blocklet: blocklet,\n ancestors: ancestors\n })\n }\n };\n const tabs = Object.values(tabConfigs).map(_ref2 => {\n let {\n label,\n value\n } = _ref2;\n return {\n label,\n value\n };\n });\n const onTabChange = newTab => {\n setTab(newTab);\n };\n const tabConfig = tabConfigs[tab] || tabConfigs.settings;\n return [typeof children === 'function' ? children({\n open: onOpen\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: onOpen,\n \"data-cy\": \"action-config-component\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Edit.default, {})\n }), showDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledDialog, {\n open: true,\n fullWidth: true,\n maxWidth: \"md\",\n title: name,\n onClose: onClose,\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n children: isRoot || isDynamic ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: 1,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tabs.default, {\n tabs: tabs,\n current: tab,\n onChange: onTabChange,\n scrollButtons: \"auto\"\n }), tabConfig.component]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_environment.default, {\n blocklet: blocklet,\n ancestors: ancestors\n })\n })];\n}\nComponentConfiguration.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n children: _propTypes.default.any\n};\nComponentConfiguration.defaultProps = {\n ancestors: [],\n children: null\n};\nconst StyledDialog = (0, _styled.default)(_Dialog.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiDialogContent-root {\\n padding-top: 0;\\n margin-top: -32px;\\n }\\n .MuiToolbar-root {\\n padding-right: 12px;\\n }\\n .ux-dialog_right {\\n padding-right: 20px;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DeleteComponent;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Radio = _interopRequireDefault(require(\"@mui/material/Radio\"));\nvar _RadioGroup = _interopRequireDefault(require(\"@mui/material/RadioGroup\"));\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction DeleteComponent(_ref) {\n let {\n component,\n remove,\n disabled,\n tip\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [deleteSetting, setDeleteSetting] = (0, _react.useState)(null);\n const deleteComponent = async param => {\n setLoading(true);\n await remove(param.component, param.removeType);\n setLoading(false);\n setDeleteSetting(null);\n };\n const componentDisabled = disabled || loading;\n const btn = /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledButton, {\n disabled: componentDisabled,\n onClick: () => setDeleteSetting({\n title: t('blocklet.component.delete'),\n // eslint-disable-next-line react/no-unstable-nested-components\n description: (params, setParams) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n gutterBottom: true,\n children: t('blocklet.action.removeComponentDescription')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_RadioGroup.default, {\n name: \"removeType\",\n value: params.removeType,\n onChange: e => setParams(_objectSpread(_objectSpread({}, params), {}, {\n removeType: e.target.value\n })),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n value: \"keepData\",\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),\n label: t('blocklet.action.removeComponentKeepData')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n value: \"complete\",\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),\n label: t('blocklet.action.removeComponentComplete')\n })]\n })]\n }),\n confirm: t('common.confirm'),\n cancel: t('common.cancel'),\n params: {\n component,\n removeType: 'keepData'\n },\n onConfirm: deleteComponent,\n onCancel: () => setDeleteSetting(null)\n }),\n \"data-cy\": \"delete-component-btn\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {\n disabled: componentDisabled\n })\n });\n const btnWithToolTip = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: tip || t('common.delete'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: btn\n })\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [btnWithToolTip, deleteSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: deleteSetting.title,\n description: deleteSetting.description,\n confirm: deleteSetting.confirm,\n cancel: deleteSetting.cancel,\n params: deleteSetting.params,\n onConfirm: deleteSetting.onConfirm,\n onCancel: deleteSetting.onCancel\n })]\n });\n}\nDeleteComponent.propTypes = {\n component: _propTypes.default.object.isRequired,\n remove: _propTypes.default.func,\n disabled: _propTypes.default.bool,\n tip: _propTypes.default.string\n};\nDeleteComponent.defaultProps = {\n remove: async () => {},\n disabled: false,\n tip: ''\n};\nconst StyledButton = (0, _styled.default)(_IconButton.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n &.Mui-disabled {\\n opacity: 0.5;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ComponentEnvironment;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _core = _interopRequireDefault(require(\"@material-table/core\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _constant = require(\"@blocklet/constant\");\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _tableIcons = _interopRequireDefault(require(\"../../table-icons\"));\nvar _table = _interopRequireDefault(require(\"../../table\"));\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _util2 = require(\"../../util\");\nvar _icons = _interopRequireDefault(require(\"../icons\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction ComponentEnvironment(_ref) {\n let {\n blocklet,\n ancestors\n } = _ref;\n const node = (0, _node.useNodeContext)();\n const {\n inService\n } = node;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const dids = [...ancestors.map(x => x.meta.did), blocklet.meta.did];\n const onConfigChanged = () => _toast.default.success(t('blocklet.config.changedTip'));\n const isConfigEditable = x => x.custom;\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n if (blocklet.status === 'unknown' && (0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n const onAddConfig = async data => {\n if (!data.key.trim() || !data.value.trim()) {\n _toast.default.error(t('blocklet.config.environment.keyValueRequired'));\n return;\n }\n if (data.key.startsWith('BLOCKLET_') || data.key.startsWith('COMPONENT_')) {\n _toast.default.error(t('blocklet.config.environment.invalidKey'));\n return;\n }\n data.custom = true;\n const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs: [data]\n }\n });\n if (result.code === 'ok') {\n onConfigChanged(result.blocklet);\n }\n };\n const onEditConfig = async (newData, oldData) => {\n // only required field can't be empty\n if (newData.required && (!newData.key.trim() || !newData.value.trim())) {\n _toast.default.error(t('blocklet.config.environment.keyValueRequired'));\n return;\n }\n if (newData.key.startsWith('BLOCKLET_') && !_constant.BLOCKLET_CONFIGURABLE_KEY[newData.key]) {\n _toast.default.error(t('blocklet.config.environment.invalidKey'));\n return;\n }\n if (newData.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE) {\n const errMessage = (0, _util2.isValidClusterSize)(newData);\n if (errMessage) {\n _toast.default.error(errMessage);\n return;\n }\n }\n const configs = [newData];\n if (newData.key !== oldData.key) {\n if (!newData.custom) {\n _toast.default.error('Only key of custom env can be changed');\n return;\n }\n configs.push({\n key: oldData.key,\n custom: true\n });\n }\n try {\n const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs\n }\n });\n if (result.code === 'ok') {\n onConfigChanged(result.blocklet);\n }\n } catch (err) {\n _toast.default.error((0, _util2.formatError)(err));\n }\n };\n const onDeleteConfig = async data => {\n if (data.required) {\n _toast.default.error(t('blocklet.config.environment.deleteForbidden'));\n return;\n }\n if (!data.custom) {\n _toast.default.error('Only key of custom env can be changed');\n return;\n }\n const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs: [{\n key: data.key,\n custom: true\n }]\n }\n });\n if (result.code === 'ok') {\n onConfigChanged(result.blocklet);\n }\n };\n\n // configs\n const componentConfigs = (blocklet.configs || []).filter(x => !_constant.BLOCKLET_CONFIGURABLE_KEY[x.key]);\n const sharedConfigObj = (0, _util.getSharedConfigObj)(blocklet, ancestors);\n const missingRequiredConfigs = (0, _util.getComponentMissingConfigs)(blocklet, ancestors);\n const configs = componentConfigs.map(x => _objectSpread(_objectSpread({}, x), {}, {\n value: sharedConfigObj[x.key] || x.value\n }));\n const hasBWAConfig = configs.some(x => x.key && x.key.startsWith('BWA_'));\n const action = {\n onRowAdd: onAddConfig,\n onRowUpdate: onEditConfig,\n onRowDelete: onDeleteConfig,\n // environment declare in blocklet.yml can't be deleted, only custom env can be deleted\n isDeletable: isConfigEditable\n };\n const onColumns = () => [{\n title: t('common.key'),\n field: 'key',\n initialEditValue: 'Key',\n width: '30%',\n render: d => /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n value: d.value,\n style: {\n color: d.required && !d.value ? '#ff4436' : '#222222',\n fontWeight: d.required ? 'bold' : 'normal'\n },\n children: d.key\n }),\n editComponent: props => {\n const {\n value,\n rowData,\n onChange: _onChange\n } = props;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(EditDiv, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n size: \"small\",\n disabled: isConfigEditable(rowData) === false,\n value: value,\n onChange: e => _onChange(e.target.value),\n variant: \"outlined\",\n label: \"Key\",\n placeholder: t('blocklet.config.environment.key'),\n margin: \"dense\",\n autoFocus: true\n })\n });\n }\n }, {\n title: t('common.value'),\n field: 'value',\n initialEditValue: 'Value',\n width: 'calc((100% - (96px + 30%)) / 1)',\n render: d => {\n if (d.secure) {\n return '******';\n }\n if (!d.value) {\n return null;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n unstyled: true,\n value: d.value,\n style: {\n wordBreak: 'break-all'\n },\n children: d.value\n });\n },\n // eslint-disable-next-line no-shadow\n editComponent: props => {\n const {\n value,\n rowData,\n onChange: _onChange2\n } = props;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(EditDiv, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n size: \"small\",\n value: value === '__encrypted__' ? '' : value,\n onChange: e => _onChange2(e.target.value),\n variant: \"outlined\",\n label: t('common.value'),\n placeholder: t('blocklet.config.environment.value'),\n margin: \"dense\",\n autoFocus: true\n }), rowData.description && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginLeft: 12\n },\n children: rowData.description\n })]\n });\n }\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [!!missingRequiredConfigs.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"error\",\n style: {\n marginTop: 24\n },\n children: t('blocklet.config.missingRequired')\n }), hasBWAConfig && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"info\",\n children: t('blocklet.config.environment.tip')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_blocklets',\n role: inService ? _util2.BlockletAdminRoles : [],\n children: hasPermission => /*#__PURE__*/(0, _jsxRuntime.jsx)(_table.default, {\n className: (0, _util2.isBlockletDev)(blocklet) ? 'readonly-block config-table' : 'config-table',\n \"data-disabled-text\": t('blocklet.config.disabledText'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_core.default, {\n title: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"h4\", {\n children: t('common.environment')\n }),\n columns: onColumns(),\n icons: _objectSpread(_objectSpread({}, _icons.default), _tableIcons.default),\n options: {\n emptyRowsWhenPaging: false,\n actionsColumnIndex: -1,\n tableLayout: 'auto',\n maxBodyHeight: '100%',\n paging: false,\n search: false\n },\n localization: {\n header: {\n actions: t('common.actions')\n },\n body: {\n emptyDataSourceMessage: t('common.noData')\n }\n },\n data: configs,\n editable: hasPermission ? action : {}\n })\n })\n })]\n });\n}\nComponentEnvironment.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array\n};\nComponentEnvironment.defaultProps = {\n ancestors: []\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .readonly-block {\\n position: relative;\\n &::after {\\n content: attr(data-disabled-text);\\n position: absolute;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n background-color: rgba(230, 230, 230, 0.7);\\n font-size: 24px;\\n letter-spacing: 2px;\\n color: #e33371;\\n padding: 20px;\\n word-break: break-all;\\n word-wrap: break-word;\\n z-index: 10;\\n }\\n }\\n .config-table {\\n margin-bottom: 24px;\\n position: relative;\\n .hide-control {\\n position: absolute;\\n top: 10px;\\n left: 200px;\\n @media (max-width: \", \"px) {\\n left: 160px;\\n }\\n }\\n\\n .MuiToolbar-root {\\n display: flex;\\n }\\n\\n .MuiTableRow-head {\\n display: none;\\n }\\n\\n &.hide-header {\\n .MuiToolbar-root {\\n display: none;\\n }\\n }\\n }\\n\\n .accordion {\\n margin-bottom: 16px;\\n &:last-of-type {\\n margin-bottom: 0;\\n }\\n padding: 8px 0 8px 0px;\\n &.MuiAccordion-root {\\n background: transparent;\\n box-shadow: none;\\n border: 1px solid #ddd;\\n border-radius: 4px;\\n &::before,\\n &::after {\\n height: 0;\\n }\\n .MuiAccordionSummary-root {\\n padding-left: 0;\\n }\\n .accordion-title {\\n font-weight: bold;\\n padding-left: 16px;\\n }\\n }\\n }\\n\"])), props => props.theme.breakpoints.values.sm);\nconst EditDiv = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n height: 60px;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _last = _interopRequireDefault(require(\"lodash/last\"));\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _useAsync = _interopRequireDefault(require(\"react-use/lib/useAsync\"));\nvar _RelativeTime = _interopRequireDefault(require(\"@arcblock/ux/lib/RelativeTime\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@mui/material/Button\"));\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction Expiration(_ref) {\n var _state$value, _state$value$data, _state$value$data$val;\n let {\n controller\n } = _ref;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const state = (0, _useAsync.default)(async () => (0, _util.getAsset)(controller.chainHost, controller.nftId));\n if (state.loading) {\n return '';\n }\n const expirationDate = (0, _last.default)((0, _get.default)(state.value, 'data.value.expirationDate', []));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_RelativeTime.default, {\n value: expirationDate,\n locale: locale\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n style: {\n marginLeft: '5px'\n },\n variant: \"contained\",\n component: _Link.default,\n href: (0, _urlJoin.default)((_state$value = state.value) === null || _state$value === void 0 ? void 0 : (_state$value$data = _state$value.data) === null || _state$value$data === void 0 ? void 0 : (_state$value$data$val = _state$value$data.value) === null || _state$value$data$val === void 0 ? void 0 : _state$value$data$val.launcherUrl, \"/instances/\".concat(controller.nftId, \"/renewal?locale=\").concat(locale, \"&return-url=\").concat(encodeURIComponent(window.location.href))),\n children: t('common.renew')\n })]\n });\n}\nExpiration.propTypes = {\n controller: _propTypes.default.object.isRequired\n};\nvar _default = Expiration;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletComponent;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _semver = _interopRequireDefault(require(\"semver\"));\nvar _Dialog = _interopRequireDefault(require(\"@mui/material/Dialog\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _DialogContent = _interopRequireDefault(require(\"@mui/material/DialogContent\"));\nvar _DialogTitle = _interopRequireDefault(require(\"@mui/material/DialogTitle\"));\nvar _DialogActions = _interopRequireDefault(require(\"@mui/material/DialogActions\"));\nvar _Update = _interopRequireDefault(require(\"@mui/icons-material/Update\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Badge = _interopRequireDefault(require(\"@mui/material/Badge\"));\nvar _SettingsOutlined = _interopRequireDefault(require(\"@mui/icons-material/SettingsOutlined\"));\nvar _InfoOutlined = _interopRequireDefault(require(\"@mui/icons-material/InfoOutlined\"));\nvar _Launch = _interopRequireDefault(require(\"@mui/icons-material/Launch\"));\nvar _Grid = _interopRequireDefault(require(\"@mui/material/Grid\"));\nvar _Collapse = _interopRequireDefault(require(\"@mui/material/Collapse\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _ArrowForward = _interopRequireDefault(require(\"@mui/icons-material/ArrowForward\"));\nvar _ExpandMore = _interopRequireDefault(require(\"@mui/icons-material/ExpandMore\"));\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _deletingBlocklets = require(\"../../contexts/deleting-blocklets\");\nvar _didAddress = _interopRequireDefault(require(\"../../did-address\"));\nvar _tag = _interopRequireDefault(require(\"../../tag\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _blockletSource = _interopRequireDefault(require(\"../blocklet-source\"));\nvar _status = _interopRequireDefault(require(\"../status\"));\nvar _version = _interopRequireDefault(require(\"../version\"));\nvar _node = require(\"../../contexts/node\");\nvar _util2 = require(\"../../util\");\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _bundleAvatar = _interopRequireDefault(require(\"../bundle-avatar\"));\nvar _mode = _interopRequireDefault(require(\"../mode\"));\nvar _configuration = _interopRequireDefault(require(\"./configuration\"));\nvar _delete = _interopRequireDefault(require(\"./delete\"));\nvar _line = _interopRequireDefault(require(\"./line\"));\nvar _add = _interopRequireDefault(require(\"./add\"));\nvar _addRule = _interopRequireDefault(require(\"../router/action/add-rule\"));\nvar _ruleList = _interopRequireDefault(require(\"../router/rule-list\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\", \"onUpdate\", \"getComponentUrl\"];\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst getEngineRows = (engine, t) => {\n if (!engine) {\n return [];\n }\n return [{\n name: t('common.name'),\n value: engine.displayName\n }, {\n name: t('common.description'),\n value: engine.description\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, {\n children: engine.version\n })\n }];\n};\nconst getSourceInfo = blocklet => {\n const {\n source,\n deployedFrom,\n bundleSource\n } = blocklet;\n if (source) {\n return {\n source,\n deployedFrom\n };\n }\n if (!bundleSource) {\n return {\n source: 'upload',\n deployedFrom\n };\n }\n if (bundleSource.url) {\n return {\n source: 'url',\n deployedFrom: deployedFrom || Array.isArray(bundleSource.url) ? bundleSource.url[0] : bundleSource.url\n };\n }\n if (bundleSource.store) {\n return {\n source: 'registry',\n deployedFrom: deployedFrom || Array.isArray(bundleSource.store) ? bundleSource.store[0] : bundleSource.store\n };\n }\n return {};\n};\nfunction ComponentItem(_ref) {\n var _blocklet$children;\n let {\n blocklet,\n ancestors,\n depth,\n onRemove,\n getComponentUrl\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [expand, setExpand] = (0, _react.useState)(true);\n const [componentInfo, setComponentInfo] = (0, _react.useState)();\n const {\n deletingBlocklets: deletingComponents\n } = (0, _deletingBlocklets.useDeletingBlockletContext)();\n let {\n status\n } = blocklet;\n if (depth <= 1 && deletingComponents.includes(blocklet.meta.did)) {\n status = 'deleting';\n }\n const mountPoint = \"/\".concat(ancestors.slice(1) // ignore mountPoint of root component\n .map(x => x.mountPoint || '/').join('/'), \"/\").concat(blocklet.mountPoint || '/').replace(/\\/+/g, '/');\n\n // hide root's status and only display specific status\n const showStatus = !!ancestors.length && ['downloading', 'deleting', 'starting'].includes(status);\n const canExpand = depth > 0 && blocklet.children.length > 0;\n const expandIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n size: \"small\",\n children: expand ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {\n fontSize: \"inherit\"\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChevronRight.default, {\n fontSize: \"inherit\"\n })\n });\n const root = ancestors[0] || blocklet;\n const href = getComponentUrl(mountPoint);\n const renderRows = rows => rows.map(row => {\n if (row.name === t('common.did') || row.name === t('blocklet.appId')) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n nameFormatter: () => row.name,\n children: row.value\n }, row.name);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n children: row.value\n }, row.name);\n });\n const sourceInfo = componentInfo ? getSourceInfo(componentInfo) : {};\n const componentRows = componentInfo ? [{\n name: t('common.name'),\n value: (0, _util.getDisplayName)(componentInfo, true)\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_version.default, {\n blocklet: componentInfo,\n checkUpgrade: false\n })\n }, {\n name: t('common.status'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_status.default, {\n status: status,\n source: componentInfo.source\n })\n }, {\n name: t('common.mountPoint'),\n value: mountPoint\n }, {\n name: t('common.group'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, {\n type: \"success\",\n children: componentInfo.meta.group\n })\n }, {\n name: t('blocklet.overview.source'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockletSource.default, {\n sourceInfo: sourceInfo,\n blocklet: blocklet\n })\n }, {\n name: t('blocklet.overview.deployedFrom'),\n value: sourceInfo.deployedFrom || '-'\n }, {\n name: t('common.did'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: componentInfo.meta.did\n })\n }, {\n name: t('common.author'),\n value: (0, _util2.formatPerson)(componentInfo.meta.author)\n }, {\n name: t('common.engine'),\n value: getEngineRows(componentInfo.engine, t).map(_ref2 => {\n let {\n name,\n value\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n style: {\n marginBottom: 4\n },\n nameWidth: 120,\n name: name,\n children: value\n }, name);\n })\n }].filter(Boolean) : [];\n let deleteDisabledTip = '';\n if (depth !== 1 || !blocklet.dynamic) {\n deleteDisabledTip = t('blocklet.component.tip.notDynamic');\n } else if ((0, _util2.isInProgress)(root.status) || depth === 1 && deletingComponents.includes(blocklet.meta.did)) {\n deleteDisabledTip = t('blocklet.component.tip.stopBlocklet');\n }\n return [(depth > 0 || blocklet.meta.group !== 'gateway') && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n py: 2,\n className: \"component-item\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n pl: Math.max((depth - 1) * 2, 0),\n width: {\n xs: 300,\n md: 400\n },\n display: \"flex\",\n alignItems: \"center\",\n style: {\n cursor: canExpand ? 'pointer' : 'cursor'\n },\n onClick: () => canExpand && setExpand(!expand),\n children: [canExpand ? expandIcon : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n width: 28\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_bundleAvatar.default, {\n blocklet: blocklet,\n ancestors: ancestors\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n ml: \"16px\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n style: {\n color: '#222',\n fontSize: 18\n },\n children: (0, _util.getDisplayName)(blocklet, true)\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_version.default, {\n blocklet: blocklet,\n checkUpgrade: false\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_mode.default, {\n style: {\n marginLeft: 4\n },\n mode: blocklet.mode || ''\n }), showStatus && /*#__PURE__*/(0, _jsxRuntime.jsx)(_status.default, {\n style: {\n marginLeft: 4\n },\n status: status,\n source: blocklet.source\n })]\n })]\n })]\n }, blocklet), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n sx: {\n display: {\n xs: 'none',\n md: 'flex'\n }\n },\n alignItems: \"center\",\n flexGrow: \"1\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n title: href,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n maxWidth: 400,\n sx: {\n color: 'secondary.main',\n fontSize: 18,\n px: 2\n },\n overflow: \"hidden\",\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n children: mountPoint\n })\n })\n }, mountPoint), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.visit'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Launch.default, {})\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.overview'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => setComponentInfo(blocklet),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoOutlined.default, {})\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_configuration.default, {\n blocklet: blocklet,\n ancestors: ancestors,\n children: _ref3 => {\n let {\n open\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.config'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledBadge, {\n color: \"error\",\n badgeContent: \"\",\n variant: \"dot\",\n invisible: !(0, _util.getComponentMissingConfigs)(blocklet, ancestors).length,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: open,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsOutlined.default, {})\n })\n })\n }, \"config\");\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_delete.default, {\n blocklet: root,\n component: blocklet,\n remove: onRemove,\n disabled: !!deleteDisabledTip,\n tip: deleteDisabledTip\n })]\n }, \"actions\")]\n }, \"group-not-gateway-box\"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_line.default, {\n depth: depth\n }), (_blocklet$children = blocklet.children) !== null && _blocklet$children !== void 0 && _blocklet$children.length ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Collapse.default, {\n in: expand,\n children: blocklet.children.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentItem, {\n blocklet: x,\n ancestors: [...ancestors, blocklet],\n depth: depth + 1,\n onRemove: onRemove,\n getComponentUrl: getComponentUrl\n }, \"\".concat(depth + 1, \"-\").concat(x.meta.did)))\n }, \"blocklet-collapse\") : null, !!componentInfo && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n open: true,\n fullWidth: true,\n maxWidth: \"md\",\n onClose: () => {\n setComponentInfo(null);\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n paddingY: 1.5,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogTitle.default, {\n children: t('common.componentBasicInfo')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContent.default, {\n children: renderRows(componentRows)\n })]\n }, \"dialog-wrapper\")\n }, \"base-info-dialog\")];\n}\nComponentItem.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n depth: _propTypes.default.number,\n onRemove: _propTypes.default.func,\n getComponentUrl: _propTypes.default.func\n};\nComponentItem.defaultProps = {\n ancestors: [],\n depth: 0,\n onRemove: () => {},\n getComponentUrl: () => window.location.origin\n};\nconst StyledBadge = (0, _styled.default)(_Badge.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .BaseBadge-badge {\\n top: \", \"px;\\n right: \", \"px;\\n }\\n\"])), props => props.top * 8 || 6, props => props.right * 8 || 6);\nfunction BlockletComponent(_ref4) {\n var _blocklet$meta;\n let {\n blocklet,\n onUpdate,\n getComponentUrl\n } = _ref4,\n rest = _objectWithoutProperties(_ref4, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const {\n api,\n inService\n } = (0, _node.useNodeContext)();\n const {\n addDeletingDid,\n removeDeletingDid,\n matchDeletingDid\n } = (0, _deletingBlocklets.useDeletingBlockletContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [updateConfirm, setUpdateConfirm] = (0, _react.useState)(null);\n const [showUpdateDot, setShowUpdateDot] = (0, _react.useState)(false);\n const components = [...blocklet.children] || [];\n if (blocklet.meta.group !== 'gateway') {\n // add root blocklet to table list\n components.unshift(blocklet);\n }\n matchDeletingDid(components.map(e => e.meta.did));\n (0, _react.useEffect)(() => {\n if (blocklet && !(0, _util2.isInProgress)(blocklet.status)) {\n api.getLatestBlockletVersion({\n input: {\n did: blocklet.meta.did,\n version: blocklet.meta.version\n }\n }).then(res => {\n const {\n version\n } = res.data || {};\n if (version && _semver.default.gt(version, blocklet.meta.version)) {\n setShowUpdateDot(true);\n }\n }).catch(err => {\n console.error(err.message);\n });\n }\n }, [blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.did]); // eslint-disable-line\n\n const checkForUpdates = async () => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n // check app version\n const {\n version,\n registryUrl\n } = (await api.getLatestBlockletVersion({\n input: {\n did: blocklet.meta.did,\n version: blocklet.meta.version\n }\n })).data || {};\n if (version && _semver.default.gt(version, blocklet.meta.version)) {\n setUpdateConfirm({\n type: 'app',\n params: {\n version,\n registryUrl\n },\n list: [{\n name: (0, _util.getDisplayName)(blocklet),\n version: blocklet.meta.version,\n newVersion: version\n }]\n });\n setLoading(false);\n return;\n }\n\n // check child component version\n const {\n updateId,\n updateList\n } = (await api.checkComponentsForUpdates({\n input: {\n did: blocklet.meta.did\n }\n })).preUpdateInfo || {};\n setLoading(false);\n if (!updateId) {\n _toast.default.info(t('blocklet.component.noUpdate'));\n return;\n }\n const list = [];\n (0, _util.forEachChildSync)(blocklet, (b, _ref5) => {\n let {\n id,\n ancestors\n } = _ref5;\n const updateItem = updateList.find(x => x.id === id);\n if (updateItem) {\n const name = ancestors.slice(1).concat(b).map(x => x.meta.title || x.meta.name).join(' / ');\n\n // groupId 为一级组件的 id\n const groupId = (ancestors[1] || b).meta.did;\n list.push({\n groupId,\n name,\n version: b.meta.version,\n newVersion: updateItem.meta.version\n });\n }\n });\n const checks = {};\n list.forEach(x => {\n if (!checks[x.groupId]) {\n checks[x.groupId] = true;\n } else {\n x.disabled = true;\n }\n });\n setUpdateConfirm({\n type: 'component',\n params: {\n updateId\n },\n list,\n checks,\n hasChecks: true\n });\n } catch (err) {\n setLoading(false);\n _toast.default.error((0, _util2.formatError)(err));\n }\n };\n const onConfirmUpdate = async () => {\n if (loading) {\n return;\n }\n let fn;\n let input;\n if (updateConfirm.type === 'app') {\n fn = api.upgradeBlocklet.bind(api);\n input = {\n did: blocklet.meta.did,\n version: updateConfirm.params.version,\n storeUrl: updateConfirm.params.registryUrl || ''\n };\n } else {\n fn = api.upgradeComponents.bind(api);\n const selectedComponents = Object.keys(updateConfirm.checks).filter(x => updateConfirm.checks[x]);\n input = {\n updateId: updateConfirm.params.updateId,\n rootDid: blocklet.meta.did,\n selectedComponents\n };\n }\n try {\n setLoading(true);\n await fn({\n input\n });\n setLoading(false);\n setUpdateConfirm(null);\n setShowUpdateDot(null);\n } catch (error) {\n setLoading(false);\n _toast.default.error((0, _util2.formatError)(error));\n }\n };\n const removeComponent = async (d, type) => {\n addDeletingDid(d.meta.did);\n try {\n await api.deleteComponent({\n input: {\n did: d.meta.did,\n keepData: type === 'keepData',\n rootDid: blocklet.meta.did\n }\n });\n await (0, _util2.sleep)(800);\n } catch (err) {\n _toast.default.error((0, _util2.formatError)(err));\n removeDeletingDid(d.meta.did);\n }\n };\n const onUpdateChecksChange = (e, groupId) => {\n const {\n checked: newValue\n } = e.target;\n setUpdateConfirm(x => {\n const checks = Object.entries(x.checks).reduce((o, _ref6) => {\n let [key, oldValue] = _ref6;\n o[key] = groupId === key ? newValue : oldValue;\n return o;\n }, {});\n const hasChecks = Object.values(checks).includes(true);\n return _objectSpread(_objectSpread({}, x), {}, {\n checks,\n hasChecks\n });\n });\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"title\",\n children: [t('common.components'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_blocklets',\n role: inService ? _util2.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledBadge, {\n top: 1.2,\n right: 0.4,\n color: \"error\",\n badgeContent: \"\",\n variant: \"dot\",\n invisible: !showUpdateDot,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n disabled: loading || (0, _util2.isInProgress)(blocklet.status),\n color: \"secondary\",\n onClick: () => {\n checkForUpdates();\n },\n \"data-cy\": \"check-for-updates\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mr: 0.5,\n display: \"flex\",\n children: loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Update.default, {\n style: {\n fontSize: '1em'\n }\n })\n }), t('blocklet.component.checkUpdateTitle')]\n })\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_blocklets',\n role: inService ? _util2.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_addRule.default, {\n children: _ref7 => {\n let {\n open\n } = _ref7;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n disabled: loading || (0, _util2.isInProgress)(blocklet.status),\n variant: \"text\",\n color: \"primary\",\n \"data-cy\": \"add-rule\",\n onClick: open,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: '1.3em',\n marginRight: 4\n }\n }), t('router.rule.add.title')]\n });\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_add.default, {\n blocklet: blocklet,\n children: _ref8 => {\n let {\n open\n } = _ref8;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n disabled: loading || (0, _util2.isInProgress)(blocklet.status),\n variant: \"text\",\n color: \"primary\",\n \"data-cy\": \"add-component\",\n onClick: open,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: '1.3em',\n marginRight: 4\n }\n }), t('blocklet.component.add')]\n });\n }\n })]\n })\n })]\n }), components && components.length ? [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 2,\n ml: {\n xs: '-12px',\n md: '-24px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentItem, {\n blocklet: blocklet,\n onRemove: removeComponent,\n getComponentUrl: getComponentUrl\n }, \"0-\".concat(blocklet.meta.did))\n }, \"top-blocklet-\".concat(blocklet.meta.did))] : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 8,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('blocklet.component.noComponent')\n })\n }), !!blocklet.site.rules.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 0,\n ml: {\n xs: '-16px',\n md: '-28px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ruleList.default, {})\n }), !!updateConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n open: true,\n fullWidth: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n paddingY: 1.5,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogTitle.default, {\n children: updateConfirm.type === 'component' ? t('blocklet.component.updateTitle') : t('blocklet.component.updateAppTitle')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n component: _DialogContent.default,\n py: 4,\n ml: updateConfirm.type === 'component' ? 0 : 4,\n children: updateConfirm.list.map(x => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [updateConfirm.type === 'component' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Checkbox.default, {\n checked: updateConfirm.checks[x.groupId],\n onChange: e => onUpdateChecksChange(e, x.groupId),\n style: {\n marginLeft: x.disabled ? 16 : 0\n },\n defaultChecked: true,\n disabled: x.disabled\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n flexGrow: 1,\n mt: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n item: true,\n xs: 8,\n children: x.name\n }), x.version && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Grid.default, {\n fontSize: \"h6.fontSize\",\n container: true,\n spacing: 2,\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 3,\n children: x.version\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ArrowForward.default, {\n style: {\n fontSize: '0.9em'\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 3,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n color: \"secondary.main\",\n children: x.newVersion\n })\n })]\n })]\n }, \"\".concat(x.name, \"-\").concat(x.newVersion))]\n }))\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_DialogActions.default, {\n style: {\n padding: '8px 24px 24px'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: () => {\n setUpdateConfirm(null);\n },\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n onConfirmUpdate();\n },\n color: \"primary\",\n disabled: loading || updateConfirm.type === 'component' && !updateConfirm.hasChecks,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.update')]\n })]\n })]\n })\n })]\n }));\n}\nBlockletComponent.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n onUpdate: _propTypes.default.func,\n getComponentUrl: _propTypes.default.func\n};\nBlockletComponent.defaultProps = {\n onUpdate: () => {},\n getComponentUrl: () => window.location.origin\n};\nconst Div = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n .title {\\n font-size: 1.2rem;\\n font-weight: bold;\\n margin-bottom: \", \";\\n }\\n\\n @keyframes showDelay {\\n 0% {\\n opacity: 0;\\n }\\n\\n 100% {\\n opacity: 1;\\n }\\n }\\n\\n .component-item {\\n animation: showDelay 0.75s ease 1;\\n }\\n\"])), props => props.theme.spacing(1));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Line;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction Line(_ref) {\n let {\n depth\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: Math.max((depth - 1) * 2, 0),\n sx: {\n borderBottom: 1,\n borderColor: 'rgba(0,0,0,0.12)'\n }\n }, \"group-collapse-box\");\n}\nLine.propTypes = {\n depth: _propTypes.default.number\n};\nLine.defaultProps = {\n depth: 1\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _ahooks = require(\"ahooks\");\nvar _lodash = require(\"lodash\");\nvar _react = require(\"react\");\nvar _react2 = require(\"@iconify/react\");\nvar _material = require(\"@mui/material\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _simpleSelect = _interopRequireDefault(require(\"./simple-select\"));\nvar _locales = _interopRequireDefault(require(\"../../../util/locales\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n/* eslint-disable react/jsx-no-bind */\n\nconst defaultLocale = 'en';\nfunction LocaleTabs(_ref) {\n let {\n sx,\n onChange,\n locales,\n onRemoveLocale\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const inputRef = (0, _react.useRef)();\n const [addLocaleButtonEl, setAddLocaleButtonEl] = (0, _react.useState)(null);\n const state = (0, _ahooks.useReactive)({\n currentLocale: defaultLocale,\n localeList: [],\n inputLocale: '',\n localeError: ''\n });\n const openChooseLocale = (0, _react.useMemo)(() => {\n return !!addLocaleButtonEl;\n }, [addLocaleButtonEl]);\n const localeOptions = (0, _react.useMemo)(() => {\n return Object.keys((0, _lodash.omit)(_locales.default, [...state.localeList, defaultLocale])).map(locale => ({\n title: _locales.default[locale],\n value: locale\n }));\n }, [state.localeList]);\n (0, _react.useEffect)(() => {\n onChange(state.currentLocale);\n }, [onChange, state.currentLocale]);\n (0, _react.useEffect)(() => {\n state.localeList = [...locales];\n }, [locales, state]);\n (0, _ahooks.useKeyPress)('enter', () => {\n // HACK: 必须加一个延时,否则无法正确关闭 chooseLocale 弹窗\n setTimeout(() => {\n handleAddLocale();\n });\n }, {\n target: inputRef\n });\n function checkLocale(locale) {\n if (!locale) {\n return t('common.requiredErrorText', {\n name: 'Locale'\n });\n }\n if (locale === 'en' || state.localeList.includes(locale)) {\n return t('navigation.form.localeExists', {\n value: locale\n });\n }\n return true;\n }\n function checkValidLocale() {\n let locale = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n const value = locale === null || locale === void 0 ? void 0 : locale.trim();\n const checkResult = checkLocale(value);\n if (checkResult !== true) {\n state.localeError = checkResult;\n } else {\n state.localeError = '';\n }\n return checkResult;\n }\n function handleAddLocale() {\n var _state$inputLocale;\n const value = (_state$inputLocale = state.inputLocale) === null || _state$inputLocale === void 0 ? void 0 : _state$inputLocale.trim();\n const checkResult = checkValidLocale(value);\n if (checkResult === true) {\n close();\n state.localeList.push(value);\n state.currentLocale = value;\n }\n }\n function close() {\n setAddLocaleButtonEl(null);\n state.inputLocale = '';\n state.localeError = '';\n }\n function handleRemoveLocale(e, locale) {\n e.preventDefault();\n e.stopPropagation();\n state.localeList = (0, _lodash.without)(state.localeList, locale);\n onRemoveLocale(locale);\n if (locale === state.currentLocale) {\n state.currentLocale = defaultLocale;\n }\n }\n function handleChangeLocale(e) {\n const {\n value\n } = e.target;\n checkValidLocale(value);\n state.inputLocale = value;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Tabs, {\n sx: sx,\n value: state.currentLocale,\n onChange: (e, value) => {\n state.currentLocale = value;\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tab, {\n label: \"Default (\".concat(_locales.default[defaultLocale], \")\"),\n value: \"en\"\n }), state.localeList.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tab, {\n sx: {\n position: 'relative'\n },\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [_locales.default[item], /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n size: \"small\",\n color: \"inherit\",\n sx: {\n position: 'absolute',\n top: 0,\n right: 0\n },\n onClick: e => {\n handleRemoveLocale(e, item);\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"mdi:close\",\n height: 14\n })\n })]\n }),\n value: item\n }, item)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n color: \"primary\",\n disableFocusRipple: true,\n sx: {\n width: '48px'\n },\n onClick: e => {\n setAddLocaleButtonEl(e.currentTarget);\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"mdi:plus\"\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Popover, {\n open: openChooseLocale,\n anchorEl: addLocaleButtonEl,\n onClose: close,\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'left'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n sx: {\n p: 2,\n width: '270px'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"subtitle2\",\n children: t('navigation.form.localePlaceholder')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n mt: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_simpleSelect.default, {\n required: true,\n fullWidth: true,\n label: \"Locale\",\n value: state.inputLocale,\n options: localeOptions,\n onChange: handleChangeLocale,\n error: !!state.localeError,\n helperText: state.localeError || ' '\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n display: \"flex\",\n justifyContent: \"flex-end\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Button, {\n size: \"small\",\n variant: \"contained\",\n onClick: handleAddLocale,\n children: t('common.confirm')\n })\n })]\n })\n })]\n });\n}\nLocaleTabs.propTypes = {\n sx: _propTypes.default.any,\n onChange: _propTypes.default.func,\n onRemoveLocale: _propTypes.default.func,\n locales: _propTypes.default.array\n};\nLocaleTabs.defaultProps = {\n sx: null,\n onChange: () => {},\n onRemoveLocale: () => {},\n locales: []\n};\nvar _default = LocaleTabs;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _react = require(\"@iconify/react\");\nvar _material = require(\"@mui/material\");\nvar _react2 = require(\"react\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction NavigationActions(_ref) {\n let {\n className,\n add,\n edit,\n toggle,\n del,\n data,\n section\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const isDisabled = ['yaml', 'tmpl'].includes(data.from);\n const isUninstalled = /*#__PURE__*/(0, _react2.isValidElement)(data.subtitle);\n function handleClick(e) {\n e.preventDefault();\n e.stopPropagation();\n }\n const handleClickAdd = (0, _react2.useCallback)(e => {\n handleClick(e);\n add(data);\n }, [add, data]);\n const handleClickEdit = (0, _react2.useCallback)(e => {\n handleClick(e);\n edit(data);\n }, [edit, data]);\n const handleClickToggle = (0, _react2.useCallback)(e => {\n handleClick(e);\n toggle(data);\n }, [toggle, data]);\n const handleClickDelete = (0, _react2.useCallback)(e => {\n handleClick(e);\n del(data);\n }, [del, data]);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: className,\n children: [!data.parent && ['header', 'footer', 'dashboard'].includes(section) && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n title: isUninstalled ? t('navigation.action.noAddSub') : t('navigation.action.addSub'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n size: \"small\",\n color: \"success\",\n onClick: handleClickAdd,\n disabled: isUninstalled,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:plus-box-outline\"\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n title: isUninstalled ? t('navigation.action.noEdit') : t('navigation.action.edit'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n size: \"small\",\n color: \"primary\",\n onClick: handleClickEdit,\n disabled: isUninstalled,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:pencil\"\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n title:\n // eslint-disable-next-line no-nested-ternary\n isUninstalled ? t('navigation.action.noEdit') : data.visible ? t('navigation.action.hide') : t('navigation.action.show'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n size: \"small\",\n color: \"warning\",\n onClick: handleClickToggle,\n disabled: isUninstalled,\n children: data.visible === false ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:eye-off-outline\"\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:eye-outline\"\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n title: isDisabled && !isUninstalled ? t('navigation.action.noDel') : t('navigation.action.del'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n disabled: isDisabled && !isUninstalled,\n size: \"small\",\n color: \"error\",\n onClick: handleClickDelete,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:delete\"\n })\n })\n })]\n });\n}\nNavigationActions.propTypes = {\n data: _propTypes.default.object.isRequired,\n className: _propTypes.default.string,\n add: _propTypes.default.func,\n edit: _propTypes.default.func,\n toggle: _propTypes.default.func,\n del: _propTypes.default.func,\n section: _propTypes.default.string\n};\nNavigationActions.defaultProps = {\n className: '',\n add: () => {},\n edit: () => {},\n toggle: () => {},\n del: () => {},\n section: ''\n};\nvar _default = NavigationActions;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _material = require(\"@mui/material\");\nvar _ahooks = require(\"ahooks\");\nvar _omit = _interopRequireDefault(require(\"lodash/omit\"));\nvar _pick = _interopRequireDefault(require(\"lodash/pick\"));\nvar _values = _interopRequireDefault(require(\"lodash/values\"));\nvar _without = _interopRequireDefault(require(\"lodash/without\"));\nvar _isEmpty = _interopRequireDefault(require(\"lodash/isEmpty\"));\nvar _isString = _interopRequireDefault(require(\"lodash/isString\"));\nvar _isObject = _interopRequireDefault(require(\"lodash/isObject\"));\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _react = require(\"react\");\nvar _reactHookForm = require(\"react-hook-form\");\nvar _react2 = require(\"@iconify/react\");\nvar _notistack = require(\"notistack\");\nvar _parseNavigationFromBlocklet = require(\"@blocklet/meta/lib/parse-navigation-from-blocklet\");\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _index = require(\"ufo/dist/index.mjs\");\nvar _isAbsoluteUrl = _interopRequireDefault(require(\"is-absolute-url\"));\nvar _localeTabs = _interopRequireDefault(require(\"./locale-tabs\"));\nvar _simpleSelect = _interopRequireDefault(require(\"./simple-select\"));\nvar _team = require(\"../../../contexts/team\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst MAX_TITLE_LENGTH = 24;\nconst defaultType = 'add';\nconst defaultLocale = 'en';\nconst initialFormState = {\n title: {\n [defaultLocale]: ''\n },\n link: {\n [defaultLocale]: ''\n }\n};\nfunction IconSuffix(_ref) {\n let {\n icon\n } = _ref;\n const [loaded, setLoaded] = (0, _react.useState)(false);\n (0, _ahooks.useAsyncEffect)(async () => {\n setLoaded(false);\n await (0, _react2.loadIcon)(icon);\n setLoaded(true);\n }, [icon]);\n if (icon) {\n if (loaded) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: icon\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n color: \"#f06f6e\",\n icon: \"ic:baseline-error\"\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"codicon:blank\"\n });\n}\nIconSuffix.propTypes = {\n icon: _propTypes.default.string.isRequired\n};\nconst NavigationDialog = /*#__PURE__*/(0, _react.forwardRef)(function NavigationDialog(_ref2, ref) {\n let {\n section,\n components,\n rawNavigations\n } = _ref2;\n const {\n roles\n } = (0, _team.useTeamContext)();\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const saveFn = (0, _react.useRef)(() => {});\n const [show, {\n setFalse,\n setTrue\n }] = (0, _ahooks.useBoolean)(false);\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n const state = (0, _ahooks.useReactive)({\n isRoot: true,\n type: defaultType,\n linkDisabled: false,\n locale: defaultLocale,\n formState: (0, _cloneDeep.default)(initialFormState),\n get localeList() {\n // eslint-disable-next-line react/no-this-in-sfc\n return (0, _without.default)(Object.keys(this.formState.title), defaultLocale);\n }\n });\n const {\n handleSubmit,\n control,\n watch,\n setValue,\n clearErrors,\n formState: {\n errors\n }\n } = (0, _reactHookForm.useForm)({\n mode: 'onChange',\n defaultValues: {\n id: undefined,\n title: undefined,\n icon: undefined,\n link: undefined,\n component: undefined,\n parent: undefined,\n role: []\n }\n });\n (0, _react.useEffect)(() => {\n setValue('title', state.formState.title[state.locale]);\n setValue('link', state.formState.link[state.locale]);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [setValue, state.locale, show]);\n const watchComponent = watch('component');\n const watchTitle = watch('title');\n const watchLink = watch('link');\n const watchIcon = watch('icon');\n const watchParent = watch('parent');\n (0, _react.useEffect)(() => {\n state.formState.title[state.locale] = watchTitle;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [watchTitle]);\n (0, _react.useEffect)(() => {\n state.formState.link[state.locale] = watchLink;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [watchLink]);\n const selectedOption = (0, _react.useMemo)(() => {\n const parentData = rawNavigations.find(item => {\n if (watchComponent) {\n const findComponent = components.find(x => x.name === watchComponent);\n return findComponent.did === item.id;\n }\n return item.id === watchParent;\n });\n return parentData;\n }, [components, rawNavigations, watchComponent, watchParent]);\n const linkPrefix = (0, _react.useMemo)(() => {\n if (selectedOption !== null && selectedOption !== void 0 && selectedOption.component) {\n const findComponent = components.find(item => item.name === selectedOption.component);\n const {\n link\n } = findComponent || {};\n const stringLink = (0, _isObject.default)(link) ? link[state.locale] : link;\n if (watchComponent) {\n return (0, _index.withoutTrailingSlash)(stringLink);\n }\n const selectedLink = (0, _isObject.default)(selectedOption.link) ? selectedOption.link[state.locale] : selectedOption.link;\n return (0, _index.withoutTrailingSlash)((0, _urlJoin.default)(stringLink, selectedLink || '/'));\n }\n return null;\n }, [components, state.locale, selectedOption, watchComponent]);\n const autocompleteOptions = (0, _react.useMemo)(() => {\n const {\n component\n } = selectedOption || {};\n const componentBlocklet = components.find(item => item.name === component);\n const {\n navigation = []\n } = componentBlocklet || {};\n const flatternedNavigation = (0, _parseNavigationFromBlocklet.flatternNavigation)(navigation, {\n transform(item, parent) {\n if (parent !== null && parent !== void 0 && parent.section) {\n item.section = item.section || parent.section;\n }\n return item;\n }\n });\n return flatternedNavigation.filter(item => item.link)\n // 在指定 section 下只展示能够展示的 navigation\n .filter(item => (0, _parseNavigationFromBlocklet.isMatchSection)(item.section, section)).map(item => {\n return {\n label: item.link,\n title: item.title[locale] || item.title\n };\n });\n }, [selectedOption, components, section, locale]);\n const name = (0, _react.useMemo)(() => {\n const typeMap = {\n add: t('common.create'),\n edit: t('common.edit')\n };\n const typeName = typeMap[state.type];\n if (typeName) {\n return \"\".concat(typeName, \" \").concat(t('navigation.navigation'));\n }\n return '--';\n }, [state.type, t]);\n const reset = (0, _react.useCallback)(() => {\n state.type = defaultType;\n state.linkDisabled = false;\n saveFn.current = () => {};\n setValue('id', undefined);\n setValue('icon', undefined);\n setValue('title', undefined);\n setValue('link', undefined);\n setValue('component', undefined);\n setValue('parent', undefined);\n setValue('role', []);\n state.formState = (0, _cloneDeep.default)(initialFormState);\n clearErrors();\n }, [clearErrors, setValue, state]);\n const patchFormValues = (0, _react.useCallback)(function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (state.localeList.length > 0) {\n if (new Set((0, _values.default)(state.formState.title)).size > 1) {\n params.title = state.formState.title;\n }\n if (new Set((0, _values.default)(state.formState.link)).size > 1) {\n params.link = state.formState.link;\n }\n }\n if ((0, _isEmpty.default)(params.role)) {\n params.role = undefined;\n }\n return params;\n }, [state.formState.link, state.formState.title, state.localeList]);\n const close = (0, _react.useCallback)(() => {\n setFalse();\n setTimeout(() => {\n reset();\n });\n }, [reset, setFalse]);\n const add = (0, _react.useCallback)(function () {\n let {\n parent\n } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n let cb = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : () => {};\n state.type = 'add';\n state.isRoot = !parent;\n setValue('parent', parent === null || parent === void 0 ? void 0 : parent.id);\n saveFn.current = params => {\n cb(close, params);\n };\n setTrue();\n }, [close, setTrue, setValue, state]);\n const edit = (0, _react.useCallback)(function () {\n let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n let cb = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : () => {};\n const {\n id,\n title,\n icon,\n link,\n parent,\n component,\n role = []\n } = data;\n setValue('id', id);\n setValue('icon', icon);\n if (data.from === 'tmpl') {\n state.linkDisabled = true;\n }\n if ((0, _isString.default)(title)) {\n state.formState.title = state.localeList.reduce((resData, localeItem) => {\n resData[localeItem] = title;\n return resData;\n }, {\n [defaultLocale]: title\n });\n } else if ((0, _isObject.default)(title)) {\n state.formState.title = (0, _cloneDeep.default)(title);\n } else {\n state.formState.title = {};\n }\n if ((0, _isString.default)(link)) {\n state.formState.link = state.localeList.reduce((resData, localeItem) => {\n resData[localeItem] = link;\n return resData;\n }, {\n [defaultLocale]: link\n });\n } else if ((0, _isObject.default)(link)) {\n state.formState.link = (0, _cloneDeep.default)(link);\n } else {\n state.formState.link = {};\n }\n setValue('component', component);\n setValue('parent', parent);\n setValue('role', role || []);\n setTrue();\n state.type = 'edit';\n state.isRoot = !parent;\n saveFn.current = params => {\n const pickData = (0, _pick.default)(params, ['id', 'title', 'icon', 'link', 'role']);\n cb(close, pickData);\n };\n }, [close, setTrue, setValue, state]);\n (0, _react.useImperativeHandle)(ref, () => {\n return {\n add,\n edit,\n close\n };\n }, [add, close, edit]);\n function validTitle(raw) {\n const value = raw === null || raw === void 0 ? void 0 : raw.trim();\n if (!value) return t('common.requiredErrorText', {\n name: t('navigation.form.title')\n });\n if (value.length > MAX_TITLE_LENGTH) return t('navigation.form.titleTooLong', {\n len: MAX_TITLE_LENGTH\n });\n return true;\n }\n async function validIcon(raw) {\n const value = raw === null || raw === void 0 ? void 0 : raw.trim();\n if (value) {\n try {\n await (0, _react2.loadIcon)(value);\n } catch (_unused) {\n return t('navigation.form.invalidIcon');\n }\n }\n return true;\n }\n function validLink(raw) {\n const value = raw === null || raw === void 0 ? void 0 : raw.trim();\n if (!value) {\n if (!state.isRoot) {\n return t('common.requiredErrorText', {\n name: t('navigation.form.link')\n });\n }\n return true;\n }\n if (!(0, _parseNavigationFromBlocklet.checkLink)(value)) {\n return t('navigation.form.invalidLink');\n }\n return true;\n }\n const handleChangeLocale = (0, _react.useCallback)(currentLocale => {\n state.locale = currentLocale;\n if (!state.formState.title[currentLocale]) {\n state.formState.title[currentLocale] = '';\n }\n if (!state.formState.link[currentLocale]) {\n state.formState.link[currentLocale] = '';\n }\n setTimeout(() => {\n clearErrors();\n });\n }, [clearErrors, state]);\n const checkFormState = (0, _react.useCallback)(() => {\n const {\n title,\n link\n } = state.formState;\n for (const key of Object.keys(title)) {\n const validRes = validTitle(title[key]);\n if (validRes !== true) {\n return validRes;\n }\n }\n for (const key of Object.keys(link)) {\n const validRes = validLink(link[key]);\n if (validRes !== true) {\n return validRes;\n }\n }\n return true;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [state.formState]);\n const handleFormSubmit = (0, _react.useCallback)(params => {\n const checkRes = checkFormState();\n if (checkRes === true) {\n saveFn.current(patchFormValues(params));\n } else {\n enqueueSnackbar(checkRes, {\n variant: 'error'\n });\n }\n }, [checkFormState, enqueueSnackbar, patchFormValues]);\n const handleRemoveLocale = (0, _react.useCallback)(currentLocale => {\n state.formState.title = (0, _omit.default)(state.formState.title, currentLocale);\n state.formState.link = (0, _omit.default)(state.formState.link, currentLocale);\n }, [state.formState]);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n open: show,\n title: name,\n onClose: close,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: handleSubmit(handleFormSubmit),\n color: \"primary\",\n autoFocus: true,\n variant: \"contained\",\n children: t('common.confirm')\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_localeTabs.default, {\n sx: {\n mb: 1\n },\n onChange: handleChangeLocale,\n onRemoveLocale: handleRemoveLocale,\n locales: state.localeList\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"form\", {\n noValidate: true,\n autoComplete: \"off\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"title\",\n control: control,\n rules: {\n validate: validTitle\n },\n render: _ref3 => {\n var _errors$title, _errors$title2;\n let {\n field\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TextField, _objectSpread({\n fullWidth: true,\n variant: \"outlined\",\n margin: \"dense\",\n required: true,\n placeholder: t('navigation.form.titlePlaceholder'),\n label: t('navigation.form.title'),\n disabled: state.isEdit,\n error: !!(errors !== null && errors !== void 0 && (_errors$title = errors.title) !== null && _errors$title !== void 0 && _errors$title.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$title2 = errors.title) === null || _errors$title2 === void 0 ? void 0 : _errors$title2.message) || ' '\n }, field));\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"icon\",\n control: control,\n rules: {\n validate: validIcon\n },\n render: _ref4 => {\n var _errors$icon, _errors$icon2;\n let {\n field\n } = _ref4;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TextField, _objectSpread(_objectSpread({\n fullWidth: true,\n variant: \"outlined\",\n margin: \"dense\",\n placeholder: t('navigation.form.iconPlaceholder'),\n label: t('navigation.form.icon'),\n error: !!(errors !== null && errors !== void 0 && (_errors$icon = errors.icon) !== null && _errors$icon !== void 0 && _errors$icon.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$icon2 = errors.icon) === null || _errors$icon2 === void 0 ? void 0 : _errors$icon2.message) || /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n display: \"flex\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n component: \"a\",\n href: \"https://icones.js.org\",\n target: \"_blank\",\n display: \"flex\",\n alignItems: \"center\",\n children: [t('navigation.form.findMoreIcon'), ' ', /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n style: {\n marginLeft: 4\n },\n icon: \"radix-icons:external-link\"\n })]\n })\n })\n }, field), {}, {\n InputProps: {\n endAdornment: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.InputAdornment, {\n position: \"end\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n sx: {\n cursor: 'default'\n },\n disableFocusRipple: true,\n disableRipple: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(IconSuffix, {\n icon: watchIcon\n })\n })\n })\n }\n }));\n }\n }), state.isRoot && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"component\",\n control: control,\n render: _ref5 => {\n var _errors$component, _errors$component2;\n let {\n field\n } = _ref5;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_simpleSelect.default, _objectSpread({\n fullWidth: true,\n margin: \"dense\",\n disabled: state.type === 'edit',\n label: t('navigation.form.component'),\n placeholer: t('navigation.form.componentPlaceholder'),\n options: components.map(item => ({\n title: item.title,\n value: item.name,\n description: item.link\n })),\n error: !!(errors !== null && errors !== void 0 && (_errors$component = errors.component) !== null && _errors$component !== void 0 && _errors$component.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$component2 = errors.component) === null || _errors$component2 === void 0 ? void 0 : _errors$component2.message) || ' '\n }, field));\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"link\",\n control: control,\n rules: {\n validate: validLink\n },\n render: _ref6 => {\n var _errors$link3, _errors$link4;\n let {\n field\n } = _ref6;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.FormControl, {\n fullWidth: true,\n margin: \"dense\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Autocomplete, _objectSpread(_objectSpread({\n disablePortal: true,\n freeSolo: true,\n blurOnSelect: true,\n autoSelect: true,\n fullWidth: true,\n disabled: state.linkDisabled,\n isOptionEqualToValue: option => option.label,\n options: autocompleteOptions,\n renderInput: params => {\n var _errors$link, _errors$link2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TextField, _objectSpread(_objectSpread({}, params), {}, {\n placeholder: t('navigation.form.linkPlaceholder'),\n label: t('navigation.form.link'),\n error: !!(errors !== null && errors !== void 0 && (_errors$link = errors.link) !== null && _errors$link !== void 0 && _errors$link.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$link2 = errors.link) === null || _errors$link2 === void 0 ? void 0 : _errors$link2.message) || '/abc/bcd or /abc or https://arcblock.io'\n // FIXME: 添加了 startAdornment 后,autocomplete 选项无法显示,之后换成 antd 的 autocomplete 可以解决这个问题\n ,\n InputProps: {\n startAdornment: linkPrefix ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.InputAdornment, {\n position: \"start\",\n sx: {\n textDecoration: (0, _isAbsoluteUrl.default)(watchLink || '') ? 'line-through' : ''\n },\n children: linkPrefix\n }) : null\n }\n }));\n },\n renderOption: (props, option) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, _objectSpread(_objectSpread({\n component: \"li\"\n }, props), {}, {\n children: [option.label, /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n marginLeft: 1,\n component: \"span\",\n variant: \"body2\",\n color: \"text.secondary\",\n children: option.title\n })]\n })),\n error: !!(errors !== null && errors !== void 0 && (_errors$link3 = errors.link) !== null && _errors$link3 !== void 0 && _errors$link3.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$link4 = errors.link) === null || _errors$link4 === void 0 ? void 0 : _errors$link4.message) || ' ',\n margin: \"dense\"\n }, field), {}, {\n onChange: () => {},\n onInputChange: (e, value) => {\n field.onChange(value);\n }\n }))\n });\n }\n }), ['dashboard', 'sessionManager'].includes(section) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"role\",\n control: control,\n render: _ref7 => {\n var _errors$role, _errors$role2;\n let {\n field\n } = _ref7;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_simpleSelect.default, _objectSpread({\n fullWidth: true,\n multiple: true,\n margin: \"dense\",\n label: t('navigation.form.role'),\n placeholer: t('navigation.form.rolePlaceholder'),\n options: roles.map(role => ({\n title: role.title,\n value: role.name\n })),\n error: !!(errors !== null && errors !== void 0 && (_errors$role = errors.role) !== null && _errors$role !== void 0 && _errors$role.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$role2 = errors.role) === null || _errors$role2 === void 0 ? void 0 : _errors$role2.message) || ' '\n }, field));\n }\n })]\n })]\n });\n});\nNavigationDialog.propTypes = {\n section: _propTypes.default.string,\n components: _propTypes.default.array,\n rawNavigations: _propTypes.default.array\n};\nNavigationDialog.defaultProps = {\n section: '',\n components: [],\n rawNavigations: []\n};\nvar _default = NavigationDialog;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Header = _interopRequireDefault(require(\"@blocklet/ui-react/lib/Header\"));\nvar _Footer = _interopRequireDefault(require(\"@blocklet/ui-react/lib/Footer\"));\nvar _Dashboard = _interopRequireDefault(require(\"@blocklet/ui-react/lib/Dashboard\"));\nvar _linkBlocker = _interopRequireDefault(require(\"@blocklet/ui-react/lib/common/link-blocker\"));\nvar _material = require(\"@mui/material\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _blocklet = require(\"../../../contexts/blocklet\");\nvar _useAppLogo = _interopRequireDefault(require(\"../../../hooks/use-app-logo\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction NavigationPreview(_ref) {\n let {\n className,\n navigation\n } = _ref;\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const {\n logoUrl\n } = (0, _useAppLogo.default)({\n blocklet\n });\n const blockletInfo = {\n appId: blocklet.appDid,\n appLogo: logoUrl,\n appName: blocklet.meta.title,\n enableConnect: true,\n enableLocale: false,\n navigation\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_linkBlocker.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n className: className,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Header.default, {\n meta: blockletInfo\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dashboard.default, {\n meta: blockletInfo,\n invalidPathFallback: () => {},\n headerProps: {\n style: {\n display: 'none'\n }\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Grid, {\n container: true,\n spacing: 2,\n children: new Array(6).fill().map((item, index) => {\n return (\n /*#__PURE__*/\n // eslint-disable-next-line react/no-array-index-key\n (0, _jsxRuntime.jsxs)(_material.Grid, {\n item: true,\n xs: 4,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Skeleton, {\n animation: false,\n variant: \"rectangular\",\n width: \"100%\",\n height: 120\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n sx: {\n pt: 0.5\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Skeleton, {\n animation: false\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Skeleton, {\n width: \"60%\",\n animation: false\n })]\n })]\n }, index)\n );\n })\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Footer.default, {\n meta: blockletInfo\n })]\n })\n });\n}\nNavigationPreview.propTypes = {\n className: _propTypes.default.string,\n navigation: _propTypes.default.array\n};\nNavigationPreview.defaultProps = {\n className: '',\n navigation: []\n};\nconst StyledNavigationPreview = (0, _styled.default)(NavigationPreview)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .dashboard {\\n height: auto !important;\\n }\\n .dashboard-content + div {\\n display: none;\\n }\\n\"])));\nvar _default = StyledNavigationPreview;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _material = require(\"@mui/material\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"fullWidth\", \"multiple\", \"required\", \"label\", \"placeholer\", \"options\", \"helperText\", \"error\", \"margin\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction SimpleSelect(_ref) {\n let {\n fullWidth,\n multiple,\n required,\n label,\n placeholer,\n options,\n helperText,\n error,\n margin\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const defaultOption = options.find(item => item.value === rest.value);\n const defaultValue = defaultOption === null || defaultOption === void 0 ? void 0 : defaultOption.title;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.FormControl, {\n margin: margin,\n fullWidth: fullWidth,\n error: error,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.InputLabel, {\n children: \"\".concat(label).concat(required ? '*' : '')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Select, _objectSpread(_objectSpread({\n multiple: multiple,\n input: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.OutlinedInput, {\n defaultValue: defaultValue,\n sx: {\n flex: 1\n },\n required: required,\n label: label,\n inputProps: {\n margin\n }\n }),\n renderValue: selected => {\n if (multiple) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n sx: {\n display: 'flex',\n flexWrap: 'wrap',\n gap: 0.5\n },\n children: selected.map(value => {\n const option = options.find(item => item.value === value);\n return option && option.title && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Chip, {\n size: \"small\",\n label: option.title\n }, value);\n })\n });\n }\n const option = options.find(item => item.value === selected);\n return option && option.title && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n component: \"span\",\n children: option.title\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n marginLeft: 1,\n component: \"span\",\n variant: \"body2\",\n color: \"text.secondary\",\n children: option.description\n })]\n });\n }\n }, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.MenuItem, {\n disabled: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"em\", {\n children: placeholer\n })\n }), !multiple && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.MenuItem, {\n value: \"\",\n children: \"None\"\n }), options.map(option => option && option.value && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {\n value: option.value,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.ListItemText, {\n children: option.title\n }), option.description && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n children: option.description\n })]\n }, option.value))]\n })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.FormHelperText, {\n children: helperText\n })]\n });\n}\nSimpleSelect.propTypes = {\n error: _propTypes.default.bool,\n required: _propTypes.default.bool,\n multiple: _propTypes.default.bool,\n fullWidth: _propTypes.default.bool,\n label: _propTypes.default.string,\n placeholer: _propTypes.default.string,\n options: _propTypes.default.array,\n helperText: _propTypes.default.string,\n margin: _propTypes.default.string\n};\nSimpleSelect.defaultProps = {\n error: false,\n required: false,\n multiple: false,\n fullWidth: false,\n label: '',\n placeholer: '',\n options: [],\n helperText: '',\n margin: ''\n};\nvar _default = SimpleSelect;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = SelectStore;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _ArrowDropDown = _interopRequireDefault(require(\"@mui/icons-material/ArrowDropDown\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _useLocalStorage = _interopRequireDefault(require(\"react-use/lib/useLocalStorage\"));\nvar _constants = require(\"../../util/constants\");\nvar _node = require(\"../../contexts/node\");\nvar _blocklet = require(\"../../contexts/blocklet\");\nvar _add = _interopRequireDefault(require(\"../../store/add\"));\nvar _item = _interopRequireDefault(require(\"../../store/item\"));\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction SelectStore(_ref) {\n let {\n onChange: _onChange,\n loading,\n children,\n extra\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n info: nodeInfo,\n inService\n } = (0, _node.useNodeContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const [open, setOpen] = (0, _react.useState)(false);\n const storeSelectRef = (0, _react.useRef)(null);\n const storageKey = inService ? _constants.STORAGE_KEY_STORE_BLOCKLET : _constants.STORAGE_KEY_STORE_SERVER;\n const [storeUrl, setStoreUrl] = (0, _useLocalStorage.default)(storageKey);\n const {\n storeList,\n teamDid\n } = (0, _util.getStoreList)({\n fromBlocklet: inService,\n blocklet,\n nodeInfo\n });\n const currentRegistry = storeUrl && storeList.find(x => storeUrl === x.url) || storeList[0];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(SelectStoreTitle, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n ref: storeSelectRef,\n color: \"secondary\",\n \"data-cy\": \"add-component-select-store\",\n endIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ArrowDropDown.default, {\n color: \"secondary\"\n }),\n onClick: () => {\n setOpen(true);\n },\n style: {\n padding: '0 2px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n color: \"secondary\",\n children: currentRegistry.name\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n color: \"secondary\",\n children: extra\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_TextField.default, {\n id: \"mui-registry-select\",\n select: true,\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"did\",\n helperText: t('blocklet.component.selectRegistryTip'),\n \"data-cy\": \"component-registry-select\",\n fullWidth: true,\n value: currentRegistry,\n autoFocus: true,\n onChange: e => {\n const newRegistry = e.target.value;\n setStoreUrl(newRegistry.url);\n _onChange(newRegistry);\n },\n SelectProps: {\n open,\n MenuProps: {\n anchorEl: storeSelectRef.current\n },\n renderValue: item => {\n return item === null || item === void 0 ? void 0 : item.name;\n },\n onClose: () => {\n setOpen(false);\n }\n },\n style: {\n display: 'none'\n },\n margin: \"normal\",\n children: [storeList === null || storeList === void 0 ? void 0 : storeList.map(x => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: x,\n \"data-cy\": x.url,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.default, {\n teamDid: teamDid,\n store: x,\n onDelete: () => {\n if (storeUrl === x.url) {\n var _storeList$;\n setStoreUrl((_storeList$ = storeList[0]) === null || _storeList$ === void 0 ? void 0 : _storeList$.url);\n }\n }\n })\n }, x.url);\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_add.default, {\n disabled: loading,\n storeList: storeList,\n teamDid: teamDid,\n onAdd: url => {\n setStoreUrl(url);\n }\n })]\n }), children({\n currentRegistry\n })]\n });\n}\nSelectStore.propTypes = {\n onChange: _propTypes.default.func,\n loading: _propTypes.default.bool,\n children: _propTypes.default.any.isRequired,\n extra: _propTypes.default.node\n};\nSelectStore.defaultProps = {\n onChange: () => {},\n loading: false,\n extra: ''\n};\nconst SelectStoreTitle = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 16px;\\n\\n span {\\n font-size: 16px;\\n color: \", \";\\n // font-weight: bold;\\n }\\n\"])), props => props.theme.palette.common.black);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ComponentSettingWithPermission;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _formTextInput = _interopRequireDefault(require(\"../../form/form-text-input\"));\nvar _node = require(\"../../contexts/node\");\nvar _permission = require(\"../../permission\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"ancestors\", \"hasPermission\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ComponentSetting(_ref) {\n let {\n blocklet,\n ancestors,\n hasPermission\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const isRoot = !ancestors.length;\n const isDynamic = blocklet.dynamic;\n const rootDid = isRoot ? blocklet.meta.did : ancestors.map(x => x.meta.did)[0];\n const [loading, setLoading] = (0, _react.useState)('');\n const isDev = (0, _util.isBlockletDev)(blocklet);\n const disabled = isDev || loading || !hasPermission;\n if (!rootDid) {\n return null;\n }\n if (blocklet.status === 'unknown' && (0, _util.isInstalling)(blocklet.status)) {\n return null;\n }\n const onSubmitTitle = async value => {\n setLoading(true);\n try {\n setLoading(false);\n await api.updateComponentTitle({\n input: {\n rootDid,\n did: blocklet.meta.did,\n title: value\n }\n });\n } catch (err) {\n setLoading(false);\n err.message = (0, _util.formatError)(err);\n _toast.default.error(err.message);\n throw err;\n }\n };\n const onSubmitMountPoint = async value => {\n setLoading(true);\n try {\n const input = {\n rootDid,\n mountPoint: value\n };\n if (!isRoot) {\n input.did = blocklet.meta.did;\n }\n await api.updateComponentMountPoint({\n input\n });\n setLoading(false);\n } catch (err) {\n setLoading(false);\n err.message = (0, _util.formatError)(err);\n _toast.default.error(err.message);\n throw err;\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: 3,\n children: [isDynamic && /*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n label: t('common.title'),\n style: {\n marginTop: -24\n },\n disabled: loading || disabled,\n loading: loading,\n required: true,\n initialValue: blocklet.meta.title,\n onSubmit: onSubmitTitle\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n label: t('blocklet.component.mountPoint'),\n style: {\n marginTop: -24\n },\n disabled: loading || disabled,\n loading: loading,\n required: true,\n initialValue: blocklet.mountPoint,\n onSubmit: onSubmitMountPoint\n })]\n })\n }));\n}\nconst ComponentSettingInDaemon = (0, _permission.withPermission)(ComponentSetting, 'mutate_blocklets');\nconst ComponentSettingInService = (0, _permission.withPermission)(ComponentSetting, '', _util.BlockletAdminRoles);\nfunction ComponentSettingWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentSettingInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentSettingInDaemon, _objectSpread({}, props));\n}\nComponentSetting.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n hasPermission: _propTypes.default.bool\n};\nComponentSetting.defaultProps = {\n ancestors: [],\n hasPermission: false\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _reactSortableTree = require(\"react-sortable-tree\");\nvar _reactSortableTreeThemeMaterialUi = _interopRequireDefault(require(\"react-sortable-tree-theme-material-ui\"));\nvar _react2 = require(\"@iconify/react\");\nvar _isObject = _interopRequireDefault(require(\"lodash/isObject\"));\nvar _isEqual = _interopRequireDefault(require(\"lodash/isEqual\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _material = require(\"@mui/material\");\nvar _reactDndHtml5Backend = require(\"react-dnd-html5-backend\");\nvar _reactDnd = require(\"react-dnd\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction checkCanDrop(_ref) {\n let {\n prevPath,\n nextPath\n } = _ref;\n const prevLen = prevPath.length;\n const nextLen = nextPath.length;\n if (prevLen === nextLen) {\n if ((0, _isEqual.default)(prevPath.slice(0, prevLen - 1), nextPath.slice(0, nextLen - 1))) {\n return true;\n }\n }\n return false;\n}\nfunction TreeTitle(_ref2) {\n let {\n treeNode\n } = _ref2;\n const {\n locale\n } = (0, _context.useLocaleContext)();\n function renderTitle() {\n const {\n title,\n subtitle\n } = treeNode;\n let titleShow = title;\n let subtitleShow = subtitle;\n if ((0, _isObject.default)(title)) {\n titleShow = title[locale];\n }\n if (! /*#__PURE__*/(0, _react.isValidElement)(subtitle) && (0, _isObject.default)(subtitle)) {\n subtitleShow = subtitle[locale];\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"subtitle1\",\n fontSize: 16,\n children: titleShow\n }), subtitle && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"body2\",\n color: \"gray\",\n ml: 1.5,\n children: subtitleShow\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [treeNode.icon && /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n style: {\n marginRight: 4\n },\n icon: treeNode.icon\n }), renderTitle()]\n });\n}\nTreeTitle.propTypes = {\n treeNode: _propTypes.default.object.isRequired\n};\nfunction SortableTree(_ref3) {\n let {\n treeData,\n setTreeData,\n renderActions\n } = _ref3;\n const expandedData = treeData.map(item => _objectSpread(_objectSpread({}, item), {}, {\n expanded: true\n }));\n\n // HACK: 兼容 mui-datatables 中的 react-dnd 使用\n const dndProps = {};\n if (typeof window !== 'undefined') {\n dndProps.context = window;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactDnd.DndProvider, _objectSpread(_objectSpread({\n backend: _reactDndHtml5Backend.HTML5Backend\n }, dndProps), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactSortableTree.SortableTreeWithoutDndContext, {\n generateNodeProps: rowInfo => {\n return {\n buttons: renderActions({\n data: rowInfo.node,\n className: 'list-item-actions'\n }),\n icons: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"ic:round-drag-indicator\"\n }),\n title: /*#__PURE__*/(0, _jsxRuntime.jsx)(TreeTitle, {\n treeNode: rowInfo.node\n })\n };\n },\n maxDepth: 2,\n isVirtualized: false,\n treeData: expandedData,\n onChange: setTreeData,\n canDrop: checkCanDrop,\n theme: _reactSortableTreeThemeMaterialUi.default\n })\n }));\n}\nSortableTree.propTypes = {\n treeData: _propTypes.default.object.isRequired,\n setTreeData: _propTypes.default.func,\n renderActions: _propTypes.default.func\n};\nSortableTree.defaultProps = {\n setTreeData: () => {},\n renderActions: () => {}\n};\nvar _default = SortableTree;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletList;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _ErrorBoundary = require(\"@arcblock/ux/lib/ErrorBoundary\");\nvar _reactErrorBoundary = require(\"react-error-boundary\");\nvar _list = _interopRequireDefault(require(\"@blocklet/list\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Blocklet = _interopRequireWildcard(require(\"@arcblock/ux/lib/Blocklet\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _util2 = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"handleButtonClick\", \"handleSearchSelect\", \"storeUrl\", \"handleBlockletRender\", \"extraFilter\"];\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nconst getStoreDetail = (meta, endpoint) => {\n return (0, _urlJoin.default)(endpoint, \"/blocklets/\".concat(meta.did));\n};\nconst displayAttributes = _ref => {\n let {\n blocklet,\n attribute,\n value\n } = _ref;\n if (blocklet._formatted) {\n return blocklet._formatted[attribute];\n }\n return value;\n};\nconst requirePurchase = meta => meta.inStore && (0, _util.isFreeBlocklet)(meta) === false;\nfunction BlockletItem(_ref2) {\n let {\n blocklet,\n blocklets,\n handleButtonClick,\n endpoint\n } = _ref2;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const logoUrl = (0, _urlJoin.default)(endpoint, (0, _util2.formatRegistryLogoPath)(blocklet.did, blocklet.logo || ''));\n const [loading, setLoading] = (0, _react.useState)(false);\n const onClickLink = e => {\n if (!e.currentTarget.contains(e.target)) {\n e.preventDefault();\n return false;\n }\n return true;\n };\n const btnTxt = requirePurchase(blocklet) ? t('common.purchase') : t('blocklet.component.choose');\n const onAction = async e => {\n e.preventDefault();\n e.stopPropagation();\n try {\n setLoading(true);\n await handleButtonClick({\n meta: blocklet,\n registryUrl: endpoint,\n blocklets\n });\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n href: getStoreDetail(blocklet, endpoint),\n style: {\n color: 'initial',\n textDecoration: 'none'\n },\n onClick: onClickLink,\n target: \"_blank\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledBlocklet, {\n title: displayAttributes({\n blocklet,\n attribute: 'title',\n value: blocklet.title || blocklet.name\n }),\n did: blocklet.did,\n description: displayAttributes({\n blocklet,\n attribute: 'description',\n value: blocklet.description\n }),\n cover: blocklet.logo ? logoUrl : '',\n version: blocklet.version,\n button: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n display: 'flex',\n alignItems: 'center'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Blocklet.ActionButton, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onAction,\n size: \"small\",\n disabled: loading,\n variant: \"outlined\",\n color: \"primary\",\n \"data-cy\": \"install-blocklet\",\n children: loading ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10],\n style: {\n marginRight: 3\n }\n }), btnTxt]\n }) : btnTxt\n }, blocklet.did)\n })\n })\n })\n });\n}\nBlockletItem.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n blocklets: _propTypes.default.array,\n handleButtonClick: _propTypes.default.func,\n endpoint: _propTypes.default.string\n};\nBlockletItem.defaultProps = {\n handleButtonClick: null,\n endpoint: '',\n blocklets: []\n};\nfunction BlockletList(_ref3) {\n let {\n handleButtonClick,\n handleSearchSelect,\n storeUrl,\n handleBlockletRender,\n extraFilter\n } = _ref3,\n rest = _objectWithoutProperties(_ref3, _excluded);\n const {\n locale\n } = (0, _context.useLocaleContext)();\n const [filters, setFilters] = (0, _react.useState)({});\n const handleChange = changeData => {\n setFilters(changeData);\n };\n const endpoint = storeUrl;\n (0, _react.useEffect)(() => {\n setFilters({});\n }, [endpoint]);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactErrorBoundary.ErrorBoundary, {\n FallbackComponent: _ErrorBoundary.ErrorFallback,\n resetKeys: [endpoint],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", _objectSpread(_objectSpread({}, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_list.default, {\n blockletRender: blockletRenderProps => {\n const defaultProps = _objectSpread(_objectSpread({}, blockletRenderProps), {}, {\n handleButtonClick,\n endpoint\n });\n return handleBlockletRender(_objectSpread(_objectSpread({}, blockletRenderProps), {}, {\n defaultRender: /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletItem, _objectSpread({}, defaultProps))\n }));\n },\n baseSearch: true,\n endpoint: endpoint,\n locale: locale,\n onFilterChange: handleChange,\n onSearchSelect: handleSearchSelect,\n filters: filters,\n extraFilter: extraFilter\n })\n }))\n });\n}\nBlockletList.propTypes = {\n storeUrl: _propTypes.default.string.isRequired,\n handleButtonClick: _propTypes.default.func,\n handleSearchSelect: _propTypes.default.func,\n handleBlockletRender: _propTypes.default.func,\n extraFilter: _propTypes.default.func\n};\nBlockletList.defaultProps = {\n handleButtonClick: null,\n handleSearchSelect: null,\n handleBlockletRender: null,\n extraFilter: undefined\n};\nconst StyledBlocklet = (0, _styled.default)(_Blocklet.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .ms-highlight {\\n color: \", \";\\n }\\n\"])), props => props.theme.palette.primary.main);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _material = require(\"@mui/material\");\nvar _lab = require(\"@mui/lab\");\nvar _react2 = require(\"@iconify/react\");\nvar _notistack = require(\"notistack\");\nvar _ahooks = require(\"ahooks\");\nvar _Dialog = require(\"@arcblock/ux/lib/Dialog\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Session = require(\"@arcblock/did-connect/lib/Session\");\nvar _sortableTree = _interopRequireDefault(require(\"./component/sortable-tree\"));\nvar _navigationDialog = _interopRequireDefault(require(\"./component/navigation/navigation-dialog\"));\nvar _navigationActions = _interopRequireDefault(require(\"./component/navigation/navigation-actions\"));\nvar _useNavigation = _interopRequireDefault(require(\"../hooks/use-navigation\"));\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _navigationPreview = _interopRequireDefault(require(\"./component/navigation/navigation-preview\"));\nvar _team = require(\"../contexts/team\");\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst mockSession = {\n login: () => {},\n logout: () => {},\n switch: () => {},\n switchDid: () => {},\n switchProfile: () => {},\n switchPassport: () => {}\n};\nconst navigationTypeMap = {\n header: 'Header',\n footer: 'Footer',\n bottom: 'Footer Link',\n social: 'Footer Social',\n dashboard: 'Dashboard',\n sessionManager: 'SessionManager'\n};\nfunction ConfigNavigation() {\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const refNavigationDialog = (0, _react.useRef)(null);\n const {\n roles\n } = (0, _team.useTeamContext)();\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n const pageState = (0, _ahooks.useReactive)({\n saveLoading: false,\n resetLoading: false,\n showResetConfirm: false,\n mockRole: 'owner'\n });\n const {\n state: navigationState,\n navigation,\n getNavigation,\n saveNavigationList,\n resetNavigation,\n updateActiveSection,\n updateNavigationTree,\n updateNavigationItem,\n delNavigationItem,\n addNavigationItem\n } = (0, _useNavigation.default)();\n const handleAddNavigation = (0, _react.useCallback)(params => {\n refNavigationDialog.current.add({\n parent: params\n }, (close, data) => {\n addNavigationItem(data);\n close();\n });\n }, [addNavigationItem]);\n const handleEditNavigation = (0, _react.useCallback)(function (type) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n switch (type) {\n case 'edit':\n refNavigationDialog.current.edit(params, (close, data) => {\n updateNavigationItem(data);\n close();\n });\n break;\n case 'toggle':\n updateNavigationItem({\n id: params.id,\n visible: !params.visible\n });\n break;\n case 'del':\n delNavigationItem(params.id);\n break;\n default:\n }\n }, [delNavigationItem, updateNavigationItem]);\n const handleSaveNavigation = (0, _react.useCallback)(async () => {\n try {\n pageState.saveLoading = true;\n await saveNavigationList(navigationState.rawNavigation);\n enqueueSnackbar('保存成功', {\n variant: 'success'\n });\n } catch (e) {\n enqueueSnackbar( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"subtitle2\",\n children: t('navigation.actionFailed')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"body1\",\n children: (0, _util.formatError)(e) || e.error\n })]\n }), {\n variant: 'error'\n });\n } finally {\n pageState.saveLoading = false;\n }\n }, [enqueueSnackbar, navigationState.rawNavigation, pageState, saveNavigationList, t]);\n const handleResetNavigation = (0, _react.useCallback)(async () => {\n try {\n pageState.resetLoading = true;\n await resetNavigation();\n enqueueSnackbar('重置成功', {\n variant: 'success'\n });\n } catch (e) {\n enqueueSnackbar( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"subtitle2\",\n children: t('navigation.actionFailed')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"body1\",\n children: (0, _util.formatError)(e) || e.error\n })]\n }), {\n variant: 'error'\n });\n } finally {\n pageState.resetLoading = false;\n }\n }, [enqueueSnackbar, pageState, resetNavigation, t]);\n const sessionCtxValue = (0, _react.useMemo)(() => {\n return {\n session: _objectSpread(_objectSpread({}, mockSession), {}, {\n user: {\n did: blocklet.appDid,\n fullName: 'Preview User',\n role: pageState.mockRole\n }\n })\n };\n }, [blocklet.appDid, pageState.mockRole]);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.ButtonGroup, {\n variant: \"outlined\",\n children: Object.keys(navigationTypeMap).map(key => {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Button, {\n variant: navigationState.activeSection === key ? 'contained' : undefined,\n onClick: () => updateActiveSection(key),\n children: [navigationTypeMap[key], \" (\".concat(getNavigation(key).length, \")\")]\n }, key);\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Toolbar, {\n variant: \"dense\",\n sx: {\n paddingLeft: '0px !important',\n paddingRight: '0px !important',\n mt: 2\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"h6\",\n component: \"div\",\n sx: {\n flexGrow: 1\n },\n children: \"Config\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.ButtonGroup, {\n variant: \"outlined\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_lab.LoadingButton, {\n size: \"small\",\n variant: \"outlined\",\n color: \"error\",\n startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"system-uicons:reset\"\n }),\n sx: {\n mr: 2\n },\n loading: pageState.resetLoading,\n loadingPosition: \"start\",\n onClick: () => {\n pageState.showResetConfirm = true;\n },\n children: \"\\u91CD\\u7F6E\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.ButtonGroup, {\n variant: \"outlined\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Button, {\n size: \"small\",\n variant: \"outlined\",\n startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"mdi:plus\"\n }),\n onClick: () => handleAddNavigation(),\n children: \"\\u65B0\\u5EFA\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_lab.LoadingButton, {\n size: \"small\",\n variant: \"contained\",\n startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"mdi:content-save\"\n }),\n loading: pageState.saveLoading,\n loadingPosition: \"start\",\n onClick: handleSaveNavigation,\n children: \"\\u4FDD\\u5B58\"\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Paper, {\n variant: \"outlined\",\n sx: {\n display: 'flex',\n height: 280,\n overflow: 'hidden'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Paper, {\n elevation: 0,\n sx: {\n flex: 1,\n overflow: 'auto'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sortableTree.default, {\n treeData: getNavigation(navigationState.activeSection),\n setTreeData: updateNavigationTree,\n renderActions: _ref => {\n let {\n data,\n className\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_navigationActions.default, {\n data: data,\n className: className,\n section: navigationState.activeSection,\n add: function add() {\n return handleAddNavigation(...arguments);\n },\n del: function del() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return handleEditNavigation('del', ...args);\n },\n edit: function edit() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return handleEditNavigation('edit', ...args);\n },\n toggle: function toggle() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return handleEditNavigation('toggle', ...args);\n }\n });\n }\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Toolbar, {\n variant: \"dense\",\n sx: {\n paddingLeft: '0px !important',\n paddingRight: '0px !important',\n mt: 3\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"h6\",\n component: \"div\",\n sx: {\n flexGrow: 1\n },\n children: \"Preview\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.FormControl, {\n sx: {\n m: 1,\n minWidth: 120\n },\n size: \"small\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.InputLabel, {\n children: \"Role\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Select, {\n value: pageState.mockRole,\n label: \"Role\",\n onChange: e => {\n pageState.mockRole = e.target.value;\n },\n children: roles.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.MenuItem, {\n value: item.name,\n children: item.title\n }, item.name))\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Paper, {\n variant: \"outlined\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Session.SessionContext.Provider, {\n value: sessionCtxValue,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_navigationPreview.default, {\n navigation: navigation\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_navigationDialog.default, {\n ref: refNavigationDialog,\n section: navigationState.activeSection,\n components: navigationState.components,\n rawNavigations: navigationState.rawNavigation\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.Confirm, {\n open: pageState.showResetConfirm,\n title: \"\\u662F\\u5426\\u6E05\\u7A7A\\u6240\\u6709\\u81EA\\u5B9A\\u4E49\\u5BFC\\u822A\",\n onConfirm: async () => {\n await handleResetNavigation();\n pageState.showResetConfirm = false;\n },\n onCancel: () => {\n pageState.showResetConfirm = false;\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: \"\\u6E05\\u7A7A\\u540E\\uFF0C\\u5BFC\\u822A\\u4F1A\\u6062\\u590D\\u5230 Blocklet \\u539F\\u6709\\u9ED8\\u8BA4\\u7684\\u914D\\u7F6E\"\n })\n })]\n });\n}\nvar _default = ConfigNavigation;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletEnvironmentWithPermission;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _omit = _interopRequireDefault(require(\"lodash/omit\"));\nvar _isEqual = _interopRequireDefault(require(\"lodash/isEqual\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _Switch = _interopRequireDefault(require(\"@mui/material/Switch\"));\nvar _Divider = _interopRequireDefault(require(\"@mui/material/Divider\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _LockIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/LockIcon\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _constant2 = require(\"@blocklet/constant\");\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _schemaForm = _interopRequireDefault(require(\"../schema-form\"));\nvar _formTextInput = _interopRequireDefault(require(\"../form/form-text-input\"));\nvar _node = require(\"../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _permission = require(\"../permission\");\nvar _addDomainAlias = _interopRequireDefault(require(\"./router/action/add-domain-alias\"));\nvar _domainStatus = _interopRequireDefault(require(\"./router/domain-status\"));\nvar _domainActions = _interopRequireDefault(require(\"./router/domain-actions\"));\nvar _walletType = _interopRequireDefault(require(\"./preferences/wallet-type\"));\nvar _appSk = _interopRequireDefault(require(\"./preferences/app-sk\"));\nvar _addCert = _interopRequireDefault(require(\"./add-cert\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"onUpdate\", \"hasPermission\"],\n _excluded2 = [\"value\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletEnvironment(_ref) {\n var _blocklet$settings;\n let {\n blocklet,\n onUpdate,\n hasPermission\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const node = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [cpuCores, setCpuCores] = (0, _react.useState)('');\n const [loading, setLoading] = (0, _react.useState)('');\n const whoCanAccess = (0, _util.getWhoCanAccess)(blocklet);\n const publicToStore = blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$settings = blocklet.settings) === null || _blocklet$settings === void 0 ? void 0 : _blocklet$settings.publicToStore;\n const theme = (0, _useTheme.default)();\n const [editingItem, setEditingItem] = (0, _react.useState)(null);\n const disabled = loading || !hasPermission;\n const {\n inService,\n ws: {\n useSubscription\n }\n } = node;\n const {\n did\n } = blocklet.meta;\n const {\n site\n } = blocklet;\n const domains = (0, _util2.sortDomains)(site === null || site === void 0 ? void 0 : site.domainAliases);\n const clusterMode = (0, _get.default)(blocklet.meta, 'capabilities.clusterMode', false);\n useSubscription(_constant.EVENTS.NODE_RUNTIME_INFO, res => {\n if (clusterMode) {\n setCpuCores((0, _get.default)(res, 'cpu.physicalCores', ''));\n }\n });\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n\n // configurable blocklet environment\n const customType = blocklet.environments.find(x => x.key === 'BLOCKLET_WALLET_TYPE');\n const customDelete = blocklet.environments.find(x => x.key === 'BLOCKLET_DELETABLE');\n const deletable = !customDelete || customDelete.value === 'yes';\n const customUrl = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_URL');\n const customLogoSquare = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO_SQUARE');\n const customLogoRect = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO_RECT');\n const customLogoFavicon = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO_FAVICON');\n const customLogoDeprecated = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO');\n const configurableEnvs = [{\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_NAME,\n description: t('blocklet.config.name'),\n value: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_NAME').value\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_DESCRIPTION,\n description: t('blocklet.config.description'),\n value: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_DESCRIPTION').value\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_URL,\n description: t('blocklet.config.appUrl'),\n value: customUrl ? customUrl.value : ''\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO_SQUARE,\n description: t('blocklet.config.logoSquare'),\n value: customLogoSquare ? customLogoSquare.value : ''\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO_RECT,\n description: t('blocklet.config.logoRect'),\n value: customLogoRect ? customLogoRect.value : ''\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO_FAVICON,\n description: t('blocklet.config.logoFavicon'),\n value: customLogoFavicon ? customLogoFavicon.value : ''\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO,\n description: t('blocklet.config.logo'),\n value: customLogoDeprecated ? customLogoDeprecated.value : ''\n }];\n if (clusterMode) {\n const exist = blocklet.configs.find(x => x.key === _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE);\n const value = exist ? exist.value : cpuCores;\n configurableEnvs.push({\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE,\n description: t('blocklet.config.clusterSize'),\n value,\n cpuCores\n });\n }\n const defaultValue = {};\n const schemaList = configurableEnvs.map(item => {\n const {\n value\n } = item,\n props = _objectWithoutProperties(item, _excluded2);\n defaultValue[item.key] = value;\n return _objectSpread({}, props);\n });\n const onPublicToStoreChange = async e => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const {\n checked\n } = e.target;\n const {\n blocklet: data\n } = await node.api.configPublicToStore({\n input: {\n did: blocklet.meta.did,\n publicToStore: checked\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n const onSubmitConfig = async value => {\n if (value.key === _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE) {\n const errMessage = (0, _util2.isValidClusterSize)(value);\n if (errMessage) {\n _toast.default.error(errMessage);\n return;\n }\n }\n const params = [_objectSpread(_objectSpread({}, (0, _omit.default)(editingItem, ['childDid', 'componentType', 'componentProps'])), {}, {\n value\n })];\n try {\n setLoading(true);\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: params\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n const onDeletableChange = async e => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const {\n checked\n } = e.target;\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: [{\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_DELETABLE,\n value: checked ? 'no' : 'yes'\n }]\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n const onWalletTypeChange = async value => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: [{\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_WALLET_TYPE,\n value\n }]\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n const onUpdateCors = async value => {\n const oldValue = site.corsAllowedOrigins || [];\n const newValue = value.split(',').map(x => x.trim()).filter(Boolean);\n if ((0, _isEqual.default)(oldValue, newValue)) {\n return false;\n }\n try {\n setLoading(true);\n const corsAllowedOrigins = newValue.length ? newValue : ['__none__'];\n await node.api.updateRoutingSite({\n input: {\n id: site.id,\n corsAllowedOrigins,\n teamDid: blocklet.meta.did\n }\n });\n setLoading(false);\n } catch (err) {\n _toast.default.error(err.message);\n setLoading(false);\n return false;\n }\n return true;\n };\n const onAppSkChange = async value => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: [{\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SK,\n value\n }]\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({}, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_schemaForm.default, {\n disabled: disabled,\n style: {\n marginTop: -24\n },\n loading: loading,\n schema: schemaList,\n defaultValue: defaultValue,\n onChange: (changeValue, _ref2) => {\n let {\n action,\n currentItem\n } = _ref2;\n if (action === 'edit') {\n setEditingItem(currentItem);\n } else if (['cancel', 'confirm'].includes(action)) {\n setEditingItem(null);\n }\n if (action === 'confirm') {\n onSubmitConfig(changeValue[currentItem.key]);\n }\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-form\",\n children: [whoCanAccess === 'all' && blocklet.source === 'registry' && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-label\",\n children: [t('blocklet.config.access.publicToStore'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-desc\",\n children: t('blocklet.config.access.publicInstanceTip')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch.default, {\n disabled: disabled,\n checked: publicToStore,\n defaultChecked: true,\n onChange: onPublicToStoreChange\n })]\n }), !inService && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-label\",\n children: [t('blocklet.config.deletable.name'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-desc\",\n children: deletable ? t('blocklet.config.deletable.disable') : t('blocklet.config.deletable.enable')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch.default, {\n disabled: disabled,\n checked: !deletable,\n defaultChecked: true,\n onChange: onDeletableChange\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n component: _Divider.default,\n my: 3\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-form\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"config-label\",\n children: t('common.domain')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_addDomainAlias.default, {\n id: site.id,\n title: t('router.domain.add.title'),\n teamDid: did,\n children: _ref3 => {\n let {\n open\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n style: {\n marginLeft: 16\n },\n variant: \"contained\",\n color: \"primary\",\n \"data-cy\": \"add-domain-alias\",\n onClick: open,\n disabled: (0, _util2.isInProgress)(blocklet.status),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: '1.3em',\n marginRight: 4\n }\n }), t('common.add')]\n });\n }\n })\n })]\n }), domains.map((domain, index) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n mt: index ? 0 : 1,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_domainStatus.default, {\n domain: domain,\n filters: ['domain']\n }, \"\".concat(domain.value, \"-domain\")), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 2,\n mr: 0.5,\n children: domain.value\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_domainStatus.default, {\n domain: domain,\n filters: ['http']\n }, \"\".concat(domain.value, \"-http\")), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n style: {\n marginLeft: 12\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_addCert.default, {\n domain: domain.value,\n domainStatus: domain.domainStatus,\n did: blocklet.meta.did,\n children: _ref4 => {\n let {\n open\n } = _ref4;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n size: \"small\",\n onClick: e => open(e),\n children: t('router.cert.genLetsEncryptCert.title')\n });\n }\n })]\n }), hasPermission && !domain.isProtected ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_domainActions.default, {\n site: site,\n domain: domain,\n blocklet: blocklet\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.router.domainLockTooltip'),\n placement: \"top\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n disabled: true,\n size: \"large\",\n style: {\n pointerEvents: 'auto',\n // padding replace to margin, fix the tooltip position\n paddingTop: 0,\n paddingBottom: 0,\n margin: '12px 0'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LockIcon.default, {\n style: {\n fill: theme.palette.text.disabled\n }\n })\n })\n })]\n }, domain.value)), !domains.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 4,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n component: _Divider.default,\n my: 3\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n mt: 2,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-label\",\n mb: 0,\n children: t('common.security')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-form\",\n mt: 2,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-label\",\n fontSize: 14,\n mb: 0,\n children: t('router.domainSecurity.cors.title')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mb: 1.5,\n className: \"config-desc\",\n children: t('router.domainSecurity.cors.description', {\n name: 'the blocklet'\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n style: {\n marginTop: 0\n },\n disabled: loading || disabled,\n loading: loading,\n initialValue: (site.corsAllowedOrigins || []).join(', '),\n onSubmit: onUpdateCors\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n component: _Divider.default,\n my: 3\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mb: 2,\n className: \"config-label\",\n fontSize: 20,\n children: t('blocklet.config.dangerZone')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n px: 2,\n py: 1,\n sx: {\n border: '1px solid red',\n borderRadius: 2\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-label\",\n children: [t('blocklet.config.walletType.name'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-desc\",\n children: t('blocklet.config.walletType.description')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_walletType.default, {\n value: (customType === null || customType === void 0 ? void 0 : customType.value) || 'default',\n disabled: disabled,\n onChange: onWalletTypeChange\n })]\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-form\",\n mt: 2,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-label\",\n fontSize: 14,\n mb: 0,\n children: t('blocklet.config.sk')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_appSk.default, {\n disabled: loading || disabled,\n loading: loading,\n initialValue: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_SK').value,\n onChange: onAppSkChange\n })]\n })]\n })]\n }));\n}\nconst BlockletEnvironmentInDaemon = (0, _permission.withPermission)(BlockletEnvironment, 'mutate_blocklets');\nconst BlockletEnvironmentInService = (0, _permission.withPermission)(BlockletEnvironment, '', _util2.BlockletAdminRoles);\nfunction BlockletEnvironmentWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletEnvironmentInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletEnvironmentInDaemon, _objectSpread({}, props));\n}\nBlockletEnvironment.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n onUpdate: _propTypes.default.func,\n hasPermission: _propTypes.default.bool\n};\nBlockletEnvironment.defaultProps = {\n onUpdate: () => {},\n hasPermission: false\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n padding-top: 24px;\\n .config-form {\\n flex-grow: 1;\\n overflow-y: auto;\\n \", \" {\\n width: 100%;\\n flex-shrink: 0;\\n padding: 0 24px;\\n transform: translate(0, 0);\\n max-height: 60vh;\\n }\\n }\\n\\n .config-item {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n margin: 16px 0;\\n }\\n\\n .config-label {\\n font-weight: bold;\\n }\\n\\n .config-desc {\\n font-weight: normal;\\n font-size: 12px;\\n color: #666;\\n }\\n\\n .form-item {\\n margin-top: 0;\\n }\\n\"])), props => props.theme.breakpoints.down('md'));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletDiskInfo;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletDiskInfo(_ref) {\n let {\n blocklet\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n if (!blocklet.diskInfo) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('blocklet.diskInfo.empty')\n });\n }\n const renderDiskInfo = (dir, size, handler) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n children: [handler ?\n /*#__PURE__*/\n /* eslint-disable-next-line no-script-url, jsx-a11y/anchor-is-valid */\n (0, _jsxRuntime.jsx)(_Link.default, {\n style: {\n cursor: 'pointer'\n },\n onClick: handler,\n underline: \"hover\",\n children: dir\n }) : dir, ' ', /*#__PURE__*/(0, _jsxRuntime.jsx)(\"strong\", {\n children: size ? (0, _filesize.default)(size) : 'empty'\n })]\n });\n const env = blocklet.environments.reduce((acc, x) => {\n acc[x.key] = x.value;\n return acc;\n }, {});\n const rows = [{\n key: 'appDir',\n name: t('blocklet.diskInfo.appDir'),\n value: renderDiskInfo(env.BLOCKLET_APP_DIR, blocklet.diskInfo.app)\n }, {\n key: 'dataDir',\n name: t('blocklet.diskInfo.dataDir'),\n value: renderDiskInfo(env.BLOCKLET_DATA_DIR, blocklet.diskInfo.data)\n }, {\n key: 'logDir',\n name: t('blocklet.diskInfo.logDir'),\n value: renderDiskInfo(env.BLOCKLET_LOG_DIR, blocklet.diskInfo.log)\n }, {\n key: 'cacheDir',\n name: t('blocklet.diskInfo.cacheDir'),\n value: renderDiskInfo(env.BLOCKLET_CACHE_DIR, blocklet.diskInfo.cache)\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: rows.map(row => /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n children: row.value\n }, row.key))\n }));\n}\nBlockletDiskInfo.propTypes = {\n blocklet: _propTypes.default.object.isRequired\n};\nBlockletDiskInfo.defaultProps = {};\nconst Div = (0, _styled.default)(_Typography.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _PlayArrow = _interopRequireDefault(require(\"@mui/icons-material/PlayArrow\"));\nvar _Stop = _interopRequireDefault(require(\"@mui/icons-material/Stop\"));\nvar _Replay = _interopRequireDefault(require(\"@mui/icons-material/Replay\"));\nvar _Autorenew = _interopRequireDefault(require(\"@mui/icons-material/Autorenew\"));\nvar _Settings = _interopRequireDefault(require(\"@mui/icons-material/Settings\"));\nvar _Receipt = _interopRequireDefault(require(\"@mui/icons-material/Receipt\"));\nvar _Group = _interopRequireDefault(require(\"@mui/icons-material/Group\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nvar _default = {\n Start: _PlayArrow.default,\n Stop: _Stop.default,\n Restart: _Replay.default,\n Reload: _Autorenew.default,\n Remove: _Delete.default,\n Config: _Settings.default,\n Log: _Receipt.default,\n Group: _Group.default\n};\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = InstallFromUrl;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _semver = _interopRequireDefault(require(\"semver\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Stepper = _interopRequireDefault(require(\"@mui/material/Stepper\"));\nvar _Step = _interopRequireDefault(require(\"@mui/material/Step\"));\nvar _StepLabel = _interopRequireDefault(require(\"@mui/material/StepLabel\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _node = require(\"../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _didAddress = _interopRequireDefault(require(\"../did-address\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction InstallFromUrl(_ref) {\n let {\n defaultUrl,\n onCancel: _onCancel,\n onSuccess,\n onError,\n mode,\n handleText\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const initMeta = {\n dist: {}\n };\n const [url, setUrl] = (0, _react.useState)(defaultUrl);\n const [activeStep, setActiveStep] = (0, _react.useState)(defaultUrl ? 1 : 0);\n const [meta, setMeta] = (0, _react.useState)(initMeta);\n const [existingMeta, setExistingMeta] = (0, _react.useState)(null);\n const [params, setParams] = (0, _react.useState)({});\n const isComponentMode = mode === 'component';\n // if mode is component , we need to always show the step, that means the user can return to the previous step\n const alwayShowSteps = isComponentMode ? true : !defaultUrl;\n const onGetMeta = async () => {\n setMeta(initMeta);\n setError(null);\n setLoading(true);\n try {\n const decoded = decodeURIComponent(url.trim());\n // validate\n try {\n new URL(decoded); // eslint-disable-line no-new\n } catch (_unused) {\n throw new Error('Invalid URL');\n }\n\n // request\n const {\n meta: newer,\n inStore,\n registryUrl\n } = await api.getBlockletMetaFromUrl({\n input: {\n url: decoded\n }\n });\n\n // if mode is component, never check existing blocklet\n if (isComponentMode) {\n setMeta(newer);\n } else {\n const {\n blocklet: existedBlocklet\n } = await api.getBlocklet({\n input: {\n did: newer.did,\n attachRuntimeInfo: false\n }\n });\n if (existedBlocklet && _semver.default.gte(existedBlocklet.meta.version, newer.version)) {\n setExistingMeta(existedBlocklet.meta);\n setMeta(newer);\n } else {\n setMeta(newer);\n }\n }\n setParams({\n inStore,\n registryUrl,\n inputUrl: url.trim()\n });\n } catch (err) {\n console.error(err);\n const errMsg = \"Blocklet Install failed: \".concat((0, _util2.formatError)(err));\n setError(errMsg);\n onError(err);\n } finally {\n setLoading(false);\n }\n };\n const _onConfirm = async () => {\n if (isComponentMode) {\n onSuccess(_objectSpread({\n meta\n }, params));\n } else {\n await onInstall();\n }\n _onCancel();\n };\n const onInstall = async () => {\n setLoading(true);\n try {\n await api.installBlocklet({\n input: {\n url: decodeURIComponent(url.trim())\n }\n });\n onSuccess(_objectSpread({\n meta\n }, params));\n } catch (err) {\n const errMsg = \"Blocklet Install failed: \".concat((0, _util2.formatError)(err));\n setError(errMsg);\n } finally {\n setLoading(false);\n }\n };\n (0, _react.useEffect)(() => {\n if (defaultUrl) {\n onGetMeta();\n }\n }, [defaultUrl]); // eslint-disable-line\n\n const rows = [{\n name: t('common.name'),\n value: (0, _util.getDisplayName)({\n meta\n }, true)\n }, {\n name: t('common.version'),\n value: meta.version\n }, {\n name: t('common.did'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: meta.did\n })\n }, {\n name: t('common.author'),\n value: (0, _util2.formatPerson)(meta.author)\n }, {\n name: t('blocklet.dist.downloadLink'),\n value: meta.dist.tarball\n }];\n const getStep1Body = () => {\n if (loading) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n height: 200,\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexDirection: 'column'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n });\n }\n if (meta.did) {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n style: {\n paddingLeft: '10%'\n },\n children: [rows.map(row => {\n if (row.name === t('common.did')) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n nameFormatter: () => t('common.did'),\n children: row.value\n }, row.name);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n children: row.value\n }, row.name);\n }), existingMeta && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n style: {\n margin: '15px 0 0 -16px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [t('blocklet.fromUrl.existTipPrefix'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n content: existingMeta.version,\n style: {\n margin: '0 5px'\n }\n }), t('blocklet.fromUrl.existTipSuffix')]\n })\n })]\n });\n }\n return null;\n };\n const steps = [{\n label: t('blocklet.fromUrl.step0'),\n body: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('blocklet.fromUrl.label'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"url\",\n \"data-cy\": \"blocklet-url-input\",\n fullWidth: true,\n autoFocus: true,\n style: {\n marginBottom: 32\n },\n margin: \"dense\",\n helperText: t('blocklet.fromUrl.description'),\n value: url,\n onChange: e => {\n setError(null);\n setUrl(e.target.value);\n },\n disabled: loading,\n onKeyPress: e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n onGetMeta();\n setActiveStep(1);\n }\n }\n })\n }),\n cancel: t('common.cancel'),\n confirm: t('common.next'),\n onCancel: _onCancel,\n onConfirm: () => {\n onGetMeta();\n setActiveStep(1);\n }\n }, {\n label: t('blocklet.fromUrl.step1'),\n body: getStep1Body(),\n cancel: alwayShowSteps ? t('common.pre') : t('common.cancel'),\n confirm: (handleText === null || handleText === void 0 ? void 0 : handleText.confirm) || (existingMeta ? t('common.confirm') : t('blocklet.fromUrl.confirm')),\n onCancel: () => {\n if (alwayShowSteps) {\n setActiveStep(s => s - 1);\n } else {\n _onCancel();\n }\n },\n onConfirm: () => {\n if (existingMeta) {\n _onCancel();\n } else {\n _onConfirm();\n }\n }\n }];\n const step = steps[activeStep];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: (handleText === null || handleText === void 0 ? void 0 : handleText.title) || t('blocklet.fromUrl.title'),\n fullWidth: true,\n maxWidth: \"md\",\n onClose: () => step.onCancel(),\n showCloseButton: activeStep === 0,\n disableEscapeKeyDown: true,\n open: true,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [step.cancel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n setError(null);\n step.onCancel();\n },\n color: \"inherit\",\n children: step.cancel || t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n step.onConfirm();\n },\n color: \"primary\",\n \"data-cy\": \"install-blocklet-next-step\",\n disabled: loading || !url || error,\n variant: \"contained\",\n autoFocus: true,\n style: {\n marginLeft: 8\n },\n children: [loading && activeStep === 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), step.confirm]\n })]\n }),\n children: [alwayShowSteps && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Stepper.default, {\n alternativeLabel: true,\n activeStep: activeStep,\n children: steps.map(_ref2 => {\n let {\n label\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Step.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_StepLabel.default, {\n children: label\n })\n }, label);\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n style: {\n marginTop: 24\n },\n children: step.body\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n style: {\n width: '100%',\n marginTop: 8\n },\n children: error\n })]\n });\n}\nInstallFromUrl.propTypes = {\n defaultUrl: _propTypes.default.string,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onError: _propTypes.default.func,\n mode: _propTypes.default.oneOf(['install', 'component']),\n handleText: _propTypes.default.object\n};\nInstallFromUrl.defaultProps = {\n onError: () => {},\n defaultUrl: '',\n mode: 'install',\n handleText: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletLog;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _logTerminal = require(\"../logs/log-terminal\");\nvar _download = _interopRequireDefault(require(\"../logs/download\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/**\n * - heights:\n * - header: 64\n * - footer:\n * - xs: 57 + 64\n * - sm: 109 + 64\n * - main content top:\n * - xs: 211 + 32 + 16\n * - md: 160 + 32 + 16\n * - content height:\n * - xs (Mobile) = 100vh - 444\n * - sm (Mobile) = 100vh - 508\n * - md (PC) = 100vh - 445\n */\nfunction BlockletLog(_ref) {\n let {\n blocklet\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const initialData = ['Tip: this tab will only show runtime logs. Please go to \"Blocklet Server\" to view other lifecycle logs of the blocklet (install/start/stop...)', '\\r\\n\\r\\n'];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, _objectSpread(_objectSpread({\n height: {\n xs: 'calc(100vh - 444px)',\n sm: 'calc(100vh - 508px)',\n md: 'calc(100vh - 445px)'\n }\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_logTerminal.LogTerminalGroup, {\n name: (0, _util.getDisplayName)(blocklet),\n logId: \"blocklet-\".concat(blocklet.meta.did),\n initialData: initialData,\n postpend: /*#__PURE__*/(0, _jsxRuntime.jsx)(_download.default, {\n id: blocklet.meta.did,\n name: blocklet.meta.name\n })\n })\n }));\n}\nBlockletLog.propTypes = {\n blocklet: _propTypes.default.object.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletMode;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _tag = _interopRequireDefault(require(\"../tag\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"mode\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletMode(_ref) {\n let {\n mode\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n if (mode === 'development') {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, _objectSpread(_objectSpread({\n type: \"primary\"\n }, rest), {}, {\n children: \"DEV\"\n }));\n }\n return null;\n}\nBlockletMode.propTypes = {\n mode: _propTypes.default.string.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletMonitor;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\nvar _prettyMsI18n = _interopRequireDefault(require(\"pretty-ms-i18n\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Datatable = _interopRequireDefault(require(\"@arcblock/ux/lib/Datatable\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _util2 = require(\"../util\");\nvar _runtimeInfo = _interopRequireDefault(require(\"./runtime-info\"));\nvar _diskInfo = _interopRequireDefault(require(\"./disk-info\"));\nvar _bundleAvatar = _interopRequireDefault(require(\"./bundle-avatar\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction BlockletMonitor() {\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n blocklet,\n runtimeHistory,\n actions: {\n refreshBlocklet\n }\n } = (0, _blocklet.useBlockletContext)();\n const monitList = (0, _react.useMemo)(() => {\n const arr = [];\n (0, _util.forEachBlockletSync)(blocklet, (component, _ref) => {\n let {\n ancestors,\n id,\n level\n } = _ref;\n if (component.runtimeInfo) {\n arr.push({\n type: 'blocklet',\n groupId: blocklet.meta.did,\n groupName: (0, _util.getDisplayName)(blocklet),\n id,\n name: (0, _util.getDisplayName)(component, true),\n blocklet,\n component,\n level: level - 1 >= 0 ? level - 1 : 0,\n runtimeInfo: component.runtimeInfo,\n ancestors\n });\n }\n });\n return arr;\n }, [blocklet]); // eslint-disable-line react-hooks/exhaustive-deps\n\n (0, _react.useEffect)(() => {\n const interval = setInterval(() => {\n refreshBlocklet();\n }, 1000 * 10);\n return () => {\n clearInterval(interval);\n };\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n const formatUptime = uptime => {\n return (0, _prettyMsI18n.default)(Number(uptime || 0), {\n locale: (0, _util2.formatLocale)(locale)\n });\n };\n const monitorColumns = [{\n label: t('common.name'),\n name: 'name',\n options: {\n // eslint-disable-next-line react/no-unstable-nested-components\n customBodyRenderLite(rawIndex) {\n const {\n name,\n component,\n level,\n ancestors\n } = monitList[rawIndex];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n pl: level * 2,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_bundleAvatar.default, {\n size: 14,\n blocklet: component,\n ancestors: ancestors\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 1,\n children: name\n })]\n });\n }\n }\n }, {\n label: t('common.uptime'),\n name: 'runtimeInfo.uptime',\n options: {\n customBodyRenderLite(rawIndex) {\n const {\n runtimeInfo\n } = monitList[rawIndex];\n return formatUptime(runtimeInfo.uptime);\n }\n }\n }, {\n label: t('blocklet.runtimeInfo.memoryUsage'),\n name: 'runtimeInfo.memoryUsage',\n options: {\n customBodyRenderLite(rawIndex) {\n const {\n runtimeInfo\n } = monitList[rawIndex];\n return (0, _filesize.default)((runtimeInfo === null || runtimeInfo === void 0 ? void 0 : runtimeInfo.memoryUsage) || 0);\n }\n }\n }, {\n label: t('blocklet.runtimeInfo.cpuUsage'),\n name: 'runtimeInfo.cpuUsage',\n options: {\n customBodyRenderLite(rawIndex) {\n const {\n runtimeInfo\n } = monitList[rawIndex];\n return \"\".concat((runtimeInfo.cpuUsage || 0).toFixed(1), \"%\");\n }\n }\n }, {\n label: t('blocklet.runtimeInfo.processId'),\n name: 'runtimeInfo.pid'\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 0,\n display: \"flex\",\n alignItems: \"center\",\n className: \"title\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: t('common.runtimeInfo')\n })\n }), blocklet.status === 'running' ? [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_runtimeInfo.default, {\n blocklet: blocklet,\n cpuHistory: runtimeHistory.cpu,\n memoryHistory: runtimeHistory.memory\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 3,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Datatable.default, {\n className: \"monitor-table\",\n locale: locale,\n data: monitList,\n columns: monitorColumns,\n title: \"\",\n options: {\n search: false,\n download: false,\n filter: false,\n print: false,\n viewColumns: false,\n pagination: false,\n rowsPerPage: 100\n }\n })\n })] : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('blocklet.runtimeInfo.noRunning')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: t('common.dataStorage')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_diskInfo.default, {\n blocklet: blocklet\n })]\n });\n}\nBlockletMonitor.propTypes = {};\nconst Div = (0, _styled.default)(_Typography.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .title {\\n font-size: 1.2rem;\\n font-weight: bold;\\n margin-top: \", \";\\n margin-bottom: \", \";\\n &.first {\\n margin-top: 0;\\n }\\n }\\n\"])), props => props.theme.spacing(5), props => props.theme.spacing(3));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletOverview;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _node = require(\"../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _didAddress = _interopRequireDefault(require(\"../did-address\"));\nvar _blockletSource = _interopRequireDefault(require(\"./blocklet-source\"));\nvar _status = _interopRequireDefault(require(\"./status\"));\nvar _version = _interopRequireDefault(require(\"./version\"));\nvar _domainStatus = _interopRequireDefault(require(\"./router/domain-status\"));\nvar _types = require(\"./types\");\nvar _expiration = _interopRequireDefault(require(\"./component/expiration\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction DomainLink(_ref) {\n let {\n domain,\n children\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n href,\n accessibility\n } = domain;\n if (!accessibility || accessibility.loading) {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(LinkDiv, {\n children: [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.router.checkUrlAccessible'),\n placement: \"top-end\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: \"status\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: 12\n })\n })\n })]\n });\n }\n if (!accessibility.accessible) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(LinkDiv, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.router.urlInaccessible'),\n placement: \"top-end\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: children\n })\n })\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(LinkDiv, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n href: href,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n children: children\n })\n });\n}\nDomainLink.propTypes = {\n domain: _types.DomainType.isRequired,\n children: _propTypes.default.any.isRequired\n};\nconst LinkDiv = _styled.default.span(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n &,\\n & > * {\\n color: #222;\\n font-size: 18px;\\n }\\n\\n .status {\\n margin-left: 8px;\\n }\\n\"])));\nconst getEngineRows = (engine, t) => {\n if (!engine) {\n return [];\n }\n return [{\n name: t('common.name'),\n value: engine.displayName\n }, {\n name: t('common.description'),\n value: engine.description\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n children: engine.version\n })\n }];\n};\nfunction BlockletOverview() {\n var _blocklet$settings, _blocklet$site;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n info: nodeInfo,\n inService\n } = (0, _node.useNodeContext)();\n const {\n blocklet,\n loadingRuntimeInfo\n } = (0, _blocklet.useBlockletContext)();\n const {\n value: appDid\n } = (blocklet.environments || []).find(x => x.key === 'BLOCKLET_APP_ID') || {};\n const infoRows = [appDid ? {\n name: t('blocklet.appId'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: appDid\n })\n } : null, {\n name: t('common.name'),\n value: (0, _util.getDisplayName)(blocklet, true)\n }, {\n name: t('common.status'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_status.default, {\n status: blocklet.status,\n source: blocklet.source\n })\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_version.default, {\n blocklet: blocklet\n })\n }, {\n name: t('common.group'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n type: \"success\",\n children: blocklet.meta.group\n })\n }, {\n name: t('common.author'),\n value: (0, _util2.formatPerson)(blocklet.meta.author)\n }, blocklet.controller ? {\n name: t('common.expires'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_expiration.default, {\n controller: blocklet.controller,\n locale: locale\n })\n } : null, {\n name: t('blocklet.installedAt'),\n value: (0, _util2.formatToDatetime)(blocklet.installedAt)\n }, blocklet.status === 'running' ? {\n name: t('blocklet.startedAt'),\n value: (0, _util2.formatToDatetime)(blocklet.startedAt)\n } : null, blocklet.status !== 'running' ? {\n name: t('blocklet.stoppedAt'),\n value: (0, _util2.formatToDatetime)(blocklet.stoppedAt)\n } : null, {\n name: t('blocklet.overview.source'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockletSource.default, {\n sourceInfo: {\n source: blocklet.source,\n deployedFrom: blocklet.deployedFrom\n },\n blocklet: blocklet\n })\n }, {\n name: t('blocklet.overview.deployedFrom'),\n value: blocklet.deployedFrom || '-'\n }, {\n name: t('blocklet.overview.accessControl'),\n value: t(\"team.whoCanAccess.\".concat((0, _util.getWhoCanAccess)(blocklet), \".title\"))\n }, {\n name: t('common.did'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: blocklet.meta.did\n })\n }, {\n name: t('common.owner'),\n value: (_blocklet$settings = blocklet.settings) !== null && _blocklet$settings !== void 0 && _blocklet$settings.owner ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: blocklet.settings.owner.did\n }) : '--'\n }].filter(Boolean);\n if (inService) {\n infoRows.push({\n name: t('common.serverDid'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: nodeInfo.did\n })\n }, {\n name: t('common.serverVersion'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n children: nodeInfo.version\n })\n });\n }\n const engineRows = getEngineRows(blocklet.engine, t);\n const renderRows = rows => rows.map(row => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n nameFormatter: () => row.name,\n children: row.value\n }, row.name);\n });\n const domains = (0, _util2.sortDomains)((_blocklet$site = blocklet.site) === null || _blocklet$site === void 0 ? void 0 : _blocklet$site.domainAliases);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"title first\",\n mb: 0,\n children: t('common.domain')\n })\n }), blocklet.status !== 'running' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: -2,\n mb: 1.5,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"warning\",\n children: t('blocklet.router.noRunning')\n })\n }), domains.map((domain, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n mt: index ? 3 : 0,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_domainStatus.default, {\n domain: domain,\n filters: ['domain']\n }, \"\".concat(domain.value, \"-domain\")), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 2,\n mr: 0.5,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DomainLink, {\n domain: domain,\n target: \"_blank\",\n children: domain.value\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_domainStatus.default, {\n domain: domain,\n filters: ['http']\n }, \"\".concat(domain.value, \"-http\")), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n style: {\n marginLeft: 12\n }\n })]\n })\n }, domain.value)), !domains.length && (loadingRuntimeInfo ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: 16\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: t('common.basicInfo')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"basicInfo\",\n children: renderRows(infoRows)\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: t('common.engine')\n }), engineRows.map(_ref2 => {\n let {\n name,\n value\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n nameWidth: 120,\n name: name,\n children: value\n }, name);\n })]\n })]\n });\n}\nBlockletOverview.propTypes = {};\nconst Div = (0, _styled.default)(_Typography.default)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n .title {\\n font-size: 1.2rem;\\n font-weight: bold;\\n margin-top: \", \";\\n margin-bottom: \", \";\\n &.first {\\n margin-top: 0;\\n }\\n }\\n\"])), props => props.theme.spacing(5), props => props.theme.spacing(3));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AppSk;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _formTextInput = _interopRequireDefault(require(\"../../form/form-text-input\"));\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction AppSk(_ref) {\n let {\n initialValue,\n onChange,\n disabled,\n loading\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [confirmAppSk, setConfirmAppSk] = (0, _react.useState)(null);\n const onAppSkChange = value => {\n setConfirmAppSk({\n value\n });\n return false;\n };\n const _onConfirm = async v => {\n try {\n await onChange(v);\n } finally {\n setConfirmAppSk(null);\n }\n };\n return [/*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n disabled: disabled,\n loading: loading,\n initialValue: initialValue,\n onSubmit: onAppSkChange,\n secure: true\n }), confirmAppSk && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: t('blocklet.config.appSkTitle'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: t('blocklet.config.appSkChangeTip')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n fontWeight: \"bold\",\n mt: 2,\n children: t('blocklet.config.appDidChangeTip')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(UL, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"li\", {\n children: t('blocklet.config.appDidChangeTipL1')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"li\", {\n children: t('blocklet.config.appDidChangeTipL2')\n })]\n })]\n }),\n confirm: t('confirm'),\n cancel: t('cancel'),\n onConfirm: () => _onConfirm(confirmAppSk.value),\n onCancel: () => setConfirmAppSk(null)\n })];\n}\nAppSk.propTypes = {\n initialValue: _propTypes.default.string,\n onChange: _propTypes.default.func,\n disabled: _propTypes.default.bool,\n loading: _propTypes.default.bool\n};\nAppSk.defaultProps = {\n initialValue: 'default',\n onChange: () => {},\n disabled: false,\n loading: false\n};\nconst UL = (0, _styled.default)('ul')(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n padding-left: 16px;\\n li {\\n margin-top: 8px;\\n list-style: disk;\\n font-weight: bold;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletPreferences;\nvar _react = _interopRequireWildcard(require(\"react\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _reactIframe = _interopRequireDefault(require(\"react-iframe\"));\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _material = require(\"@mui/material\");\nvar _TuneRounded = _interopRequireDefault(require(\"@mui/icons-material/TuneRounded\"));\nvar _Key = _interopRequireDefault(require(\"@mui/icons-material/Key\"));\nvar _SettingsOutlined = _interopRequireDefault(require(\"@mui/icons-material/SettingsOutlined\"));\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\nvar _ExpandMore = _interopRequireDefault(require(\"@mui/icons-material/ExpandMore\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Tabs = _interopRequireDefault(require(\"@arcblock/ux/lib/Tabs\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _bundleAvatar = _interopRequireDefault(require(\"../bundle-avatar\"));\nvar _configuration = _interopRequireDefault(require(\"../configuration\"));\nvar _index = _interopRequireDefault(require(\"../access/index\"));\nvar _node = require(\"../../contexts/node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"onUpdate\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nconst addComponentTabs = function addComponentTabs(tabs, blocklet) {\n let ancestors = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n let depth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;\n const key = [...ancestors.map(x => x.meta.did), blocklet.meta.did].join('/');\n tabs.push({\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n pl: Math.max(1, depth - 1) * 2,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_bundleAvatar.default, {\n size: 24,\n blocklet: blocklet,\n ancestors: ancestors\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n color: '#222'\n },\n children: (0, _util.getDisplayName)(blocklet, true)\n })\n })]\n }, key),\n value: key\n });\n if (blocklet.children.length > 0) {\n blocklet.children.forEach(x => {\n addComponentTabs(tabs, x, [...ancestors, blocklet], depth + 1);\n });\n }\n};\nfunction BlockletPreferences(_ref) {\n let {\n blocklet,\n onUpdate\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const {\n info,\n inService\n } = (0, _node.useNodeContext)();\n const [current, setCurrent] = (0, _react.useState)('general');\n const [expandPref, setExpandPref] = (0, _react.useState)(true);\n const tabs = [{\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n display: \"flex\",\n alignItems: \"center\",\n \"data-cy\": \"configuration-tab-general\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TuneRounded.default, {\n sx: {\n fontSize: 24\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n color: '#222'\n },\n children: t('common.general')\n })\n })]\n }, \"general\"),\n value: 'general'\n }, {\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n display: \"flex\",\n alignItems: \"center\",\n \"data-cy\": \"configuration-tab-access\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Key.default, {\n sx: {\n fontSize: 24\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n color: '#222'\n },\n children: t('common.access')\n })\n })]\n }, \"access\"),\n value: 'access'\n }, {\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n display: \"flex\",\n alignItems: \"center\",\n \"data-cy\": \"configuration-tab-preference\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: -2,\n style: {\n transform: 'translateY(2px)'\n },\n children: expandPref ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {\n fontSize: \"inherit\"\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChevronRight.default, {\n fontSize: \"inherit\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsOutlined.default, {\n sx: {\n fontSize: 24\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n color: '#222'\n },\n children: t('common.preferences')\n })\n })]\n }, \"preference\"),\n value: 'preference'\n }];\n if (expandPref) {\n addComponentTabs(tabs, blocklet);\n }\n const onTabChange = x => {\n if (x === 'preference') {\n setExpandPref(!expandPref);\n } else {\n setCurrent(x);\n }\n };\n let content = null;\n if (current === 'general') {\n content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_configuration.default, {\n blocklet: blocklet,\n onUpdate: onUpdate\n });\n } else if (current === 'access') {\n content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.default, {});\n } else {\n // eslint-disable-next-line no-nested-ternary\n const pathPrefix = inService ? _constant.WELLKNOWN_SERVICE_PATH_PREFIX : process.env.NODE_ENV === 'production' ? info.routing.adminPath : '';\n const searchParams = new URLSearchParams();\n if (!inService) {\n searchParams.set('authKey', '__sst');\n }\n searchParams.set('schemaKey', (0, _urlJoin.default)(window.location.origin, pathPrefix, \"/api/preferences?id=\".concat(encodeURIComponent(current))));\n content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIframe.default, {\n url: \"\".concat((0, _urlJoin.default)(window.location.origin, pathPrefix, '/hosted/form-collector/'), \"?\").concat(searchParams.toString()),\n width: \"100%\",\n height: \"100%\",\n frameBorder: 0,\n styles: {\n border: 0\n }\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({}, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Grid, {\n container: true,\n spacing: 4,\n columns: 24,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Grid, {\n item: true,\n sm: 7,\n md: 5,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tabs.default, {\n tabs: tabs,\n current: current,\n orientation: \"vertical\",\n onChange: onTabChange,\n sx: {\n borderRight: 1,\n height: '100%',\n borderColor: 'divider'\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Grid, {\n item: true,\n sm: 17,\n md: 19,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n minHeight: '66vh',\n height: '100%',\n position: 'relative',\n overflow: 'hidden'\n },\n children: content\n })\n })]\n })\n }));\n}\nBlockletPreferences.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n onUpdate: _propTypes.default.func\n};\nBlockletPreferences.defaultProps = {\n onUpdate: () => {}\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiTab-root {\\n text-align: left;\\n align-items: flex-start;\\n font-weight: normal;\\n }\\n .Mui-selected {\\n font-weight: bold;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = WalletType;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction WalletType(_ref) {\n let {\n value,\n onChange,\n disabled\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [confirmCustomType, setConfirmCustomType] = (0, _react.useState)(null);\n const WalletTypes = [{\n label: 'DID',\n value: 'default'\n }, {\n label: 'ETH',\n value: 'eth'\n }];\n const onWalletTypeChange = async e => {\n setConfirmCustomType({\n value: e.target.value\n });\n };\n const _onConfirm = async v => {\n try {\n await onChange(v);\n } finally {\n setConfirmCustomType(null);\n }\n };\n return [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n disabled: disabled,\n select: true,\n size: \"small\",\n value: value || 'default',\n onChange: onWalletTypeChange,\n children: WalletTypes.map(type => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledMenuItem, {\n value: type.value,\n sx: {\n display: 'block'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: type.label\n })\n })\n });\n })\n }), confirmCustomType && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: t('blocklet.config.walletTypeTitle'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n dangerouslySetInnerHTML: {\n __html: t('blocklet.config.blockletTypeChangeTip', {\n value: WalletTypes.find(x => x.value === confirmCustomType.value).label\n })\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n fontWeight: \"bold\",\n mt: 2,\n children: t('blocklet.config.appDidChangeTip')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(UL, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"li\", {\n children: t('blocklet.config.appDidChangeTipL1')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"li\", {\n children: t('blocklet.config.appDidChangeTipL2')\n })]\n })]\n }),\n confirm: t('confirm'),\n cancel: t('cancel'),\n onConfirm: () => _onConfirm(confirmCustomType.value),\n onCancel: () => setConfirmCustomType(null)\n })];\n}\nWalletType.propTypes = {\n value: _propTypes.default.string,\n onChange: _propTypes.default.func,\n disabled: _propTypes.default.bool\n};\nWalletType.defaultProps = {\n value: 'default',\n onChange: () => {},\n disabled: false\n};\nconst StyledMenuItem = (0, _styled.default)(_MenuItem.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .tip {\\n font-size: 12px;\\n color: \", \";\\n }\\n\"])), props => props.theme.palette.text.secondary);\nconst UL = (0, _styled.default)('ul')(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n padding-left: 16px;\\n li {\\n margin-top: 8px;\\n list-style: disk;\\n font-weight: bold;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CustomSelect = CustomSelect;\nexports.useStyles = exports.commonProps = void 0;\nvar _styles = require(\"@mui/styles\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _List = _interopRequireDefault(require(\"@mui/material/List\"));\nvar _ListItem = _interopRequireDefault(require(\"@mui/material/ListItem\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ShoppingCart = _interopRequireDefault(require(\"@mui/icons-material/ShoppingCart\"));\nvar _VerifiedUser = _interopRequireDefault(require(\"@mui/icons-material/VerifiedUser\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Colors = _interopRequireDefault(require(\"@arcblock/ux/lib/Colors\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst commonProps = {\n meta: _propTypes.default.object.isRequired,\n onCancel: _propTypes.default.func.isRequired\n};\nexports.commonProps = commonProps;\nconst useStyles = (0, _styles.makeStyles)(() => ({\n dialogAuth: {\n padding: '0 0 24px !important',\n '& .auth-title': {\n textAlign: 'center !important',\n marginBottom: '4px !important'\n },\n '& .auth-tip--scan': {\n textAlign: 'center !important'\n }\n },\n iconRoot: {\n minWidth: 48\n }\n}));\nexports.useStyles = useStyles;\nfunction CustomSelect(_ref) {\n let {\n action,\n onSelect,\n onNext\n } = _ref;\n const classes = useStyles();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const options = [{\n action: 'purchase',\n title: t('store.purchase.purchase.title'),\n description: t('store.purchase.purchase.description')\n }, {\n action: 'verify',\n title: t('store.purchase.verify.title'),\n description: t('store.purchase.verify.description')\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_List.default, {\n className: classes.tabPanel,\n children: options.map(x => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ListItem.default, {\n button: true,\n selected: action === x.action,\n onClick: () => onSelect(x.action),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n className: classes.iconRoot,\n children: x.action === 'purchase' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ShoppingCart.default, {\n style: {\n color: action === 'purchase' ? _Colors.default.primary.main : '#AAA',\n fontSize: 32\n }\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_VerifiedUser.default, {\n style: {\n color: action === 'verify' ? _Colors.default.primary.main : '#AAA',\n fontSize: 32\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: x.title,\n secondary: x.description\n })]\n }, x.action))\n }), onNext && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n fullWidth: true,\n disabled: !action,\n variant: \"contained\",\n color: \"primary\",\n style: {\n marginTop: 16\n },\n onClick: onNext,\n children: t('common.next')\n })]\n });\n}\nCustomSelect.propTypes = {\n action: _propTypes.default.oneOf(['both', 'purchase', 'verify']).isRequired,\n onSelect: _propTypes.default.func.isRequired,\n onNext: _propTypes.default.func.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ComponentPurchase = ComponentPurchase;\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Connect = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Connect\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _pWaitFor = _interopRequireDefault(require(\"p-wait-for\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _util2 = require(\"../../util\");\nvar _api = require(\"../../util/api\");\nvar _common = require(\"./common\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"mode\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction ComponentPurchase(_ref) {\n let {\n meta,\n onCancel,\n mode,\n handlePaySuccess\n } = _ref;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n info\n } = (0, _node.useNodeContext)();\n const webWalletUrl = (0, _util2.getWebWalletUrl)(info);\n const [nw, setNw] = (0, _react.useState)(null);\n const baseUrl = new URL(meta === null || meta === void 0 ? void 0 : meta.registryUrl).origin;\n const name = (0, _util.getDisplayName)({\n meta\n });\n const handleConnectSuccess = async (result, decrypt) => {\n const success = async _ref2 => {\n let {\n downloadTokenList\n } = _ref2;\n handlePaySuccess({\n downloadTokenList\n });\n };\n const failure = async errorMessage => {\n _toast.default.error(errorMessage);\n onCancel(errorMessage);\n };\n async function handleConnectSessionStatus(url) {\n return (0, _pWaitFor.default)(() => {\n return _api.api.get(url).then(async _ref3 => {\n let {\n data\n } = _ref3;\n const downloadTokenList = data === null || data === void 0 ? void 0 : data.downloadTokenList;\n if (data.status === 'succeed') {\n if (downloadTokenList && downloadTokenList.length) {\n await success({\n downloadTokenList\n });\n } else {\n await failure(t('blocklet.component.missDownloadTokenTip'));\n return true;\n }\n return true;\n }\n if (data.status === 'error') {\n console.error('vc error: ', data);\n await failure(data === null || data === void 0 ? void 0 : data.error);\n return true;\n }\n return false;\n });\n }, {\n interval: 1000\n });\n }\n if (mode === 'purchase' && nw) {\n const {\n statusUrl\n } = (0, _util2.extractStatusUrlFromNextWorkflow)(nw);\n // poll status url, to get download token\n await handleConnectSessionStatus(statusUrl);\n } else {\n await success({\n downloadTokenList: result.downloadTokenList && decrypt(result.downloadTokenList)\n });\n }\n };\n (0, _react.useEffect)(() => {\n // only purchase mode has nw\n if (mode === 'purchase') {\n const nextWorkflowUrl = new URL(baseUrl);\n nextWorkflowUrl.pathname = '/api/did/verify-purchase-blocklet/token';\n nextWorkflowUrl.searchParams.set('serverDid', info.did);\n nextWorkflowUrl.searchParams.set('blockletDid', meta === null || meta === void 0 ? void 0 : meta.did);\n try {\n _api.api.get(nextWorkflowUrl.href).then(_ref4 => {\n let {\n data\n } = _ref4;\n const url = \"\".concat(data.url);\n setNw(url);\n });\n } catch (error) {\n console.error('get next workflow url error: ', error);\n }\n }\n return () => {\n setNw(null);\n };\n }, [mode]); // eslint-disable-line\n\n // If nw does not exist, then connect should not be render\n if (mode === 'purchase' && !nw) {\n return '';\n }\n const modePropsMap = {\n verify: {\n action: 'verify-purchase-blocklet',\n checkFn: _api.axios.create({\n baseURL: baseUrl\n }).get,\n extraParams: {\n serverDid: info.did,\n blockletDid: meta === null || meta === void 0 ? void 0 : meta.did\n },\n messages: {\n title: t('store.purchase.verify.auth.title', {\n name\n }),\n scan: t('store.purchase.verify.auth.scan'),\n confirm: t('store.purchase.verify.auth.confirm'),\n success: t('store.purchase.verify.auth.success')\n }\n },\n purchase: {\n action: 'acquire-asset',\n checkFn: _api.axios.create({\n baseURL: (0, _urlJoin.default)(baseUrl, '/store')\n }).get,\n extraParams: {\n factory: meta.nftFactory,\n nw\n },\n messages: {\n title: t('store.purchase.auth.title', {\n name\n }),\n scan: t('store.purchase.auth.scan'),\n confirm: t('store.purchase.auth.confirm'),\n success: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: t('store.purchase.auth.success')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: t('blocklet.component.purchaseComponentSecondCheckTip')\n })]\n })\n }\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Connect.default, _objectSpread({\n open: true,\n locale: locale,\n popup: false,\n saveConnect: false,\n className: \"connect\",\n baseUrl: baseUrl,\n onSuccess: handleConnectSuccess,\n cancelWhenScanned: onCancel,\n onClose: onCancel,\n checkTimeout: 60 * 5000,\n webWalletUrl: webWalletUrl,\n disableClose: true,\n showDownload: false\n }, modePropsMap[mode]));\n}\nComponentPurchase.propTypes = _objectSpread(_objectSpread({}, _common.commonProps), {}, {\n handlePaySuccess: _propTypes.default.func,\n mode: _propTypes.default.oneOf(['verify', 'purchase']).isRequired\n});\nComponentPurchase.defaultProps = {\n handlePaySuccess: () => {}\n};\nconst ComponentPurchaseSelect = /*#__PURE__*/(0, _react.forwardRef)((_ref5, ref) => {\n let {\n mode\n } = _ref5,\n rest = _objectWithoutProperties(_ref5, _excluded);\n const [action, setAction] = (0, _react.useState)(mode !== 'both' ? mode : 'verify');\n const [step, setStep] = (0, _react.useState)(mode !== 'both' ? 2 : 1);\n const onSelect = async act => {\n if (act === action) {\n return;\n }\n setAction(act);\n };\n const onNext = async () => {\n if (!action) {\n return;\n }\n if (step === 2) {\n return;\n }\n setStep(2);\n };\n\n // expose the func and activeStep\n (0, _react.useImperativeHandle)(ref, () => ({\n onNext,\n getCurrentStep: () => {\n return step;\n }\n }));\n if (step === 1) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n maxWidth: 520\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_common.CustomSelect, {\n action: action,\n onNext: null,\n onSelect: onSelect\n })\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentPurchase, _objectSpread(_objectSpread({}, rest), {}, {\n mode: action\n }));\n});\nComponentPurchaseSelect.propTypes = {\n mode: _propTypes.default.oneOf(['both', 'verify', 'purchase']).isRequired,\n ref: _propTypes.default.any\n};\nComponentPurchaseSelect.defaultProps = {\n ref: {}\n};\nvar _default = ComponentPurchaseSelect;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"ComponentPurchaseSelect\", {\n enumerable: true,\n get: function get() {\n return _componentPurchase.default;\n }\n});\nvar _componentPurchase = _interopRequireDefault(require(\"./component-purchase\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddDomainAlias;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _CallMerge = _interopRequireDefault(require(\"@mui/icons-material/CallMerge\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _confirm = _interopRequireDefault(require(\"../../../confirm\"));\nvar _util = require(\"../../../util\");\nvar _node = require(\"../../../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction AddDomainAlias(_ref) {\n let {\n id,\n children,\n title,\n teamDid\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async params => {\n setLoading(true);\n try {\n await api.addDomainAlias({\n input: {\n id,\n domainAlias: params.domain.trim(),\n teamDid\n }\n });\n await (0, _util.sleep)(2000);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setConfirmSetting(null);\n setLoading(false);\n }\n };\n const onEnter = async (params, confirm, setError) => {\n try {\n await confirm(params);\n } catch (err) {\n setError((0, _util.formatError)(err));\n } finally {\n setLoading(false);\n }\n };\n const setting = {\n title: title || t('router.domainAlias.add.title'),\n // eslint-disable-next-line react/no-unstable-nested-components\n description: (params, setParams, setError) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('router.domainAlias.add.domainDescription'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"domain\",\n \"data-cy\": \"add-domain\",\n fullWidth: true,\n autoFocus: true,\n inputProps: {\n 'data-cy': 'domain-name-input'\n },\n value: params.domain,\n style: {\n marginBottom: 8\n },\n margin: \"dense\",\n onChange: e => {\n const domain = e.target.value.trim();\n const errMsg = (0, _util2.validateDomain)(domain, t);\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n domain,\n __disableConfirm: !!errMsg\n }));\n if (errMsg) {\n setError(errMsg);\n } else {\n setError('');\n }\n },\n onKeyPress: e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n const domain = e.target.value.trim();\n const errMsg = (0, _util2.validateDomain)(domain, t);\n if (errMsg) {\n setError(errMsg);\n } else {\n onEnter(params, onConfirm, setError);\n }\n }\n }\n })\n }),\n confirm: t('common.confirm'),\n cancel: t('common.cancel'),\n params: {\n domain: '',\n __disableConfirm: true\n },\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"rule-action\",\n \"data-cy\": \"action-add-domain-alias\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_CallMerge.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('router.domainAlias.add.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel,\n color: \"primary\"\n })]\n });\n}\nAddDomainAlias.propTypes = {\n id: _propTypes.default.string.isRequired,\n children: _propTypes.default.any,\n title: _propTypes.default.string,\n teamDid: _propTypes.default.string\n};\nAddDomainAlias.defaultProps = {\n children: null,\n title: '',\n teamDid: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddRule;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Link = _interopRequireDefault(require(\"@mui/icons-material/Link\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@abtnode/constant\");\nvar _node = require(\"../../../contexts/node\");\nvar _blocklet = require(\"../../../contexts/blocklet\");\nvar _confirm = _interopRequireDefault(require(\"../../../confirm\"));\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _util = require(\"../util\");\nvar _configRoutingRule = _interopRequireDefault(require(\"./config-routing-rule\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction AddRule(_ref) {\n let {\n children\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const teamDid = blocklet.meta.did;\n const siteId = blocklet.site.id;\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async params => {\n try {\n const err = await (0, _util.validateRule)(params, t);\n if (err) {\n throw err;\n }\n setLoading(true);\n const rule = {\n from: {\n pathPrefix: params.pathPrefix.trim()\n },\n to: {\n type: params.type\n }\n };\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT) {\n rule.to.url = params.url.trim();\n rule.to.redirectCode = params.redirectCode;\n }\n await api.addRoutingRule({\n input: {\n id: siteId,\n rule,\n teamDid\n }\n });\n } catch (error) {\n _toast.default.error(error.message);\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n title: t('router.rule.add.title'),\n // eslint-disable-next-line react/no-unstable-nested-components\n description: (params, setParams, setError) => {\n const setValue = value => {\n setError(null);\n const validateResult = (0, _util.validateRule)(value, t);\n if (validateResult) {\n setParams(_objectSpread(_objectSpread({}, value), {}, {\n __disableConfirm: true\n }));\n return;\n }\n setParams(_objectSpread({}, value));\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('router.rule.add.pathPrefix'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"pathPrefix\",\n \"data-cy\": \"path-prefix-input\",\n fullWidth: true,\n autoFocus: true,\n helperText: t('router.rule.add.pathPrefixTip'),\n style: {\n marginBottom: 32\n },\n margin: \"dense\",\n value: params.pathPrefix,\n onChange: e => {\n let disable = false;\n const validateResult = (0, _util.validatePathPrefix)({\n params: _objectSpread(_objectSpread({}, params), {}, {\n pathPrefix: e.target.value\n }),\n blocklets: [blocklet]\n });\n setError(validateResult);\n if (params.type === _constant.ROUTING_RULE_TYPES.BLOCKLET && validateResult) {\n disable = true;\n }\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT && !params.url) {\n disable = true;\n }\n if (!e.target.value.trim()) {\n disable = true;\n setError(t('router.validation.pathPrefixRequired'));\n }\n if (!disable) {\n setError('');\n }\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n pathPrefix: e.target.value,\n __disableConfirm: disable\n }));\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_configRoutingRule.default, {\n params: params,\n setParams: setValue,\n setError: setError\n })]\n });\n },\n confirm: t('router.rule.add.confirm'),\n cancel: t('common.cancel'),\n params: {\n pathPrefix: '',\n type: _constant.ROUTING_RULE_TYPES.REDIRECT,\n interfaceName: '',\n redirectCode: 302,\n __disableConfirm: true\n },\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"rule-action\",\n \"data-cy\": \"action-add-rule\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('router.rule.add.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel,\n color: \"primary\"\n })]\n });\n}\nAddRule.propTypes = {\n children: _propTypes.default.any\n};\nAddRule.defaultProps = {\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ConfigRoutingRule;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@abtnode/constant\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction ConfigRoutingRule(_ref) {\n let {\n params,\n setParams,\n setError,\n serviceTypes\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const redirectCodesMap = {\n 301: t('common.redirectPermanently'),\n 302: t('common.redirectTemporary'),\n 307: t('common.redirectTemporary'),\n 308: t('common.redirectPermanently')\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n select: true,\n label: t('router.domain.add.type'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"type\",\n \"data-cy\": \"domain-add-type\",\n fullWidth: true,\n value: params.type,\n onChange: e => {\n setError('');\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n type: e.target.value,\n __disableConfirm: false\n }));\n },\n style: {\n marginBottom: 32\n },\n SelectProps: {},\n children: serviceTypes.map(_ref2 => {\n let {\n name,\n value\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: value,\n children: name\n }, value);\n })\n }), params.type === _constant.ROUTING_RULE_TYPES.REDIRECT && [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n select: true,\n label: t('router.domain.add.redirect'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"type\",\n fullWidth: true,\n value: params.redirectCode,\n onChange: e => setParams(_objectSpread(_objectSpread({}, params), {}, {\n redirectCode: e.target.value\n })),\n style: {\n marginBottom: 32\n },\n SelectProps: {},\n children: Object.keys(redirectCodesMap).map(code => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: code,\n children: \"\".concat(redirectCodesMap[code], \" - \").concat(code)\n }, code))\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.redirectUrl'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"url\",\n \"data-cy\": \"redirect-url-input\",\n fullWidth: true,\n autoFocus: true,\n value: params.url,\n helperText: t('router.urlHelperText'),\n style: {\n marginBottom: 32\n },\n onChange: e => {\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n url: e.target.value,\n __disableConfirm: !e.target.value.trim()\n }));\n if (!e.target.value.trim()) {\n setError(t('router.validation.redirectUrlRequired'));\n } else {\n setError('');\n }\n }\n })]]\n });\n}\nConfigRoutingRule.propTypes = {\n params: _propTypes.default.object,\n serviceTypes: _propTypes.default.array,\n setParams: _propTypes.default.func,\n setError: _propTypes.default.func\n};\nConfigRoutingRule.defaultProps = {\n params: {},\n serviceTypes: [{\n name: 'Redirect',\n value: _constant.ROUTING_RULE_TYPES.REDIRECT\n }, {\n name: 'Default - User will see the 404 page',\n value: _constant.ROUTING_RULE_TYPES.NONE\n }],\n setParams: () => {},\n setError: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DeleteDomainAlias;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _confirm = _interopRequireDefault(require(\"../../../confirm\"));\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _node = require(\"../../../contexts/node\");\nvar _util = require(\"../../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DeleteDomainAlias(props) {\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const {\n id,\n domain,\n children,\n teamDid\n } = props;\n const {\n api\n } = (0, _node.useNodeContext)();\n if (domain === window.location.hostname) {\n return '';\n }\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n setLoading(true);\n try {\n await api.deleteDomainAlias({\n input: {\n id,\n domainAlias: domain,\n teamDid\n }\n });\n await (0, _util.sleep)(2000);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setConfirmSetting(null);\n setLoading(false);\n }\n };\n const setting = {\n title: t('router.domainAlias.delete.title'),\n description: t('router.domainAlias.delete.description'),\n confirm: t('common.confirm'),\n onConfirm,\n onCancel\n };\n const onClick = e => {\n e.stopPropagation();\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n edge: \"end\",\n onClick: onClick,\n size: \"small\",\n className: \"rule-action\",\n color: \"error\",\n \"data-cy\": \"action-delete-domain-alias\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {\n style: {\n fontSize: 16\n }\n }), t('router.domainAlias.delete.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nDeleteDomainAlias.propTypes = {\n id: _propTypes.default.string.isRequired,\n domain: _propTypes.default.string.isRequired,\n children: _propTypes.default.any,\n teamDid: _propTypes.default.string\n};\nDeleteDomainAlias.defaultProps = {\n children: null,\n teamDid: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DeleteRule;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _node = require(\"../../../contexts/node\");\nvar _blocklet = require(\"../../../contexts/blocklet\");\nvar _deleteConfirm = _interopRequireDefault(require(\"../../../delete-confirm\"));\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DeleteRule(_ref) {\n let {\n id: ruleId,\n from,\n children\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const teamDid = blocklet.meta.did;\n const siteId = blocklet.site.id;\n const name = from.pathPrefix;\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n setLoading(true);\n try {\n await api.deleteRoutingRule({\n input: {\n id: siteId,\n ruleId,\n teamDid\n }\n });\n } catch (error) {\n _toast.default.error(error.message);\n } finally {\n setConfirmSetting(null);\n setLoading(false);\n }\n };\n const setting = {\n keyName: name,\n title: t('router.rule.delete.title'),\n description: t('router.rule.delete.description', {\n name: \"<b>\".concat(name, \"</b>\")\n }),\n confirmPlaceholder: t('router.rule.delete.confirm_desc', {\n name\n }),\n confirm: t('common.delConfirm'),\n cancel: t('router.rule.delete.cancel'),\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"rule-action\",\n \"data-cy\": \"action-delete-rule\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('router.rule.delete.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_deleteConfirm.default, {\n keyName: confirmSetting.keyName,\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirmPlaceholder: confirmSetting.confirmPlaceholder,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nDeleteRule.propTypes = {\n id: _propTypes.default.string.isRequired,\n from: _propTypes.default.object.isRequired,\n children: _propTypes.default.any\n};\nDeleteRule.defaultProps = {\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = UpdateRule;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _node = require(\"../../../contexts/node\");\nvar _blocklet = require(\"../../../contexts/blocklet\");\nvar _confirm = _interopRequireDefault(require(\"../../../confirm\"));\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _util = require(\"../util\");\nvar _configRoutingRule = _interopRequireDefault(require(\"./config-routing-rule\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction UpdateRule(_ref) {\n let {\n id: ruleId,\n from,\n to,\n children\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const teamDid = blocklet.meta.did;\n const siteId = blocklet.site.id;\n const name = from.pathPrefix;\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async params => {\n try {\n const err = await (0, _util.validateRule)(params, t);\n if (err) {\n throw err;\n }\n setLoading(true);\n const rule = {\n id: ruleId,\n from: {\n pathPrefix: params.pathPrefix.trim()\n },\n to: {\n type: params.type\n }\n };\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT) {\n rule.to.url = params.url;\n rule.to.redirectCode = params.redirectCode;\n }\n await api.updateRoutingRule({\n input: {\n id: siteId,\n rule,\n teamDid\n }\n });\n } catch (error) {\n _toast.default.error(error.message);\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n title: t('router.rule.update.title'),\n // eslint-disable-next-line react/no-unstable-nested-components\n description: (params, setParams, setError) => {\n const setValue = value => {\n const validateResult = (0, _util.validateRule)(value, t);\n if (validateResult) {\n setParams(_objectSpread(_objectSpread({}, value), {}, {\n __disableConfirm: true\n }));\n return;\n }\n setParams(_objectSpread({}, value));\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('router.rule.add.pathPrefix'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"pathPrefix\",\n \"data-cy\": \"path-prefix-input\",\n fullWidth: true,\n autoFocus: true,\n helperText: t('router.rule.add.pathPrefixTip'),\n style: {\n marginBottom: 32\n },\n margin: \"dense\",\n value: params.pathPrefix,\n onChange: e => {\n let disable = false;\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT && !params.url) {\n disable = true;\n }\n if (!e.target.value.trim()) {\n disable = true;\n setError(t('router.validation.pathPrefixRequired'));\n }\n if (!disable) {\n setError('');\n }\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n pathPrefix: e.target.value,\n __disableConfirm: disable\n }));\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_configRoutingRule.default, {\n params: params,\n setParams: setValue,\n setError: setError\n })]\n });\n },\n confirm: t('router.rule.update.confirm'),\n cancel: t('router.rule.update.cancel'),\n color: 'primary',\n params: {\n pathPrefix: name === '/' ? name : name.replace(/^\\/+/, '').replace(/\\/+$/, ''),\n type: to.type || _constant.ROUTING_RULE_TYPES.BLOCKLET,\n interfaceName: to.interfaceName || '',\n redirectCode: to.redirectCode || 302,\n url: to.url || '',\n __disableConfirm: false\n },\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"rule-action\",\n \"data-cy\": \"action-update-rule\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Edit.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('router.rule.update.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n color: confirmSetting.color,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nUpdateRule.propTypes = {\n id: _propTypes.default.string.isRequired,\n from: _propTypes.default.object.isRequired,\n to: _propTypes.default.object.isRequired,\n children: _propTypes.default.any\n};\nUpdateRule.defaultProps = {\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DomainActions;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _actions = _interopRequireDefault(require(\"../../actions\"));\nvar _deleteDomainAlias = _interopRequireDefault(require(\"./action/delete-domain-alias\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DomainActions(_ref) {\n let {\n site,\n domain,\n blocklet\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_actions.default, {\n \"data-cy\": \"domain-actions\",\n actions: [\n // eslint-disable-next-line react/no-unstable-nested-components\n _ref2 => {\n var _blocklet$meta;\n let {\n close\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_deleteDomainAlias.default, {\n id: site.id,\n domain: domain.value,\n teamDid: blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.did,\n children: _ref3 => {\n let {\n open\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n disabled: domain.isProtected,\n dense: true,\n onClick: e => {\n close();\n open(e);\n },\n \"data-cy\": \"action-toggle-block\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n style: {\n minWidth: 24,\n marginRight: 8\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: t('common.delete')\n })]\n }, \"remove\");\n }\n });\n }]\n });\n}\nDomainActions.propTypes = {\n site: _propTypes.default.object.isRequired,\n domain: _propTypes.default.object.isRequired,\n blocklet: _propTypes.default.object.isRequired\n};\nDomainActions.defaultProps = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DomainStatus;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Https = _interopRequireDefault(require(\"@mui/icons-material/Https\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _dot = _interopRequireDefault(require(\"../../dot\"));\nvar _types = require(\"../types\");\nvar _util = require(\"../../util\");\nvar _certificate = _interopRequireDefault(require(\"../../certificate\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DomainStatus(_ref) {\n let {\n domain,\n filters\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n value: name,\n domainStatus\n } = domain;\n if (!(0, _util.shouldCheckDomainStatus)(name)) {\n return null;\n }\n let domainIcon = null;\n let httpsIcon = null;\n const {\n isHttps,\n matchedCert\n } = domainStatus;\n if (!(0, _util.checkIsWildcardDomain)(name)) {\n const {\n dns: {\n resolved,\n ip\n } = {}\n } = domainStatus;\n if (resolved || ip === '127.0.0.1') {\n domainIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('router.domain.verify.ok'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_dot.default, {\n color: \"success\"\n })\n });\n } else {\n domainIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('router.domain.verify.notResolved'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_dot.default, {\n color: \"error\"\n })\n });\n }\n }\n if (isHttps) {\n httpsIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_certificate.default, {\n certificate: matchedCert\n });\n } else {\n httpsIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('router.domain.https.bad'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Https.default, {\n style: {\n color: '#D0021B',\n fontSize: 20,\n marginLeft: 8,\n cursor: 'pointer'\n }\n })\n });\n }\n const items = filters.map(x => {\n if (x === 'domain') {\n return domainIcon;\n }\n if (x === 'http') {\n return httpsIcon;\n }\n return null;\n });\n return /*#__PURE__*/(0, _react.createElement)(_react.Fragment, null, ...items);\n}\nDomainStatus.propTypes = {\n domain: _types.DomainType.isRequired,\n filters: _propTypes.default.array\n};\nDomainStatus.defaultProps = {\n filters: ['domain', 'http']\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = RuleActions;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _Launch = _interopRequireDefault(require(\"@mui/icons-material/Launch\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _SettingsOutlined = _interopRequireDefault(require(\"@mui/icons-material/SettingsOutlined\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _blocklet = require(\"../../contexts/blocklet\");\nvar _deleteRule = _interopRequireDefault(require(\"./action/delete-rule\"));\nvar _updateRule = _interopRequireDefault(require(\"./action/update-rule\"));\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction RuleActions(rule) {\n const {\n locale\n } = (0, _context.useLocaleContext)();\n const {\n blocklet,\n recommendedDomain: domain\n } = (0, _blocklet.useBlockletContext)();\n const href = (0, _util.getAccessUrl)(domain, rule.from.pathPrefix, (0, _util.getBlockletUrlParams)(blocklet, locale));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n title: href,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Launch.default, {})\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_updateRule.default, _objectSpread(_objectSpread({}, rule), {}, {\n children: _ref => {\n let {\n open: o\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: o,\n disabled: rule.isProtected,\n \"data-cy\": \"action-update-rule\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsOutlined.default, {})\n });\n }\n })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_deleteRule.default, _objectSpread(_objectSpread({}, rule), {}, {\n children: _ref2 => {\n let {\n open\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: open,\n disabled: rule.isProtected,\n \"data-cy\": \"action-delete-rule\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {})\n });\n }\n }))]\n });\n}\nRuleActions.propTypes = {\n isProtected: _propTypes.default.bool\n};\nRuleActions.defaultProps = {\n isProtected: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = RuleListWithPermission;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _isUrl = _interopRequireDefault(require(\"is-url\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\nvar _LockIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/LockIcon\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@abtnode/constant\");\nvar _util = require(\"../../util\");\nvar _blocklet = require(\"../../contexts/blocklet\");\nvar _node = require(\"../../contexts/node\");\nvar _permission = require(\"../../permission\");\nvar _line = _interopRequireDefault(require(\"../component/line\"));\nvar _ruleActions = _interopRequireDefault(require(\"./rule-actions\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction RedirectRule(_ref) {\n let {\n domain,\n isHttps,\n toUrl\n } = _ref;\n const scheme = isHttps ? 'https' : 'http';\n let tmpToUrl = toUrl;\n if (!(0, _isUrl.default)(tmpToUrl)) {\n tmpToUrl = \"\".concat(scheme, \"://\").concat(domain).concat(toUrl);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n href: tmpToUrl,\n target: \"_blank\",\n style: {\n fontSize: 14\n },\n underline: \"hover\",\n children: toUrl\n }, tmpToUrl);\n}\nRedirectRule.propTypes = {\n domain: _propTypes.default.string.isRequired,\n toUrl: _propTypes.default.string.isRequired,\n isHttps: _propTypes.default.bool\n};\nRedirectRule.defaultProps = {\n isHttps: false\n};\nfunction RuleList(_ref2) {\n let {\n hasPermission\n } = _ref2;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const theme = (0, _useTheme.default)();\n const {\n blocklet,\n recommendedDomain: domain\n } = (0, _blocklet.useBlockletContext)();\n const rules = blocklet.site.rules.filter(rule => rule.to.did !== blocklet.meta.did).filter(rule => rule.to.type !== _constant.ROUTING_RULE_TYPES.BLOCKLET);\n return rules.map(rule => {\n let avatarName = '';\n if (rule.to.type === _constant.ROUTING_RULE_TYPES.NONE) {\n avatarName = '404';\n } else if (rule.to.type === _constant.ROUTING_RULE_TYPES.REDIRECT) {\n avatarName = rule.to.redirectCode;\n }\n const action = rule.isProtected ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.router.urlLockTooltip'),\n placement: \"top\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n disabled: true,\n size: \"large\",\n style: {\n pointerEvents: 'auto',\n // padding replace to margin, fix the tooltip position\n paddingTop: 0,\n paddingBottom: 0,\n margin: '12px 0'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LockIcon.default, {\n style: {\n fill: theme.palette.text.disabled\n }\n })\n })\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ruleActions.default, _objectSpread({}, rule));\n return [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n py: 2,\n className: \"component-item\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n width: {\n xs: 300,\n md: 400\n },\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n width: 28\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n children: avatarName\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n ml: \"16px\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n style: {\n color: '#222',\n fontSize: 18\n },\n children: [rule.to.type === _constant.ROUTING_RULE_TYPES.NONE && t('common.page404'), rule.to.type === _constant.ROUTING_RULE_TYPES.REDIRECT && t('common.redirect')]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: rule.to.type === _constant.ROUTING_RULE_TYPES.REDIRECT && /*#__PURE__*/(0, _jsxRuntime.jsx)(RedirectRule, {\n domain: domain,\n toUrl: rule.to.url\n })\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n px: 2,\n sx: {\n display: {\n xs: 'none',\n md: 'flex'\n }\n },\n alignItems: \"center\",\n flexGrow: \"1\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n href: (0, _util.getAccessUrl)(domain, rule.from.pathPrefix, (0, _util.getBlockletUrlParams)(blocklet, locale)),\n target: \"_blank\",\n style: {\n fontSize: 18\n },\n underline: \"hover\",\n children: rule.from.pathPrefix\n })\n }, rule.from.pathPrefix), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: hasPermission && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n textAlign: 'right'\n },\n children: action\n })\n }, \"actions\")]\n }, \"group-not-gateway-box\"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_line.default, {})];\n });\n}\nRuleList.propTypes = {\n hasPermission: _propTypes.default.bool\n};\nRuleList.defaultProps = {\n hasPermission: false\n};\nconst RuleListInDaemon = (0, _permission.withPermission)(RuleList, 'mutate_blocklets');\nconst RuleListInService = (0, _permission.withPermission)(RuleList, '', _util.BlockletAdminRoles);\nfunction RuleListWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(RuleListInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(RuleListInDaemon, _objectSpread({}, props));\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.validateSite = exports.validateRule = exports.validatePathPrefix = exports.validateDomain = exports.isSpecialDomain = exports.getInitialBlockletDid = void 0;\nvar _constant = require(\"@abtnode/constant\");\nvar _isPathPrefixEqual = _interopRequireDefault(require(\"@abtnode/util/lib/is-path-prefix-equal\"));\nvar _constant2 = require(\"@blocklet/constant\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n/* eslint-disable import/prefer-default-export */\n\nconst validateRuleByServiceType = (params, localeContext) => {\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT) {\n if (!params.url) {\n return new Error(\"\".concat(localeContext('router.validation.redirectUrlRequired')));\n }\n if (!params.redirectCode) {\n return new Error(\"redirect \".concat(localeContext('router.validation.redirectCodeRequired')));\n }\n } else if (params.type === _constant.ROUTING_RULE_TYPES.BLOCKLET) {\n if (!params.did) {\n return new Error(localeContext('router.validation.didRequired'));\n }\n }\n return null;\n};\nconst validateDomain = (domain, localeContext) => {\n if (!domain) {\n return localeContext('router.domain.validate.emptyTip');\n }\n if (domain.endsWith(_constant.DEFAULT_IP_DOMAIN_SUFFIX)) {\n return localeContext('router.domain.validate.suffixTip', {\n suffix: _constant.DEFAULT_IP_DOMAIN_SUFFIX\n });\n }\n return null;\n};\n\n/**\n * form validator of add site(add domain)\n * @param {Object} params form params\n * @param {Function} localeContext error message\n */\nexports.validateDomain = validateDomain;\nconst validateSite = (params, localeContext) => {\n const validateResult = validateRuleByServiceType(params, localeContext);\n if (validateResult) {\n return validateResult;\n }\n const errMsg = validateDomain(params.domain, localeContext);\n if (errMsg) {\n return new Error(errMsg);\n }\n return null;\n};\n\n/**\n * form validator of add_rule and update_rule\n * @param {Object} params form params\n * @param {Function} localeContext error message\n */\nexports.validateSite = validateSite;\nconst validateRule = (params, localeContext) => {\n const validateResult = validateRuleByServiceType(params, localeContext);\n if (validateResult) {\n return validateResult;\n }\n if (!params.pathPrefix.length) {\n return new Error(localeContext('router.validation.pathPrefixCannotBeEmpty'));\n }\n if (params.pathPrefix.length > 150) {\n return new Error(localeContext('router.validation.pathPrefixTooLong', {\n length: 150\n }));\n }\n return null;\n};\nexports.validateRule = validateRule;\nconst validatePathPrefix = _ref => {\n let {\n params,\n blocklets,\n blocklet: curBlocklet,\n locale = 'en'\n } = _ref;\n // validate children\n if (curBlocklet) {\n let exist = (curBlocklet.children || []).find(x => (0, _isPathPrefixEqual.default)(x.mountPoint, params.pathPrefix));\n if (curBlocklet.meta.group !== 'gateway' && params.pathPrefix === '/') {\n exist = '/';\n }\n if (exist) {\n return {\n zh: \"\\u6302\\u8F7D\\u70B9 \".concat(params.pathPrefix, \" \\u5DF2\\u5B58\\u5728\\uFF0C\\u8BF7\\u4F7F\\u7528\\u5176\\u4ED6\\u6302\\u8F7D\\u70B9\"),\n en: \"The mount point \".concat(params.pathPrefix, \" already exist, please use another mount point\")\n }[locale];\n }\n }\n const blocklet = blocklets.find(item => item.meta.did === params.did);\n if (!blocklet) {\n return '';\n }\n const selected = blocklet.meta.interfaces.find(x => x.type === 'web');\n if (!selected) {\n return '';\n }\n if (selected.prefix !== _constant2.BLOCKLET_DYNAMIC_PATH_PREFIX && params.pathPrefix !== selected.prefix) {\n return {\n zh: \"\\u8BE5 blocklet \\u53EA\\u80FD\\u6302\\u8F7D\\u5728 \".concat(selected.prefix),\n en: \"This blocklet can only be mounted on \".concat(selected.prefix)\n }[locale];\n }\n return '';\n};\n\n/**\n * get initial blocklet did when add rule / update rule / add domain\n * @param {array} blocklets\n */\nexports.validatePathPrefix = validatePathPrefix;\nconst getInitialBlockletDid = blocklets => {\n if (blocklets.length === 0) {\n return '';\n }\n const {\n searchParams\n } = new URL(window.location.href);\n const fromDid = searchParams.get('fromDid');\n if (fromDid) {\n const blocklet = blocklets.find(x => x.meta.did === fromDid);\n if (blocklet) {\n return blocklet.meta.did;\n }\n }\n return blocklets[0].meta.did;\n};\nexports.getInitialBlockletDid = getInitialBlockletDid;\nconst isSpecialDomain = name => {\n const specialDomains = [_constant.DOMAIN_FOR_IP_SITE_REGEXP, _constant.DOMAIN_FOR_DEFAULT_SITE, _constant.DOMAIN_FOR_IP_SITE];\n if (typeof window !== 'undefined' && typeof window.location !== 'undefined') {\n specialDomains.push(window.location.hostname);\n }\n return specialDomains.includes(name);\n};\nexports.isSpecialDomain = isSpecialDomain;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletRuntimeInfo;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Grid = _interopRequireDefault(require(\"@mui/material/Grid\"));\nvar _cpu = _interopRequireDefault(require(\"../monitor/cpu\"));\nvar _memory = _interopRequireDefault(require(\"../monitor/memory\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"cpuHistory\", \"memoryHistory\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletRuntimeInfo(_ref) {\n let {\n blocklet,\n cpuHistory,\n memoryHistory\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const runtimeInfo = blocklet.appRuntimeInfo || {};\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Grid.default, {\n className: \"page-metrics\",\n container: true,\n spacing: 5,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n lg: 4,\n md: 6,\n sm: 6,\n xs: 12,\n children: !!cpuHistory.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_cpu.default, {\n currentLoad: runtimeInfo.cpuUsage || 0,\n history: cpuHistory,\n style: {\n height: 150\n },\n hideDescription: true\n })\n }, \"cpu\"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n lg: 4,\n md: 6,\n sm: 6,\n xs: 12,\n children: !!memoryHistory.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_memory.default, {\n used: runtimeInfo.memoryUsage || 0,\n history: memoryHistory,\n style: {\n height: 150\n },\n hideDescription: true\n })\n }, \"memory\")]\n })\n }));\n}\nBlockletRuntimeInfo.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n cpuHistory: _propTypes.default.arrayOf(_propTypes.default.shape({\n date: _propTypes.default.number,\n value: _propTypes.default.number\n })),\n memoryHistory: _propTypes.default.arrayOf(_propTypes.default.shape({\n date: _propTypes.default.number,\n value: _propTypes.default.number\n }))\n};\nBlockletRuntimeInfo.defaultProps = {\n cpuHistory: [],\n memoryHistory: []\n};\nconst Div = (0, _styled.default)(_Typography.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletStatus;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _dot = _interopRequireDefault(require(\"../dot\"));\nvar _tag = _interopRequireDefault(require(\"../tag\"));\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"status\", \"variant\", \"source\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nconst colors = {\n yellow: '#FFCF71',\n grey: '#888888'\n};\nfunction BlockletStatus(_ref) {\n let {\n status,\n variant,\n source\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const map = {\n added: 'primary',\n waiting: 'warning',\n downloading: 'warning',\n downloaded: 'primary',\n installing: 'warning',\n installed: 'primary',\n starting: 'warning',\n running: 'success',\n stopping: 'warning',\n stopped: 'reverse',\n error: 'error',\n upgrading: 'warning',\n restarting: 'warning',\n corrupted: 'error',\n deleting: 'warning'\n };\n const colorMap = {\n added: colors.grey,\n waiting: colors.yellow,\n downloading: colors.yellow,\n downloaded: colors.grey,\n installing: colors.yellow,\n installed: colors.grey,\n starting: colors.yellow,\n running: 'success',\n stopping: colors.yellow,\n stopped: colors.grey,\n error: 'error',\n upgrading: colors.yellow,\n restarting: colors.yellow,\n corrupted: 'error',\n deleting: colors.yellow\n };\n const inProgress = (0, _util.isInProgress)(status);\n const statusTxt = t(\"blocklet.status.\".concat(source === 'custom' && status === 'installed' ? 'created' : status));\n if (variant === 'dot') {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.statusTip', {\n status: statusTxt\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_dot.default, _objectSpread({\n color: colorMap[status]\n }, rest))\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_tag.default, _objectSpread(_objectSpread({\n type: map[status]\n }, rest), {}, {\n children: [inProgress && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [12, 6],\n color: \"inherit\",\n style: {\n marginRight: 5\n }\n }), statusTxt]\n }));\n}\nBlockletStatus.propTypes = {\n status: _propTypes.default.string.isRequired,\n variant: _propTypes.default.oneOf(['dot', 'tag']),\n source: _propTypes.default.string\n};\nBlockletStatus.defaultProps = {\n variant: 'tag',\n source: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.DomainType = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n// eslint-disable-next-line import/prefer-default-export\nconst DomainType = _propTypes.default.shape({\n href: _propTypes.default.string,\n accessibility: _propTypes.default.shape({\n loading: _propTypes.default.bool,\n accessible: _propTypes.default.bool\n }),\n domainStatus: _propTypes.default.shape({\n isHttps: _propTypes.default.bool,\n matchedCert: _propTypes.default.object\n }),\n dns: _propTypes.default.shape({\n resolved: _propTypes.default.bool,\n ip: _propTypes.default.string\n })\n});\nexports.DomainType = DomainType;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletVersion;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _semver = _interopRequireDefault(require(\"semver\"));\nvar _notistack = require(\"notistack\");\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _ArrowUpward = _interopRequireDefault(require(\"@mui/icons-material/ArrowUpward\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Toast = _interopRequireDefault(require(\"@arcblock/ux/lib/Toast\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@blocklet/constant\");\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _tag = _interopRequireDefault(require(\"../tag\"));\nvar _confirm = _interopRequireDefault(require(\"../confirm\"));\nvar _node = require(\"../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _permission = require(\"../permission\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\", \"checkUpgrade\", \"hasPermission\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction Version(_ref) {\n let {\n blocklet,\n checkUpgrade,\n hasPermission\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const [newVersionBlocklet, setNewVersionBlocklet] = (0, _react.useState)(null);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n (0, _react.useEffect)(() => {\n setNewVersionBlocklet(null);\n if (checkUpgrade && blocklet.mode !== _constant.BLOCKLET_MODES.DEVELOPMENT) {\n api.getLatestBlockletVersion({\n input: {\n did: blocklet.meta.did,\n version: blocklet.meta.version\n }\n }).then(_ref2 => {\n let {\n data\n } = _ref2;\n if (data) {\n const {\n version,\n registryUrl\n } = data;\n if (version && _semver.default.gt(version, blocklet.meta.version)) {\n setNewVersionBlocklet({\n version,\n registryUrl\n });\n }\n }\n })\n // eslint-disable-next-line max-len\n .catch(err => console.error(\"Failed to fetch latest version: \".concat(blocklet.meta.name, \", error: \").concat((0, _util2.formatError)(err)))); // prettier-ignore\n }\n }, [blocklet, checkUpgrade]); // eslint-disable-line\n\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n setLoading(true);\n try {\n const input = {\n did: blocklet.meta.did,\n version: newVersionBlocklet.version,\n storeUrl: newVersionBlocklet.registryUrl || ''\n };\n await (0, _util2.sleep)(2000);\n await api.upgradeBlocklet({\n input\n });\n } catch (err) {\n enqueueSnackbar(\"Blocklet upgrade failed: \".concat((0, _util2.formatError)(err)), {\n autoHideDuration: 5000,\n variant: 'error'\n });\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n title: \"\".concat(t('common.upgrade'), \" \").concat(t('common.blocklet'), \" \").concat((0, _util.getDisplayName)(blocklet)),\n description: t('blocklet.action.upgradeDescription'),\n confirm: t('blocklet.action.confirmUpgrade'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n };\n if (hasPermission && newVersionBlocklet && !(0, _util2.isInProgress)(blocklet.status)) {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, _objectSpread(_objectSpread({}, rest), {}, {\n children: blocklet.meta.version\n })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.updateAvailable', {\n version: newVersionBlocklet.version\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n size: \"small\",\n style: {\n marginLeft: 8\n },\n disabled: loading,\n onClick: () => setConfirmSetting(setting),\n children: loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ArrowUpward.default, {\n style: {\n fontSize: 16,\n color: 'red'\n }\n })\n })\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Toast.default, {\n variant: \"error\",\n message: error,\n onClose: () => setError('')\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, _objectSpread(_objectSpread({}, rest), {}, {\n children: blocklet.meta.version\n }));\n}\nVersion.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n checkUpgrade: _propTypes.default.bool,\n hasPermission: _propTypes.default.bool\n};\nVersion.defaultProps = {\n checkUpgrade: true,\n hasPermission: false\n};\nconst BlockletVersionInDaemon = (0, _permission.withPermission)(Version, 'mutate_blocklets');\nconst BlockletVersionInService = (0, _permission.withPermission)(Version, '', _util2.BlockletAdminRoles);\nfunction BlockletVersion(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletVersionInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletVersionInDaemon, _objectSpread({}, props));\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Certificate;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _Https = _interopRequireDefault(require(\"@mui/icons-material/Https\"));\nvar _Popover = _interopRequireDefault(require(\"@mui/material/Popover\"));\nvar _Card = _interopRequireDefault(require(\"@mui/material/Card\"));\nvar _CardContent = _interopRequireDefault(require(\"@mui/material/CardContent\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _util = require(\"./util\");\nvar _node = require(\"./contexts/node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction Certificate(_ref) {\n let {\n certificate\n } = _ref;\n const [anchorEl, setAnchorEl] = (0, _react.useState)(null);\n const node = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const handlePopoverOpen = event => {\n setAnchorEl(event.currentTarget);\n };\n const handlePopoverClose = () => {\n setAnchorEl(null);\n };\n const open = Boolean(anchorEl);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Https.default, {\n \"aria-owns\": open ? 'mouse-over-popover' : undefined,\n onMouseEnter: handlePopoverOpen,\n onMouseLeave: handlePopoverClose,\n style: {\n color: '#44cdc6',\n fontSize: 20,\n marginLeft: 8,\n cursor: 'pointer'\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Popover.default, {\n id: \"mouse-over-popover\",\n style: {\n pointerEvents: 'none'\n },\n open: open,\n anchorEl: anchorEl,\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'left'\n },\n transformOrigin: {\n vertical: 'top',\n horizontal: 'left'\n },\n onClose: handlePopoverClose,\n disableRestoreFocus: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Card.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_CardContent.default, {\n style: {\n display: 'flex'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n src: \"\".concat(node.imgPrefix, \"/https-certificate-icon.png\"),\n alt: \"certificate icon\",\n style: {\n maxHeight: '100%',\n maxWidth: '100%'\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n style: {\n marginLeft: '16px'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n style: {\n fontWeight: 'bold'\n },\n children: certificate.domain\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: \"\".concat(t('common.issuer'), \": \").concat((0, _get.default)(certificate, 'issuer.commonName', ''))\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: \"\".concat(t('router.cert.issuedOn'), \": \").concat((0, _util.formatToDate)(certificate.validFrom))\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: \"\".concat(t('router.cert.expiryOn'), \": \").concat((0, _util.formatToDate)(certificate.validTo))\n })]\n })]\n })\n })\n })]\n });\n}\nCertificate.propTypes = {\n certificate: _propTypes.default.object\n};\nCertificate.defaultProps = {\n certificate: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ClickToCopy;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _ClickToCopy = _interopRequireDefault(require(\"@arcblock/ux/lib/ClickToCopy\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"children\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ClickToCopy(_ref) {\n let {\n children\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ClickToCopy.default, _objectSpread(_objectSpread({\n tip: t('common.copyTip'),\n copiedTip: t('common.copiedTip')\n }, rest), {}, {\n children: children\n }));\n}\nClickToCopy.propTypes = {\n children: _propTypes.default.any.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ConfirmDialog;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Dialog = _interopRequireDefault(require(\"@mui/material/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogActions = _interopRequireDefault(require(\"@mui/material/DialogActions\"));\nvar _DialogContent = _interopRequireDefault(require(\"@mui/material/DialogContent\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _DialogTitle = _interopRequireDefault(require(\"@mui/material/DialogTitle\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _util = require(\"./util\");\nvar _mobileWidth = _interopRequireDefault(require(\"./hooks/mobile-width\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ConfirmDialog(_ref) {\n let {\n title,\n description,\n showCancel,\n cancel,\n confirm,\n color,\n params: initialParams,\n onCancel,\n onConfirm\n } = _ref;\n const [params, setParams] = (0, _react.useState)(initialParams);\n const [open, setOpen] = (0, _react.useState)(true);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const {\n t: changeLocale\n } = (0, _context.useLocaleContext)();\n const theme = (0, _useTheme.default)();\n const onCallback = async cb => {\n if (typeof cb === 'function') {\n setLoading(true);\n try {\n await cb(params);\n setOpen(false);\n } catch (err) {\n setError((0, _util.formatError)(err));\n console.error(err);\n } finally {\n setLoading(false);\n }\n } else {\n setOpen(false);\n }\n };\n const t = typeof title === 'function' ? title() : title;\n const d = typeof description === 'function' ? description(params, setParams, setError) : description;\n const isBreakpointsDownSm = (0, _useMediaQuery.default)(theme.breakpoints.down('md'));\n const handleClick = e => {\n e.stopPropagation();\n };\n const {\n minWidth\n } = (0, _mobileWidth.default)();\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(StyledDialog, {\n onClick: handleClick,\n fullScreen: isBreakpointsDownSm,\n open: open,\n style: {\n minWidth\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogTitle.default, {\n children: t\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_DialogContent.default, {\n style: {\n minWidth\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: d\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"error\",\n style: {\n width: '100%',\n marginTop: 8\n },\n children: error\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_DialogActions.default, {\n className: \"delete-actions\",\n style: {\n padding: '8px 24px 24px'\n },\n children: [showCancel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n onCallback(onCancel);\n },\n color: \"inherit\",\n \"data-cy\": \"cancel-confirm-dialog\",\n children: cancel || changeLocale('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n onCallback(onConfirm);\n },\n color: color\n // eslint-disable-next-line no-underscore-dangle\n ,\n disabled: params.__disableConfirm || loading,\n variant: \"contained\",\n \"data-cy\": \"submit-confirm-dialog\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), confirm]\n })]\n })]\n });\n}\nConfirmDialog.propTypes = {\n title: _propTypes.default.any.isRequired,\n description: _propTypes.default.any.isRequired,\n // can be a function that renders different content based on params\n showCancel: _propTypes.default.bool,\n cancel: _propTypes.default.string,\n color: _propTypes.default.string,\n confirm: _propTypes.default.string,\n params: _propTypes.default.object,\n // This object holds states managed in the dialog\n onCancel: _propTypes.default.func,\n onConfirm: _propTypes.default.func.isRequired\n};\nConfirmDialog.defaultProps = {\n onCancel: () => {},\n showCancel: true,\n cancel: '',\n confirm: 'Confirm',\n color: 'error',\n params: {}\n};\nconst StyledDialog = (0, _styled.default)(_Dialog.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .delete-actions .Mui-disabled {\\n color: rgba(0, 0, 0, 0.26) !important;\\n box-shadow: none;\\n background-color: rgba(0, 0, 0, 0.12) !important;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.AuditLogContext = exports.AuditLogConsumer = void 0;\nexports.AuditLogProvider = AuditLogProvider;\nexports.useAuditLogContext = useAuditLogContext;\nvar _react = require(\"react\");\nvar _useLocalStorage = _interopRequireDefault(require(\"react-use/lib/useLocalStorage\"));\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _node = require(\"./node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst AuditLogContext = /*#__PURE__*/(0, _react.createContext)({});\nexports.AuditLogContext = AuditLogContext;\nconst {\n Provider,\n Consumer\n} = AuditLogContext;\n\n// eslint-disable-next-line react/prop-types\nexports.AuditLogConsumer = Consumer;\nfunction AuditLogProvider(_ref) {\n let {\n children,\n scope = ''\n } = _ref;\n const {\n api: client\n } = (0, _node.useNodeContext)();\n const [auditLogs, setAuditLogs] = (0, _react.useState)([]);\n const [paging, setPaging] = (0, _react.useState)({\n total: 0,\n pageSize: 20,\n pageCount: 0,\n page: 1\n });\n const [loading, setLoading] = (0, _react.useState)(false);\n const [category, setCategory] = (0, _useLocalStorage.default)(\"audit-log-category-\".concat(scope), 'all');\n const fetchLogs = async function fetchLogs() {\n let {\n page = 1,\n silent = true\n } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (loading) {\n return;\n }\n if (!silent) {\n setLoading(true);\n }\n try {\n // eslint-disable-next-line no-shadow\n const res = await client.getAuditLogs({\n input: {\n paging: {\n page\n },\n category: category === 'all' ? '' : category,\n scope\n }\n });\n setAuditLogs(res.list);\n setPaging(res.paging);\n setLoading(false);\n } catch (err) {\n _toast.default.error(err.message);\n setLoading(false);\n }\n };\n (0, _react.useEffect)(() => {\n fetchLogs({\n page: 1,\n silent: false\n });\n }, []); // eslint-disable-line\n\n (0, _react.useEffect)(() => {\n fetchLogs({\n page: 1,\n silent: false\n });\n }, [category]); // eslint-disable-line\n\n const value = {\n loading,\n fetch: fetchLogs,\n filter: {\n category,\n scope\n },\n categories: [{\n value: 'all',\n label: 'All',\n description: ''\n }, {\n value: 'blocklet',\n label: 'Blocklet Management',\n description: ''\n }, {\n value: 'server',\n label: 'Server Management',\n description: ''\n }, {\n value: 'team',\n label: 'Team Management',\n description: ''\n }, {\n value: 'security',\n label: 'Security',\n description: ''\n }, {\n value: 'certificates',\n label: 'Certificate Management',\n description: ''\n }, {\n value: 'integrations',\n label: 'Integration Management',\n description: ''\n }, {\n value: 'gateway',\n label: 'Gateway',\n description: ''\n }],\n setCategory,\n data: auditLogs,\n paging\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Provider, {\n value: {\n auditLogs: value\n },\n children: children\n });\n}\nfunction useAuditLogContext() {\n const {\n auditLogs\n } = (0, _react.useContext)(AuditLogContext);\n return auditLogs;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.DeletingBlockletProvider = DeletingBlockletProvider;\nexports.useDeletingBlockletContext = useDeletingBlockletContext;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _xorWith = _interopRequireDefault(require(\"lodash/xorWith\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst DeletingBlockletContext = /*#__PURE__*/(0, _react.createContext)({});\nfunction DeletingBlockletProvider(_ref) {\n let {\n children,\n type\n } = _ref;\n const [deletingBlocklets, setDeletingBlocklets] = (0, _react.useState)([]);\n const deletingBlockletsDid = (0, _react.useRef)([]); // use in onActionComplete\n\n /**\n * 添加删除中的 blocklet did\n * @param {String} did 删除中的did\n */\n const addDeletingDid = did => {\n if (!deletingBlockletsDid.current.includes(did)) {\n const reDeleteings = [...deletingBlockletsDid.current, did];\n setDeletingBlocklets(reDeleteings);\n deletingBlockletsDid.current = reDeleteings;\n }\n };\n\n /**\n * 去除删除中的 blocklet did\n * @param {String} did 删除中的did\n */\n const removeDeletingDid = did => {\n if (deletingBlockletsDid.current.includes(did)) {\n const reDeleteings = deletingBlockletsDid.current.filter(d => {\n return d !== did;\n });\n setDeletingBlocklets(reDeleteings);\n deletingBlockletsDid.current = reDeleteings;\n }\n };\n\n /**\n * 将不在的 blocklet id 移出 deleting 数组\n * @param {Array} existDids 已存在的 blocklet did 数组集\n */\n const matchDeletingDid = existDids => {\n const inDeleting = deletingBlocklets.filter(did => existDids.find(e => e === did));\n const needMoveoutDeleting = (0, _xorWith.default)(inDeleting, deletingBlocklets);\n needMoveoutDeleting.forEach(did => removeDeletingDid(did));\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(DeletingBlockletContext.Provider, {\n // eslint-disable-next-line react/jsx-no-constructed-context-values\n value: {\n type,\n deletingBlocklets,\n addDeletingDid,\n removeDeletingDid,\n matchDeletingDid\n },\n children: children\n });\n}\nDeletingBlockletProvider.propTypes = {\n type: _propTypes.default.string,\n children: _propTypes.default.node.isRequired\n};\nDeletingBlockletProvider.defaultProps = {\n type: 'blocklets'\n};\nfunction useDeletingBlockletContext() {\n return (0, _react.useContext)(DeletingBlockletContext);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.NodeProvider = exports.NodeContext = exports.NodeConsumer = void 0;\nexports.useNodeContext = useNodeContext;\nvar _react = require(\"react\");\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst NodeContext = /*#__PURE__*/(0, _react.createContext)({});\nexports.NodeContext = NodeContext;\nconst {\n Provider,\n Consumer\n} = NodeContext;\nexports.NodeConsumer = Consumer;\nexports.NodeProvider = Provider;\nfunction useNodeContext() {\n const {\n node\n } = (0, _react.useContext)(NodeContext);\n return _objectSpread(_objectSpread({}, node), {}, {\n inService: node.type === 'service',\n inDaemon: node.type === 'daemon'\n });\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"SessionContext\", {\n enumerable: true,\n get: function get() {\n return _Session.SessionContext;\n }\n});\nexports.useSessionContext = useSessionContext;\nvar _react = require(\"react\");\nvar _Session = require(\"@arcblock/did-connect/lib/Session\");\n/* eslint-disable object-curly-newline */\n\nfunction useSessionContext() {\n const info = (0, _react.useContext)(_Session.SessionContext);\n return info;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.TeamProvider = exports.TeamContext = exports.TeamConsumer = void 0;\nexports.useTeamContext = useTeamContext;\nvar _react = require(\"react\");\nconst TeamContext = /*#__PURE__*/(0, _react.createContext)({});\nexports.TeamContext = TeamContext;\nconst {\n Provider,\n Consumer\n} = TeamContext;\nexports.TeamConsumer = Consumer;\nexports.TeamProvider = Provider;\nfunction useTeamContext() {\n return (0, _react.useContext)(TeamContext);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = CancelConfirm;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _clickToCopy = _interopRequireDefault(require(\"./click-to-copy\"));\nvar _confirm = _interopRequireDefault(require(\"./confirm\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction CancelConfirm(_ref) {\n let {\n title: _title,\n description: _description,\n confirmPlaceholder,\n cancel,\n confirm,\n params: initialParams,\n onCancel,\n onConfirm,\n keyName\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const confirmSetting = {\n title: () => /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [_title, \" (\".concat(keyName, \")\")]\n }),\n description: (params, setParams) => {\n const setValue = value => {\n // eslint-disable-next-line no-underscore-dangle\n setParams(_objectSpread(_objectSpread({}, value), {}, {\n __disableConfirm: value.__disableConfirm\n }));\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"warning\",\n style: {\n width: '100%'\n },\n children: t('common.notice')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 24,\n marginBottom: 24\n },\n dangerouslySetInnerHTML: {\n __html: _description\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n style: {\n marginBottom: 24\n },\n children: [t('common.click'), \"\\uFF1A\", /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n \"data-cy\": \"click-copy\",\n children: keyName\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: confirmPlaceholder,\n autoComplete: \"off\",\n \"data-cy\": \"delete-confirm-input\",\n variant: \"outlined\",\n fullWidth: true,\n autoFocus: true,\n value: params.inputVal,\n onChange: e => {\n setValue(_objectSpread(_objectSpread({}, params), {}, {\n inputVal: e.target.value,\n __disableConfirm: keyName !== e.target.value\n }));\n }\n })\n })]\n });\n },\n confirm,\n cancel,\n onConfirm,\n onCancel,\n params: _objectSpread({\n inputVal: '',\n __disableConfirm: true\n }, initialParams)\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n });\n}\nCancelConfirm.propTypes = {\n title: _propTypes.default.any.isRequired,\n keyName: _propTypes.default.any.isRequired,\n description: _propTypes.default.any.isRequired,\n // can be a function that renders different content based on params\n confirmPlaceholder: _propTypes.default.any.isRequired,\n cancel: _propTypes.default.string,\n confirm: _propTypes.default.string,\n params: _propTypes.default.object,\n // This object holds states managed in the dialog\n onCancel: _propTypes.default.func,\n onConfirm: _propTypes.default.func.isRequired\n};\nCancelConfirm.defaultProps = {\n onCancel: () => {},\n cancel: '',\n confirm: 'Confirm',\n params: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _reactRouterDom = require(\"react-router-dom\");\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"did\", \"href\", \"external\", \"avatarProps\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction WrappedDidAddress(_ref) {\n let {\n did,\n href,\n external,\n avatarProps\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n // eslint-disable-next-line react/no-unstable-nested-components\n function Content() {\n if (href) {\n if (external) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n target: \"_blank\",\n href: href,\n underline: \"hover\",\n children: did\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRouterDom.Link, {\n to: href,\n children: did\n });\n }\n return did;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, _objectSpread(_objectSpread({\n prepend: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n component: \"span\",\n display: \"flex\",\n mr: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, _objectSpread({\n did: did,\n size: 18\n }, avatarProps))\n })\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Content, {})\n }));\n}\nWrappedDidAddress.propTypes = {\n did: _propTypes.default.string.isRequired,\n to: _propTypes.default.string,\n href: _propTypes.default.string,\n avatarProps: _propTypes.default.object,\n external: _propTypes.default.bool\n};\nWrappedDidAddress.defaultProps = {\n to: '',\n href: '',\n avatarProps: {},\n external: false\n};\nvar _default = WrappedDidAddress;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst color = {\n success: '#3ab39d',\n error: '#D0021B'\n};\nconst defaultSize = '10px';\nconst Dot = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: inline-block;\\n width: \", \";\\n height: \", \";\\n background: \", \";\\n border-radius: 100%;\\n\"])), props => props.size || defaultSize, props => props.size || defaultSize, props => color[props.color] || props.color || color.success);\nvar _default = Dot;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = FormTextInput;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _CircularProgress = _interopRequireDefault(require(\"@mui/material/CircularProgress\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _Close = _interopRequireDefault(require(\"@mui/icons-material/Close\"));\nvar _Done = _interopRequireDefault(require(\"@mui/icons-material/Done\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _required = _interopRequireDefault(require(\"./required\"));\nvar _formWrapper = _interopRequireDefault(require(\"./form-wrapper\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"label\", \"disabled\", \"required\", \"initialValue\", \"onChange\", \"placeholder\", \"style\", \"onSubmit\", \"secure\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction FormTextInput(_ref) {\n let {\n label,\n disabled,\n required,\n initialValue,\n onChange,\n placeholder,\n style,\n onSubmit,\n secure\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const [editing, setEditing] = (0, _react.useState)(false);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [defaultValue, setDefaultValue] = (0, _react.useState)(secure && initialValue === '__encrypted__' ? '' : initialValue);\n const [value, setValue] = (0, _react.useState)(defaultValue);\n const handleSubmit = async () => {\n setLoading(true);\n try {\n const shouldUpdate = await onSubmit(value);\n if (shouldUpdate === false) {\n setValue(defaultValue);\n } else {\n setDefaultValue(value);\n }\n } catch (err) {\n setValue(defaultValue);\n } finally {\n setLoading(false);\n setEditing(false);\n }\n };\n const onInputChange = changeValue => {\n setValue(changeValue);\n onChange(changeValue);\n };\n\n // enter keydown\n const handleKeydown = e => {\n if (e.key === 'Enter') {\n handleSubmit();\n }\n };\n const input = editing ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, _objectSpread({\n style: {\n flex: 1\n },\n fullWidth: true,\n value: value,\n onChange: e => {\n onInputChange(e.target.value);\n },\n autoFocus: true,\n size: \"small\",\n variant: \"outlined\",\n placeholder: placeholder,\n onKeyDown: handleKeydown,\n disabled: disabled,\n type: secure ? 'password' : 'text'\n }, rest)) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n px: 1,\n className: \"form-item-input slot\",\n style: {\n whiteSpace: 'pre-wrap'\n },\n children: secure ? '******' : value\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_formWrapper.default, {\n className: \"form\",\n style: style,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"form-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"form-item-label\",\n children: [label, required && /*#__PURE__*/(0, _jsxRuntime.jsx)(_required.default, {})]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"form-item-body\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"form-item-input\",\n children: input\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"form-item-action\",\n children: editing ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"schema-form-item-confirm\",\n onClick: handleSubmit,\n disabled: disabled || loading,\n size: \"large\",\n children: loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {\n size: 24\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Done.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"schema-form-item-cancel\",\n onClick: () => {\n setValue(defaultValue);\n setEditing(false);\n },\n disabled: disabled || loading,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Close.default, {})\n })]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"schema-form-item-edit\",\n onClick: () => setEditing(true),\n disabled: disabled,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {})\n })\n })]\n })]\n })\n });\n}\nFormTextInput.propTypes = {\n style: _propTypes.default.object,\n onSubmit: _propTypes.default.func,\n onChange: _propTypes.default.func,\n label: _propTypes.default.string,\n initialValue: _propTypes.default.string,\n placeholder: _propTypes.default.string,\n required: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n secure: _propTypes.default.bool\n};\nFormTextInput.defaultProps = {\n style: {},\n onSubmit: () => {},\n onChange: () => {},\n label: '',\n initialValue: '',\n placeholder: '',\n required: false,\n disabled: false,\n secure: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styles = require(\"@mui/styles\");\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction useMobileWidth() {\n const theme = (0, _styles.useTheme)();\n const isBreakpointsDownSm = (0, _useMediaQuery.default)(theme.breakpoints.down('md'));\n const minWidth = isBreakpointsDownSm ? 300 : theme.breakpoints.values.sm;\n return {\n minWidth\n };\n}\nvar _default = useMobileWidth;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useAppLogo;\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _node = require(\"../contexts/node\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction useAppLogo(_ref) {\n var _window$env, _blocklet$meta;\n let {\n blocklet\n } = _ref;\n const {\n inService\n } = (0, _node.useNodeContext)();\n const prefix = ((_window$env = window.env) === null || _window$env === void 0 ? void 0 : _window$env.apiPrefix) || '/';\n const search = \"?v=\".concat(blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.version);\n const logoUrl = (0, _urlJoin.default)(prefix, \"/blocklet/logo/\".concat(inService ? '' : blocklet.meta.did), search);\n return {\n logoUrl\n };\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useAvatar;\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _node = require(\"../contexts/node\");\nvar _util = require(\"../util\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction useAvatar(_ref) {\n var _blocklet$meta;\n let {\n blocklet,\n ancestors = []\n } = _ref;\n const node = (0, _node.useNodeContext)();\n const {\n inService\n } = node;\n const search = \"?v=\".concat(blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.version).concat((0, _util.isDownloading)(blocklet === null || blocklet === void 0 ? void 0 : blocklet.status) ? '~' : '');\n let logoUrl = inService ? (0, _urlJoin.default)(_util.APP_PREFIX, _constant.WELLKNOWN_SERVICE_PATH_PREFIX, '/blocklet/logo-bundle', search) : (0, _urlJoin.default)(node.imgPrefix, 'blocklet.png');\n if (blocklet.source === 'registry' && blocklet.deployedFrom && blocklet.meta.logo) {\n logoUrl = (0, _urlJoin.default)(blocklet.deployedFrom, (0, _util.formatRegistryLogoPath)(blocklet.meta.bundleDid, blocklet.meta.logo), search);\n } else {\n const prefix = window.env.apiPrefix || '/';\n const components = ancestors.concat(blocklet);\n const list = inService ? components.slice(1) : components;\n logoUrl = (0, _urlJoin.default)(prefix, \"/blocklet/logo-bundle\".concat(list.map(x => \"/\".concat(x.meta.did)).join('')), search);\n }\n return {\n logoUrl,\n inService\n };\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useNavigation;\nvar _ahooks = require(\"ahooks\");\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _isNil = _interopRequireDefault(require(\"lodash/isNil\"));\nvar _omit = _interopRequireDefault(require(\"lodash/omit\"));\nvar _omitBy = _interopRequireDefault(require(\"lodash/omitBy\"));\nvar _react = require(\"react\");\nvar _nanoid = require(\"nanoid\");\nvar _material = require(\"@mui/material\");\nvar _parseNavigationFromBlocklet = require(\"@blocklet/meta/lib/parse-navigation-from-blocklet\");\nvar _constant = require(\"@abtnode/constant\");\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst BASE_LINK = '/';\nconst DEFAULT_SECTION = 'header';\n// 默认注入的数据\n// 需要指定一些内置的 id\nconst injectNavigationData = {\n sessionManager: [{\n id: '/sessionManager',\n title: {\n en: 'Manage',\n zh: '管理'\n },\n section: ['sessionManager'],\n icon: 'ion:settings-outline',\n link: \"\".concat(_constant.WELLKNOWN_SERVICE_PATH_PREFIX, \"/admin\"),\n role: ['owner', 'admin'],\n from: 'tmpl'\n }],\n dashboard: [{\n id: '/access',\n title: {\n en: 'Access',\n zh: '访问控制'\n },\n role: ['owner', 'admin', 'member'],\n section: ['dashboard'],\n link: '',\n from: 'tmpl',\n items: [{\n id: 'member',\n title: {\n en: 'Members',\n zh: '成员'\n },\n icon: 'ant-design:user-outlined',\n link: \"\".concat(_constant.WELLKNOWN_SERVICE_PATH_PREFIX, \"/admin/members\"),\n from: 'tmpl'\n }, {\n id: 'passport',\n title: {\n en: 'Passport',\n zh: '通行证'\n },\n icon: 'icon-park-outline:passport',\n link: \"\".concat(_constant.WELLKNOWN_SERVICE_PATH_PREFIX, \"/admin/passports\"),\n from: 'tmpl'\n }]\n }, {\n id: '/dashboard',\n title: 'Blocklet',\n role: ['owner', 'admin'],\n section: ['dashboard'],\n link: '',\n from: 'tmpl',\n items: [{\n id: 'dashboard',\n title: {\n en: 'Dashboard',\n zh: '仪表盘'\n },\n icon: 'ant-design:dashboard-outlined',\n link: \"\".concat(_constant.WELLKNOWN_SERVICE_PATH_PREFIX, \"/admin\"),\n from: 'tmpl'\n }]\n }]\n};\nfunction isSameNavigation(a, b) {\n if (a.section && b.section) {\n return a.section === b.section && a.id === b.id;\n }\n return a.id === b.id;\n}\nfunction useNavigation() {\n const {\n blocklet,\n actions\n } = (0, _blocklet.useBlockletContext)();\n const {\n navigationList,\n components,\n builtinList\n } = (0, _parseNavigationFromBlocklet.parseNavigation)(blocklet, {\n beforeProcess(rawList) {\n const copyList = (0, _cloneDeep.default)(rawList);\n // 注入默认的 dashboard 菜单\n injectNavigationData.dashboard.forEach(item => {\n if (!copyList.some(x => x.id === item.id)) {\n copyList.push(item);\n }\n });\n // 注入默认的 sessionManager 菜单\n if (!copyList.some(x => x.id && (x.section || []).includes('sessionManager'))) {\n copyList.push(...injectNavigationData.sessionManager);\n }\n return copyList;\n }\n });\n const state = (0, _ahooks.useReactive)({\n rawNavigation: (0, _cloneDeep.default)(navigationList),\n activeSection: DEFAULT_SECTION,\n components\n });\n const navigation = (0, _react.useMemo)(() => {\n return (0, _parseNavigationFromBlocklet.nestNavigationList)(state.rawNavigation);\n }, [state.rawNavigation]);\n const treeNavigation = (0, _react.useMemo)(() => {\n const rawData = (0, _parseNavigationFromBlocklet.filterNavigation)(state.rawNavigation, components);\n const navigationWithLink = (0, _parseNavigationFromBlocklet.joinLink)(rawData, components);\n return (0, _parseNavigationFromBlocklet.cleanOrphanNavigation)(navigationWithLink);\n }, [components, state.rawNavigation]);\n function getNavigationFullLink(navigationItem) {\n if (!navigationItem.id) return '';\n const fullList = (0, _parseNavigationFromBlocklet.flatternNavigation)((0, _parseNavigationFromBlocklet.joinLink)(navigation, components));\n const findItem = fullList.find(item => item.id === navigationItem.id);\n // eslint-disable-next-line react/prop-types\n function Uninstalled(_ref) {\n let {\n name\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Chip, {\n label: \"Uninstalled: \".concat(name),\n color: \"error\",\n size: \"small\",\n variant: \"outlined\",\n sx: {\n fontSize: 10,\n height: 20\n }\n });\n }\n if (findItem !== null && findItem !== void 0 && findItem.component) {\n if (!components.some(x => x.name === findItem.component)) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Uninstalled, {\n name: findItem.component\n });\n }\n } else if (findItem.parent) {\n const parent = fullList.find(x => x.id === findItem.parent);\n if (parent !== null && parent !== void 0 && parent.component) {\n if (!components.some(x => x.name === parent.component)) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Uninstalled, {\n name: parent.component\n });\n }\n }\n }\n return findItem === null || findItem === void 0 ? void 0 : findItem.link;\n }\n function updateActiveSection(activeSection) {\n state.activeSection = activeSection;\n }\n function updateNavigationTree(tree) {\n const list = [];\n (0, _parseNavigationFromBlocklet.deepWalk)(tree, (treeItem, parent) => {\n const tmpData = _objectSpread(_objectSpread({}, (0, _omit.default)(treeItem, ['children', 'expand'])), {}, {\n parent: parent === null || parent === void 0 ? void 0 : parent.id\n });\n list.push(tmpData);\n });\n const unchangedNavigation = state.rawNavigation.filter(item => {\n if (!state.activeSection) {\n return false;\n }\n const findItem = list.find(v => isSameNavigation(v, item));\n if (findItem) {\n return !(0, _parseNavigationFromBlocklet.isMatchSection)(findItem.section, state.activeSection);\n }\n return true;\n });\n state.rawNavigation = [...unchangedNavigation, ...list];\n }\n /**\n * 更新导航的一个节点\n * @param {object} itemData 更新的数据\n */\n function updateNavigationItem(itemData) {\n _saveNavigationChange([itemData]);\n }\n function _saveNavigationChange() {\n let changed = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n const updatedNavigation = state.rawNavigation.map(item => {\n const findChanged = changed.find(changeItem => isSameNavigation(_objectSpread(_objectSpread({}, changeItem), {}, {\n section: state.activeSection\n }), item));\n if (findChanged) {\n return _objectSpread(_objectSpread({}, item), findChanged);\n }\n return item;\n });\n state.rawNavigation = updatedNavigation;\n }\n /**\n * 删除一个导航节点\n * @param {string} id 导航的 ID\n */\n function delNavigationItem(id) {\n const relatedNavigationId = state.rawNavigation.filter(item => item.id === id || item.parent === id).map(item => item.id);\n state.rawNavigation = state.rawNavigation.filter(item => !relatedNavigationId.includes(item.id));\n }\n /**\n * 增加一个导航节点\n * @param {object} params 导航数据\n */\n function addNavigationItem() {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const data = _objectSpread(_objectSpread({}, params), {}, {\n // 新增的数据使用随机生成的 nanoid (A-Za-z0-9_-)\n id: (0, _nanoid.nanoid)(),\n section: state.activeSection,\n visible: true\n });\n state.rawNavigation = [...state.rawNavigation, data];\n }\n\n /**\n * 将树状结构转换为数据库存储的导航结构\n * @param {array} tree 树状结构\n * @returns array\n */\n // eslint-disable-next-line no-unused-vars\n function tree2navigation(tree) {\n const list = tree.map(item => {\n const items = item.children || [];\n return {\n title: item.title,\n icon: item.icon,\n link: item.link,\n items: tree2navigation(items),\n section: item.section,\n visible: item.visible,\n parent: item.parent,\n component: item.component,\n role: item.role,\n from: item.from,\n id: item.id\n };\n });\n return list;\n }\n /**\n * 将数据库中的导航数据转换为树状结构\n * @param {array} list 数据库中导航的结构\n * @param {string} baseLink 当前 tree 的 base\n * @returns 树状结构\n */\n function navigation2tree(list) {\n let baseLink = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : BASE_LINK;\n const tree = list.map(item => {\n const findComponent = components.find(componentItem => componentItem.name === item.component);\n const base = (findComponent === null || findComponent === void 0 ? void 0 : findComponent.link) || baseLink;\n const children = item.items || [];\n const {\n link\n } = item;\n return {\n title: item.title,\n subtitle: getNavigationFullLink(item),\n link,\n icon: item.icon,\n children: navigation2tree(children, link || BASE_LINK),\n section: item.section,\n visible: item.visible,\n parent: item.parent,\n component: item.component,\n id: item.id,\n role: item.role,\n from: item.from,\n __base: base\n };\n });\n return tree;\n }\n\n /**\n * 获取指定区块的导航数据\n * @param {string} section 导航所属区块\n * @returns 在指定导航区块内的导航数据\n */\n function getNavigation(section) {\n const copyNavigation = (0, _cloneDeep.default)(navigation);\n const filteredSectionNavigation = copyNavigation.filter(item => {\n return (0, _parseNavigationFromBlocklet.isMatchSection)(item.section, section);\n });\n return navigation2tree(filteredSectionNavigation);\n }\n\n /**\n * 将导航数据保存到后端\n * @param {array} list 需要保存的导航数据\n */\n async function saveNavigationList(list) {\n const data = list.map(item => {\n return (0, _omitBy.default)(item, _isNil.default);\n });\n const formartedData = data.map(item => {\n const tempData = _objectSpread({}, item);\n if (tempData.role && Array.isArray(tempData.role)) {\n tempData.role = JSON.stringify(tempData.role);\n }\n if (tempData.section && Array.isArray(tempData.section)) {\n tempData.section = JSON.stringify(tempData.section);\n }\n if (tempData.title && tempData.title instanceof Object) {\n tempData.title = JSON.stringify(tempData.title);\n }\n if (tempData.link && tempData.link instanceof Object) {\n tempData.link = JSON.stringify(tempData.link);\n }\n return tempData;\n });\n // .filter((item) => item.from !== ' tmpl');\n await actions.configNavigations(formartedData);\n }\n async function resetNavigation() {\n await saveNavigationList([]);\n state.rawNavigation = (0, _cloneDeep.default)(builtinList);\n }\n return {\n state,\n navigation: treeNavigation,\n components,\n getNavigationFullLink,\n updateActiveSection,\n updateNavigationItem,\n delNavigationItem,\n addNavigationItem,\n updateNavigationTree,\n getNavigation,\n saveNavigationList,\n resetNavigation\n };\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Feedback;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _material = require(\"@mui/material\");\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"@emotion/react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n/** @jsxImportSource @emotion/react */\n\nfunction Feedback(_ref) {\n let {\n infos\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const infoStr = infos.map(x => \"* \".concat(x.label, \": \").concat(x.value)).join('\\n');\n const feedbackUrl = new URL('https://github.com/blocklet/blocklet-site/issues/new');\n feedbackUrl.searchParams.set('title', '[Feedback]');\n feedbackUrl.searchParams.set('body', \"<!-- [Enter feedback here] -->\\n\\n\\n\\n<!--\\nDocument Details\\n\".concat(infoStr, \"\\n* Page: \").concat(window.location.href, \"\\n-->\\n\"));\n return (0, _jsxRuntime.jsx)(_material.Box, {\n sx: {\n mx: {\n xs: 0,\n md: 2\n }\n },\n children: (0, _jsxRuntime.jsx)(_Link.default, {\n sx: {\n color: 'text.primary'\n },\n target: \"_blank\",\n href: feedbackUrl.href,\n rel: \"noreferrer\",\n style: {\n textDecoration: 'underline'\n },\n children: t('common.reportIssue')\n })\n });\n}\nFeedback.propTypes = {\n infos: _propTypes.default.arrayOf(_propTypes.default.shape({\n label: _propTypes.default.string,\n value: _propTypes.default.string\n }))\n};\nFeedback.defaultProps = {\n infos: []\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _useInterval = _interopRequireDefault(require(\"react-use/lib/useInterval\"));\nvar _util = require(\"../util\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction Clock() {\n const [currentTime, setCurrentTime] = (0, _react.useState)(+new Date());\n (0, _useInterval.default)(() => {\n setCurrentTime(+new Date());\n }, 1000);\n return (0, _util.formatTime)(currentTime, 'MMMM Do YYYY, h:mm:ss a');\n}\nvar _default = Clock;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DownloadLog;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _dayjs = _interopRequireDefault(require(\"dayjs\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Download = _interopRequireDefault(require(\"@mui/icons-material/Download\"));\nvar _FormControl = _interopRequireDefault(require(\"@mui/material/FormControl\"));\nvar _Select = _interopRequireDefault(require(\"@mui/material/Select\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _formatName = _interopRequireDefault(require(\"@abtnode/util/lib/format-name\"));\nvar _node = require(\"../contexts/node\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst DAYS = [1, 7];\nfunction DownloadLog(_ref) {\n let {\n id,\n name\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n restApi,\n inService\n } = (0, _node.useNodeContext)();\n const [showDialog, setShowDialog] = (0, _react.useState)(false);\n const [isDownloading, setIsDownloading] = (0, _react.useState)(false);\n const [days, setDays] = (0, _react.useState)(1);\n const onDownload = async () => {\n if (isDownloading) {\n return;\n }\n try {\n setIsDownloading(true);\n const logId = inService ? '' : \"/\".concat(id);\n const res = await restApi.get(\"/download/log\".concat(logId, \"?days=\").concat(days), {\n responseType: 'blob'\n });\n const href = URL.createObjectURL(res.data);\n const link = document.createElement('a');\n link.href = href;\n link.setAttribute('download', \"\".concat((0, _formatName.default)(name || id), \".\").concat((0, _dayjs.default)().format('YYYYMMDDHHmmss'), \".log.zip\"));\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(href);\n setIsDownloading(false);\n } catch (error) {\n setIsDownloading(false);\n _toast.default.error(error.message);\n }\n };\n const onDaysChange = e => {\n setDays(e.target.value);\n };\n return [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n style: {\n gap: 16\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n \"data-cy\": \"download-logs\",\n variant: \"outlined\",\n onClick: () => setShowDialog(true),\n disabled: isDownloading,\n children: [isDownloading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Download.default, {\n fontSize: \"small\",\n style: {\n transform: 'translateY(2px)'\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 0.5,\n children: t('common.download')\n })]\n })\n }), showDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n open: true,\n onClose: () => {\n setShowDialog(false);\n },\n disableEscapeKeyDown: true,\n title: t('common.download'),\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n \"data-cy\": \"download-logs\",\n variant: \"outlined\",\n onClick: () => onDownload(),\n disabled: isDownloading,\n children: [isDownloading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 0.5,\n children: t('common.confirm')\n })]\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mb: 2,\n display: \"flex\",\n justifyContent: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControl.default, {\n size: \"small\",\n fullWidth: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Select.default, {\n value: days,\n onChange: onDaysChange,\n children: DAYS.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: x,\n children: t(\"log.lastDays.\".concat(x))\n }, x))\n })\n })\n })\n })];\n}\nDownloadLog.propTypes = {\n id: _propTypes.default.string.isRequired,\n name: _propTypes.default.string\n};\nDownloadLog.defaultProps = {\n name: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.LogTerminal = void 0;\nexports.LogTerminalGroup = LogTerminalGroup;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Button = _interopRequireDefault(require(\"@mui/material/Button\"));\nvar _ButtonGroup = _interopRequireDefault(require(\"@mui/material/ButtonGroup\"));\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\nvar _Terminal = _interopRequireDefault(require(\"@arcblock/terminal/lib/Terminal\"));\nvar _clock = _interopRequireDefault(require(\"./clock\"));\nvar _node = require(\"../contexts/node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nconst _excluded = [\"name\", \"logId\", \"types\", \"initialData\", \"prepend\", \"postpend\"],\n _excluded2 = [\"logFile\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/**\n * 按 level/destination 分类的一组 terminal\n */\nfunction LogTerminalGroup(_ref) {\n let {\n name,\n logId,\n types,\n initialData,\n prepend,\n postpend\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n ws: {\n useSubscription\n }\n } = (0, _node.useNodeContext)();\n const logTypeLabels = {\n info: 'Info',\n error: 'Error',\n access: 'Access',\n stdout: 'stdout',\n stderr: 'stderr'\n };\n const isMobile = (0, _useMediaQuery.default)(theme => theme.breakpoints.down('md'));\n const [currentType, setCurrentType] = (0, _react.useState)(types[0]);\n const [logFiles, setLogFiles] = (0, _react.useState)();\n const terminalRefs = (0, _react.useRef)({});\n\n // 组件挂载时, 写入初始数据\n (0, _react.useEffect)(() => {\n types.forEach(type => {\n const terminal = terminalRefs.current[type];\n if (terminal) {\n terminal.write(\"Collecting \".concat(type, \" logs for \").concat(name, \"...\"));\n terminal.write('\\r\\n\\r\\n');\n initialData.forEach(item => terminal.write(item));\n }\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // 监听 log 数据, 写入 terminal\n useSubscription(\"log.\".concat(logId), log => {\n if (!logFiles) {\n setLogFiles(log.logFiles || {});\n }\n const terminal = terminalRefs.current[log.level];\n if (terminal) {\n terminal.write(log.data.replace(/.\\n/g, p => p === '\\r\\n' ? p : \"\".concat(p[0], \"\\r\\n\\r\\n\")));\n terminal.write('\\r\\n\\r\\n');\n }\n }, []);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(LogTerminalGroupRoot, _objectSpread(_objectSpread({}, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"log-terminal-group-head\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"log-terminal-group-head-start\",\n children: [prepend, /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonGroup.default, {\n variant: \"outlined\",\n size: isMobile ? 'small' : 'medium',\n children: types.map(type => {\n const props = type === currentType ? {\n variant: 'contained'\n } : {};\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, _objectSpread(_objectSpread({}, props), {}, {\n onClick: () => setCurrentType(type),\n children: logTypeLabels[type]\n }), type);\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"log-terminal-group-head-end\",\n children: postpend\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"log-terminal-group-terminals\",\n children: types.map(type => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(LogTerminal, {\n ref: _ref2 => {\n terminalRefs.current[type] = _ref2;\n },\n logFile: logFiles === null || logFiles === void 0 ? void 0 : logFiles[type],\n style: {\n visibility: type === currentType ? 'visible' : 'hidden'\n }\n }, type);\n })\n })]\n }));\n}\nLogTerminalGroup.propTypes = {\n // log name, 比如: blocklet display name\n name: _propTypes.default.string.isRequired,\n // 比如: abtnode | blocklet-services | blocklet-<did>\n logId: _propTypes.default.string.isRequired,\n // 日志类型, info/error 或 stdin/stdout/access\n types: _propTypes.default.arrayOf(_propTypes.default.string),\n // 写入 terminal 的初始数据\n initialData: _propTypes.default.arrayOf(_propTypes.default.string),\n prepend: _propTypes.default.node,\n postpend: _propTypes.default.node\n};\nLogTerminalGroup.defaultProps = {\n types: ['error', 'info', 'access', 'stdout', 'stderr'],\n initialData: [],\n prepend: null,\n postpend: null\n};\nconst LogTerminalGroupRoot = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n .log-terminal-group-head {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding-bottom: 16px;\\n }\\n\\n .log-terminal-group-head-start {\\n flex: 0 0 auto;\\n display: flex;\\n align-items: center;\\n gap: 16px;\\n \", \" {\\n flex-direction: column;\\n align-items: start;\\n }\\n }\\n\\n .log-terminal-group-head-end {\\n flex: 0 0 auto;\\n display: flex;\\n align-items: center;\\n gap: 16px;\\n \", \" {\\n flex-direction: column;\\n align-items: start;\\n }\\n }\\n .log-terminal-group-terminals {\\n flex: 1;\\n position: relative;\\n overflow: hidden;\\n > * {\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n }\\n }\\n\"])), props => props.theme.breakpoints.down('md'), props => props.theme.breakpoints.down('md'));\nconst LogTerminal = /*#__PURE__*/(0, _react.forwardRef)((_ref3, ref) => {\n let {\n logFile\n } = _ref3,\n rest = _objectWithoutProperties(_ref3, _excluded2);\n const terminalStyle = {\n width: '100%',\n boxSizing: 'border-box',\n height: '100%'\n };\n const terminalOptions = {\n theme: {\n background: '#2C313C',\n foreground: '#EEEEEE'\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(LogTerminalRoot, _objectSpread(_objectSpread({}, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"log-terminal-top\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_clock.default, {}), logFile && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: logFile\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"log-terminal-container\",\n style: {\n position: 'relative'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Terminal.default, {\n ref: ref,\n style: terminalStyle,\n options: terminalOptions\n })\n })]\n }));\n});\nexports.LogTerminal = LogTerminal;\nLogTerminal.propTypes = {\n logFile: _propTypes.default.string\n};\nLogTerminal.defaultProps = {\n logFile: ''\n};\nconst LogTerminalRoot = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n .log-terminal-top {\\n flex: 0 0 auto;\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n flex-wrap: wrap;\\n padding: 8px;\\n font-size: 14px;\\n color: aquamarine;\\n background: darkgray;\\n word-break: break-word;\\n }\\n .log-terminal-container {\\n flex: 1;\\n height: 100%;\\n padding: 8px;\\n overflow: hidden;\\n background: #2c313c;\\n }\\n\\n .xterm-viewport::-webkit-scrollbar {\\n width: 10px;\\n }\\n .xterm-viewport::-webkit-scrollbar-track {\\n opacity: 0;\\n }\\n .xterm-viewport::-webkit-scrollbar-thumb {\\n min-height: 20px;\\n background-color: #ffffff20;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MonitCard;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Card = _interopRequireDefault(require(\"@mui/material/Card\"));\nvar _CardContent = _interopRequireDefault(require(\"@mui/material/CardContent\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction MonitCard(_ref) {\n let {\n style,\n title,\n value,\n graph,\n description,\n hideDescription\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledCard, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_CardContent.default, {\n style: _objectSpread({}, style),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n sx: {\n fontSize: 14\n },\n color: \"text.secondary\",\n children: title\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n variant: \"h5\",\n component: \"div\",\n mt: 1,\n children: value\n }), graph, !hideDescription && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n sx: {\n fontSize: 12,\n marginTop: 3\n },\n color: \"text.secondary\",\n children: description\n })]\n })\n });\n}\nMonitCard.propTypes = {\n style: _propTypes.default.object,\n title: _propTypes.default.node,\n value: _propTypes.default.node,\n graph: _propTypes.default.node,\n description: _propTypes.default.node,\n hideDescription: _propTypes.default.bool\n};\nMonitCard.defaultProps = {\n style: {},\n title: null,\n value: null,\n graph: null,\n description: null,\n hideDescription: false\n};\nconst StyledCard = (0, _styled.default)(_Card.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .card-content {\\n height: 150px;\\n }\\n\\n .card-sparkline {\\n flex: 2;\\n display: flex;\\n position: relative;\\n *[hidden] {\\n display: none;\\n }\\n }\\n .sparkline {\\n stroke: \", \";\\n fill: \", \"1A;\\n }\\n .tooltip {\\n position: absolute;\\n background: rgba(0, 0, 0, 0.7);\\n color: #fff;\\n padding: 2px 5px;\\n font-size: 12px;\\n white-space: nowrap;\\n z-index: 9999;\\n }\\n .sparkline--cursor {\\n stroke: orange;\\n }\\n\\n .sparkline--spot {\\n fill: red;\\n stroke: red;\\n }\\n\"])), props => props.theme.palette.primary.main, props => props.theme.palette.primary.main);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = CpuMonitor;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _ahooks = require(\"ahooks\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Sparkline = _interopRequireDefault(require(\"@arcblock/ux/lib/Sparkline\"));\nvar _card = _interopRequireDefault(require(\"./card\"));\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst formatNumber = x => \"\".concat(x, \"%\");\nfunction CpuMonitor(_ref) {\n let {\n physicalCores,\n currentLoad,\n history,\n hideDescription\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const svgRef = (0, _react.useRef)(null);\n const tooltipRef = (0, _react.useRef)(null);\n const tooltipState = (0, _ahooks.useReactive)({\n style: {\n top: 0,\n left: 0\n },\n hidden: true,\n textContent: ''\n });\n const [cpuDom, setCpuDom] = (0, _react.useState)();\n const size = (0, _ahooks.useSize)(cpuDom) || {};\n const sparklineOptions = {\n onmousemove(event, dataPoint) {\n const date = (0, _util.formatTime)(dataPoint.date, 'HH:mm');\n const left = '80px';\n tooltipState.textContent = \"\".concat(date, \": \").concat(formatNumber(dataPoint.value));\n tooltipState.style.top = '-30px';\n tooltipState.style.left = left;\n tooltipState.hidden = false;\n },\n onmouseout() {\n tooltipState.hidden = true;\n }\n };\n (0, _react.useEffect)(() => {\n // if (!loading) {\n // // see: https://github.com/alibaba/hooks/issues/838\n // }\n setTimeout(() => {\n setCpuDom(document.querySelector('.cpu-sparkline'));\n setTimeout(() => {\n if (svgRef.current) {\n // sparkline(svgRef.current, downloads, sparklineOptions);\n (0, _Sparkline.default)(svgRef.current, history || [], sparklineOptions);\n }\n }, 400);\n });\n }, [history]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_card.default, {\n title: t('common.cpu'),\n value: \"\".concat(Math.floor(currentLoad || 0), \"%\"),\n graph: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"card-sparkline cpu-sparkline\",\n style: {\n marginTop: 16\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"svg\", {\n ref: svgRef,\n className: \"sparkline\",\n width: size.width || 100,\n height: 30,\n strokeWidth: \"2\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: \"tooltip\",\n ref: tooltipRef,\n hidden: tooltipState.hidden,\n style: _objectSpread({}, tooltipState.style),\n children: tooltipState.textContent\n })]\n }),\n description: \"\".concat(t('system.cores'), \": \").concat(physicalCores || 0),\n hideDescription: hideDescription\n });\n}\nCpuMonitor.propTypes = {\n physicalCores: _propTypes.default.number,\n currentLoad: _propTypes.default.number,\n history: _propTypes.default.array,\n hideDescription: _propTypes.default.bool\n};\nCpuMonitor.defaultProps = {\n physicalCores: 0,\n currentLoad: 0,\n history: [],\n hideDescription: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MemoryMonitor;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\nvar _ahooks = require(\"ahooks\");\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Sparkline = _interopRequireDefault(require(\"@arcblock/ux/lib/Sparkline\"));\nvar _card = _interopRequireDefault(require(\"./card\"));\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst formatNumber = x => (0, _filesize.default)(x);\nfunction MemoryMonitor(_ref) {\n let {\n instanceCount,\n title,\n total,\n used,\n history,\n hideDescription\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const svgRef = (0, _react.useRef)(null);\n const tooltipRef = (0, _react.useRef)(null);\n const tooltipState = (0, _ahooks.useReactive)({\n style: {\n top: 0,\n left: 0\n },\n hidden: true,\n textContent: ''\n });\n const [dom, setDom] = (0, _react.useState)();\n const size = (0, _ahooks.useSize)(dom) || {};\n const showPercent = !!total;\n const available = total - used;\n const memoryPercent = showPercent ? \"(\".concat(Math.floor(used / total * 100), \"%)\") : '';\n const memoryList = [];\n if (instanceCount) {\n memoryList.push({\n title: t('system.instances'),\n metric: instanceCount\n });\n }\n memoryList.push({\n title: t('system.used'),\n metric: (0, _filesize.default)(used)\n });\n if (showPercent) {\n memoryList.push({\n title: t('system.free'),\n metric: (0, _filesize.default)(available)\n }, {\n title: t('system.total'),\n metric: (0, _filesize.default)(total)\n });\n }\n const sparklineOptions = {\n onmousemove(event, dataPoint) {\n const date = (0, _util.formatTime)(dataPoint.date, 'HH:mm');\n const left = '80px';\n tooltipState.textContent = \"\".concat(date, \": \").concat(formatNumber(dataPoint.value));\n tooltipState.style.top = '-30px';\n tooltipState.style.left = left;\n tooltipState.hidden = false;\n },\n onmouseout() {\n tooltipState.hidden = true;\n }\n };\n (0, _react.useEffect)(() => {\n // if (!loading) {\n // // see: https://github.com/alibaba/hooks/issues/838\n // }\n setTimeout(() => {\n setDom(document.querySelector('.mem-sparkline'));\n setTimeout(() => {\n if (svgRef.current) {\n (0, _Sparkline.default)(svgRef.current, history, sparklineOptions);\n }\n }, 400);\n });\n }, [history]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_card.default, {\n title: title || t('common.memory'),\n value: \"\".concat((0, _filesize.default)(Math.floor(used || 0)), \" \").concat(memoryPercent),\n graph: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"card-sparkline mem-sparkline\",\n style: {\n marginTop: 16\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"svg\", {\n ref: svgRef,\n className: \"sparkline\",\n width: size.width || 100,\n height: 30,\n strokeWidth: \"2\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: \"tooltip\",\n ref: tooltipRef,\n hidden: tooltipState.hidden,\n style: _objectSpread({}, tooltipState.style),\n children: tooltipState.textContent\n })]\n }),\n description: memoryList.map((x, index) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n sx: {\n marginLeft: index === 0 ? 0 : 2\n },\n children: [x.title, \": \", x.metric]\n }, x.title)),\n hideDescription: hideDescription\n });\n}\nMemoryMonitor.propTypes = {\n title: _propTypes.default.string,\n instanceCount: _propTypes.default.number,\n total: _propTypes.default.number,\n used: _propTypes.default.number,\n history: _propTypes.default.array,\n hideDescription: _propTypes.default.bool\n};\nMemoryMonitor.defaultProps = {\n title: '',\n instanceCount: null,\n total: null,\n used: null,\n history: [],\n hideDescription: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportTag;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Close = _interopRequireDefault(require(\"@mui/icons-material/Close\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"passport\", \"onDelete\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction PassportTag(props) {\n const {\n passport,\n onDelete\n } = props,\n rest = _objectWithoutProperties(props, _excluded);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Tag, _objectSpread(_objectSpread({}, rest), {}, {\n children: [passport.title || passport.name, ' ', !!onDelete && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Close.default, {\n \"data-cy\": \"delete-issuance\",\n className: \"delete\",\n onClick: onDelete\n })]\n }));\n}\nPassportTag.propTypes = {\n passport: _propTypes.default.object.isRequired,\n onDelete: _propTypes.default.func\n};\nPassportTag.defaultProps = {\n onDelete: null\n};\nconst Tag = _styled.default.span(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: inline-flex;\\n padding: 2px 8px;\\n background: \", \";\\n border-radius: 100vw;\\n font-weight: 400;\\n font-size: 12px;\\n line-height: 22px;\\n color: #fff;\\n align-items: center;\\n .delete {\\n font-size: 1em;\\n margin-left: 6px;\\n cursor: pointer;\\n }\\n\"])), props => props.theme.palette.primary.main);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Permission;\nexports.withPermission = withPermission;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _session = require(\"./contexts/session\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction Permission(_ref) {\n let {\n permission,\n role,\n component,\n children\n } = _ref;\n const {\n session\n } = (0, _session.useSessionContext)();\n let can = true;\n const permissions = [].concat(permission).filter(Boolean);\n const roles = [].concat(role).filter(Boolean);\n if (permissions.length) {\n const userPermissions = session.user && session.user.permissions || [];\n can = permissions.some(p => userPermissions.includes(p));\n }\n if (can && roles.length) {\n can = roles.includes(session.user.role);\n }\n if (typeof component === 'function') {\n return component(can);\n }\n if (typeof children === 'function') {\n return children(can);\n }\n if (can) {\n return component || children || null;\n }\n return null;\n}\nfunction withPermission(Component, permissionName, role) {\n return function WithPermission(props) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Permission, {\n permission: permissionName,\n role: role,\n children: hasPermission => /*#__PURE__*/(0, _jsxRuntime.jsx)(Component, _objectSpread(_objectSpread({}, props), {}, {\n hasPermission: hasPermission\n }))\n });\n };\n}\nPermission.propTypes = {\n permission: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),\n role: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),\n component: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.node]),\n children: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.node])\n};\nPermission.defaultProps = {\n permission: '',\n role: '',\n component: null,\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = RelativeTime;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _prettyMsI18n = _interopRequireDefault(require(\"pretty-ms-i18n\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _util = require(\"./util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction RelativeTime(_ref) {\n let {\n value\n } = _ref;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n if (!value) {\n return '-';\n }\n const prettyOption = {\n locale: locale === 'zh' ? 'zh_CN' : 'zh_US',\n compact: true\n };\n const valTime = new Date(value).getTime();\n const now = Date.now();\n if (valTime > now) {\n const time = (0, _prettyMsI18n.default)(valTime - now, prettyOption);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: (0, _util.formatToDatetime)(value),\n placement: \"top-end\",\n enterTouchDelay: 0,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: t('common.afterTime', {\n time\n })\n })\n });\n }\n const time = (0, _prettyMsI18n.default)(now - valTime, prettyOption);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: (0, _util.formatToDatetime)(value),\n placement: \"top-end\",\n enterTouchDelay: 0,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: t('common.timeAgo', {\n time\n })\n })\n });\n}\nRelativeTime.propTypes = {\n value: _propTypes.default.any\n};\nRelativeTime.defaultProps = {\n value: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddStore;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styles = require(\"@mui/styles\");\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _ListItem = _interopRequireDefault(require(\"@mui/material/ListItem\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _node = require(\"../contexts/node\");\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst useStyles = (0, _styles.makeStyles)(theme => ({\n addMenuItemRoot: {\n justifyContent: 'center',\n color: theme.palette.primary.main,\n lineHeight: '3.2'\n }\n}));\nfunction AddStore(_ref) {\n let {\n disabled,\n storeList,\n teamDid,\n onAdd\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [disable, setDisable] = (0, _react.useState)(true);\n const [open, setOpen] = (0, _react.useState)(false);\n const [url, setUrl] = (0, _react.useState)('');\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const classes = useStyles();\n const onConfirm = async () => {\n setLoading(true);\n try {\n const {\n isNew,\n decoded\n } = (0, _util.isNewStoreUrl)(url, storeList);\n if (!isNew) {\n throw new Error(t('store.blockletRegistry.haveSameRegistry'));\n }\n await api.addBlockletStore({\n input: {\n teamDid,\n url: decoded\n }\n });\n onAdd(decoded);\n setOpen(false);\n } catch (err) {\n const errMsg = \"\".concat(t('store.blockletRegistry.addFailed'), \" \").concat((0, _util.formatError)(err));\n setError(errMsg);\n } finally {\n setLoading(false);\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_ListItem.default, {\n button: true,\n disabled: disabled,\n className: classes.addMenuItemRoot,\n onClick: () => {\n setOpen(true);\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n font: true\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n variant: \"inherit\",\n children: t('store.blockletRegistry.addRegistry')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('store.blockletRegistry.addRegistry'),\n fullWidth: true,\n maxWidth: \"md\",\n open: open,\n onClose: () => setOpen(false),\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n setOpen(false);\n },\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n onConfirm();\n },\n color: \"primary\",\n \"data-cy\": \"install-blocklet-next-step\",\n disabled: loading || !url || disable,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.confirm')]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n paddingTop: 12,\n overflowY: 'hidden'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('store.blockletRegistry.registryUrl'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"url\",\n fullWidth: true,\n value: url,\n onChange: e => {\n setError(null);\n let isDisabled = false;\n if (!e.target.value.trim()) {\n isDisabled = true;\n }\n if (!e.target.value.trim()) {\n setError(t('store.blockletRegistry.registryUrlEmpty'));\n }\n setUrl(e.target.value);\n setDisable(isDisabled);\n },\n disabled: loading,\n onKeyPress: e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n if (!e.target.value.trim()) {\n setError(t('store.blockletRegistry.registryUrlEmpty'));\n } else {\n onConfirm();\n }\n }\n }\n })\n })\n })\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n style: {\n width: '100%'\n },\n children: error\n })]\n })]\n });\n}\nAddStore.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n disabled: _propTypes.default.bool,\n storeList: _propTypes.default.array,\n onAdd: _propTypes.default.func\n};\nAddStore.defaultProps = {\n disabled: false,\n storeList: [],\n onAdd: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DeleteStore;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _DeleteOutline = _interopRequireDefault(require(\"@mui/icons-material/DeleteOutline\"));\nvar _node = require(\"../contexts/node\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _deleteConfirm = _interopRequireDefault(require(\"../delete-confirm\"));\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DeleteStore(_ref) {\n let {\n store,\n teamDid,\n onDelete\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const theme = (0, _useTheme.default)();\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n try {\n setLoading(true);\n await api.deleteBlockletStore({\n input: {\n teamDid,\n url: store.url\n }\n });\n if (onDelete && typeof onDelete === 'function') {\n onDelete();\n }\n } catch (err) {\n _toast.default.error(\"Remove Blocklet Store Error: \".concat((0, _util.formatError)(err)));\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n keyName: store.url,\n title: t('store.blockletRegistry.deleteRegistry'),\n description: t('store.blockletRegistry.deleteDesc', {\n name: \"<b>\".concat(store.url, \"</b>\"),\n color: theme.palette.error.main\n }),\n confirmPlaceholder: t('store.blockletRegistry.confirmDesc', {\n name: store.url\n }),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n disabled: loading,\n onClick: onMenuItemClick,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DeleteOutline.default, {})\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_deleteConfirm.default, {\n keyName: confirmSetting.keyName,\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirmPlaceholder: confirmSetting.confirmPlaceholder,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nDeleteStore.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n store: _propTypes.default.object.isRequired,\n onDelete: _propTypes.default.func\n};\nDeleteStore.defaultProps = {\n onDelete: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = StoreItem;\nvar _styles = require(\"@mui/styles\");\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _ListItemSecondaryAction = _interopRequireDefault(require(\"@mui/material/ListItemSecondaryAction\"));\nvar _Launch = _interopRequireDefault(require(\"@mui/icons-material/Launch\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _delete = _interopRequireDefault(require(\"./delete\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n/* eslint-disable react/jsx-one-expression-per-line */\n\nconst useStyles = (0, _styles.makeStyles)(() => ({\n buttonText: {\n textTransform: 'none !important'\n },\n iconRoot: {\n minWidth: 24\n },\n menuName: {\n display: 'flex',\n flexDirection: 'column',\n marginRight: '100px',\n '& span': {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap'\n }\n }\n}));\nfunction StoreItem(_ref) {\n let {\n teamDid,\n store,\n onDelete\n } = _ref;\n const classes = useStyles();\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: classes.menuName,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"span\",\n variant: \"subtitle1\",\n style: {\n fontWeight: '400'\n },\n children: store.name\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n className: \"url\",\n component: \"span\",\n variant: \"inherit\",\n children: \"\".concat(store.url)\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ListItemSecondaryAction.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: e => {\n e.stopPropagation();\n window.open(store.url);\n },\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Launch.default, {})\n }), !store.protected && /*#__PURE__*/(0, _jsxRuntime.jsx)(_delete.default, {\n store: store,\n onDelete: onDelete,\n teamDid: teamDid\n })]\n })]\n });\n}\nStoreItem.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n store: _propTypes.default.shape({\n name: _propTypes.default.string.isRequired,\n url: _propTypes.default.string.isRequired,\n protected: _propTypes.default.bool\n }).isRequired,\n onDelete: _propTypes.default.func\n};\nStoreItem.defaultProps = {\n onDelete: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Check = _interopRequireDefault(require(\"@mui/icons-material/Check\"));\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _Clear = _interopRequireDefault(require(\"@mui/icons-material/Clear\"));\nvar _SaveAlt = _interopRequireDefault(require(\"@mui/icons-material/SaveAlt\"));\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\nvar _Filter = _interopRequireDefault(require(\"@mui/icons-material/Filter\"));\nvar _FirstPage = _interopRequireDefault(require(\"@mui/icons-material/FirstPage\"));\nvar _LastPage = _interopRequireDefault(require(\"@mui/icons-material/LastPage\"));\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\nvar _ChevronLeft = _interopRequireDefault(require(\"@mui/icons-material/ChevronLeft\"));\nvar _Search = _interopRequireDefault(require(\"@mui/icons-material/Search\"));\nvar _ArrowDropDown = _interopRequireDefault(require(\"@mui/icons-material/ArrowDropDown\"));\nvar _Remove = _interopRequireDefault(require(\"@mui/icons-material/Remove\"));\nvar _ViewColumn = _interopRequireDefault(require(\"@mui/icons-material/ViewColumn\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nvar _default = {\n Add: _Add.default,\n Check: _Check.default,\n Delete: _Delete.default,\n Edit: _Edit.default,\n Clear: _Clear.default,\n DetailPanel: _ChevronRight.default,\n Filter: _Filter.default,\n FirstPage: _FirstPage.default,\n LastPage: _LastPage.default,\n NextPage: _ChevronRight.default,\n PreviousPage: _ChevronLeft.default,\n Search: _Search.default,\n ResetSearch: _Clear.default,\n SortArrow: _ArrowDropDown.default,\n Export: _SaveAlt.default,\n ThirdStateCheck: _Remove.default,\n ViewColumn: _ViewColumn.default\n};\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst TableStyle = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiPaper-root {\\n box-shadow: none !important;\\n border: none !important;\\n border-radius: 0 !important;\\n background: transparent;\\n }\\n .MuiToolbar-root {\\n background: transparent;\\n padding-left: 0;\\n display: none;\\n }\\n\\n &.show-pagination {\\n .MuiTablePagination-toolbar {\\n display: flex;\\n }\\n }\\n\\n .MuiTableHead-root th {\\n min-width: 100px;\\n background: transparent;\\n }\\n\\n .MuiTable-root {\\n overflow-y: hidden;\\n }\\n .MuiTableRow-root {\\n border: none !important;\\n }\\n\\n .MuiTableCell-root {\\n padding-right: 16px;\\n &:last-of-type {\\n padding-right: 0;\\n }\\n }\\n\\n /* @material-table/core@next \\u517C\\u5BB9 mui v5, \\u4F46 pagination \\u6837\\u5F0F\\u4F3C\\u4E4E\\u6709\\u4E9B\\u95EE\\u9898, \\u6682\\u5730\\u5B9A\\u5236\\u4E0B\\u9762\\u7684\\u6837\\u5F0F\\u4FEE\\u590D, \\u540E\\u9762\\u8003\\u8651\\u5F03\\u7528 material-table */\\n .MuiTablePagination-selectLabel,\\n .MuiTablePagination-displayedRows {\\n display: none;\\n }\\n .MuiTypography-caption {\\n display: inline-block;\\n }\\n .MuiTablePagination-selectLabel + .MuiInputBase-root {\\n margin-right: 8px;\\n }\\n\"])));\nvar _default = TableStyle;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Wrapped;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"children\", \"style\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction Wrapped(_ref) {\n let {\n children,\n style\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, _objectSpread(_objectSpread({\n style: style\n }, rest), {}, {\n children: children\n }));\n}\nWrapped.propTypes = {\n children: _propTypes.default.any.isRequired,\n style: _propTypes.default.object\n};\nWrapped.defaultProps = {\n style: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MemberActions;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _ForbidLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ForbidLoginIcon\"));\nvar _AllowLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/AllowLoginIcon\"));\nvar _team = require(\"../../contexts/team\");\nvar _actions = _interopRequireDefault(require(\"../../actions\"));\nvar _issuePassport = _interopRequireDefault(require(\"./issue-passport\"));\nvar _toggleUserApproval = _interopRequireDefault(require(\"./toggle-user-approval\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction MemberActions(_ref) {\n let {\n user,\n onIssuePassport\n } = _ref;\n const {\n teamDid,\n roles\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [enablePassportIssuance, setEnablePassportIssuance] = (0, _react.useState)(false);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_actions.default, {\n \"data-cy\": \"member-actions\",\n actions: [{\n icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n fontSize: \"small\"\n }),\n text: t('team.passport.issue'),\n 'data-cy': 'action-issue-passport',\n onClick: e => {\n e.stopPropagation();\n setEnablePassportIssuance(true);\n }\n },\n // eslint-disable-next-line react/no-unstable-nested-components\n _ref2 => {\n let {\n close\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_toggleUserApproval.default, {\n user: user,\n children: _ref3 => {\n let {\n open: o\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n dense: true,\n onClick: e => {\n e.stopPropagation();\n close();\n o(e);\n },\n \"data-cy\": \"action-toggle-block\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n style: {\n minWidth: 24,\n marginRight: 8\n },\n children: user.approved ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ForbidLoginIcon.default, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_AllowLoginIcon.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: user.approved ? t('team.member.forbidLogin') : t('team.member.allowLogin')\n })]\n });\n }\n }, \"toggle-approval\");\n }]\n }), enablePassportIssuance && /*#__PURE__*/(0, _jsxRuntime.jsx)(_issuePassport.default, {\n teamDid: teamDid,\n ownerDid: user.did,\n roles: roles,\n onCancel: () => setEnablePassportIssuance(false),\n onSuccess: () => {\n onIssuePassport();\n setEnablePassportIssuance(false);\n }\n })]\n });\n}\nMemberActions.propTypes = {\n user: _propTypes.default.object.isRequired,\n onIssuePassport: _propTypes.default.func\n};\nMemberActions.defaultProps = {\n onIssuePassport: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MemberList;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Loop = _interopRequireDefault(require(\"@mui/icons-material/Loop\"));\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _PersonIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/PersonIcon\"));\nvar _ExternalIssuerIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ExternalIssuerIcon\"));\nvar _Datatable = _interopRequireWildcard(require(\"@arcblock/ux/lib/Datatable\"));\nvar _RelativeTime = _interopRequireDefault(require(\"@arcblock/ux/lib/RelativeTime\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _util = require(\"../../util\");\nvar _inviteMember = _interopRequireDefault(require(\"./invite-member\"));\nvar _transferNode = _interopRequireDefault(require(\"./transfer-node\"));\nvar _member = _interopRequireDefault(require(\"./member\"));\nvar _invitations = _interopRequireDefault(require(\"./invitations\"));\nvar _actions = _interopRequireDefault(require(\"./actions\"));\nvar _util2 = require(\"./util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst ROLE_ALL = '$all';\nconst ROLE_NONE = '$none';\nconst getCount = (counts, name) => {\n const item = counts.find(x => x.key === name);\n return (item === null || item === void 0 ? void 0 : item.value) || 0;\n};\nconst isFromExternal = (user, teamIssuerDid) => {\n const list = user.passports || [];\n if (!list.length) {\n return false;\n }\n return !list.some(z => {\n var _z$issuer;\n return ((_z$issuer = z.issuer) === null || _z$issuer === void 0 ? void 0 : _z$issuer.id) === teamIssuerDid;\n });\n};\nfunction SimpleInfo(_ref) {\n let {\n user\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const main = /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"member-block\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"member-avatar\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n src: user.avatar,\n size: 24,\n did: user.did,\n shape: \"circle\",\n style: {\n borderRadius: '100%',\n overflow: 'hidden'\n }\n }), !user.approved && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"did\", {\n className: \"badge-block\"\n }), user.isFromExternal && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('team.passport.externalPassport'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 1,\n className: \"icon\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExternalIssuerIcon.default, {})\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"member-text\",\n children: user.fullName\n })]\n });\n return user.approved ? main : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('team.member.forbidLoginDescription'),\n children: main\n })\n });\n}\nSimpleInfo.propTypes = {\n user: _propTypes.default.object.isRequired\n};\nfunction MemberList(_ref2) {\n let {\n type\n } = _ref2;\n const {\n teamDid,\n teamIssuerDid,\n invitations,\n roles,\n refresh,\n enablePassportIssuance,\n endpoint,\n api\n } = (0, _team.useTeamContext)();\n const {\n inService,\n ws: {\n useSubscription\n }\n } = (0, _node.useNodeContext)();\n const {\n t,\n locale\n } = (0, _react.useContext)(_context.LocaleContext);\n const [showInviteMember, setShowInviteMember] = (0, _react.useState)(false);\n const [showTransferMember, setShowTransferMember] = (0, _react.useState)(false);\n const [showInviting, setShowInviting] = (0, _react.useState)(false);\n const [memberDialog, setMemberDialog] = (0, _react.useState)(false); // member, inviting\n const [loading, setLoading] = (0, _react.useState)(false);\n const [users, setUsers] = (0, _react.useState)([]);\n const [rowCount, setRowCount] = (0, _react.useState)();\n const [userCounts, setUserCounts] = (0, _react.useState)([]);\n const durableKey = \"members-\".concat(teamDid);\n const tableDurableData = (0, _Datatable.getDurableData)(durableKey);\n const [search, setSearch] = (0, _react.useState)({\n role: ROLE_ALL,\n searchText: tableDurableData.searchText || '',\n hideBlocked: false,\n pageSize: tableDurableData.rowsPerPage || 10,\n page: tableDurableData.page ? tableDurableData.page + 1 : 1\n });\n const sideList = (roles || []).map(x => ({\n name: x.name,\n title: x.title,\n num: getCount(userCounts, x.name)\n }));\n sideList.unshift({\n name: ROLE_ALL,\n title: 'All Members',\n num: getCount(userCounts, ROLE_ALL)\n });\n sideList.push({\n name: ROLE_NONE,\n title: 'Other',\n num: getCount(userCounts, ROLE_NONE)\n });\n const getUsers = () => {\n const query = {};\n if (search.hideBlocked) {\n query.approved = true;\n }\n query.role = search.role;\n if (search.searchText) {\n query.search = search.searchText;\n }\n setLoading(true);\n api.getUsers({\n query,\n paging: {\n page: search.page,\n pageSize: search.pageSize\n }\n }).then(res => {\n setLoading(false);\n (res.users || []).forEach(x => {\n x.isFromExternal = isFromExternal(x, teamIssuerDid);\n x.avatar = (0, _util2.parseAvatar)(x.avatar, teamDid, inService);\n\n // for backwards compatibility\n x.passports = (x.passports || []).filter(y => y.issuer);\n });\n setUsers(res.users || []);\n setRowCount(res.paging.total);\n }).catch(err => {\n setLoading(false);\n _toast.default.error(err.message);\n });\n };\n const getUserCounts = () => {\n api.getUsersCountPerRole().then(res => {\n setUserCounts(res.counts || []);\n }).catch(err => {\n _toast.default.error(err.message);\n });\n };\n const handleUserChange = data => {\n if (data.teamDid === teamDid) {\n getUsers();\n getUserCounts();\n }\n };\n (0, _react.useEffect)(() => {\n getUsers();\n }, [\"\".concat(search.hideBlocked, \"-\").concat(search.role, \"-\").concat(search.page, \"-\").concat(search.pageSize, \"-\").concat(search.searchText)]); //eslint-disable-line\n\n // user counts\n (0, _react.useEffect)(() => {\n getUserCounts();\n }, []); //eslint-disable-line\n\n useSubscription(_constant.EVENTS.USER_UPDATED, handleUserChange, [search]);\n useSubscription(_constant.EVENTS.USER_ADDED, handleUserChange, [search]);\n const isInvitationEnabled = enablePassportIssuance;\n const columns = [{\n label: t('common.name'),\n name: 'fullName',\n options: {\n customBodyRenderLite: rawIndex => {\n const x = users[rawIndex];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n \"data-cy\": \"member-name-\".concat(x.fullName),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(SimpleInfo, {\n user: x\n })\n }, x.did);\n }\n }\n }, {\n label: t('common.address'),\n name: 'did',\n options: {\n customBodyRender: e => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, {\n size: 14,\n copyable: false,\n children: e\n });\n }\n }\n }, {\n label: t('team.member.lastLogin'),\n name: 'lastLoginAt',\n options: {\n customBodyRender: e => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_RelativeTime.default, {\n value: e,\n locale: locale\n });\n }\n }\n }, {\n label: t('common.actions'),\n name: '',\n width: 100,\n align: 'center',\n verticalKeyAlign: 'center',\n options: {\n customBodyRenderLite: rawIndex => {\n const x = users[rawIndex];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_actions.default, {\n user: x,\n onIssuePassport: () => setMemberDialog(_objectSpread(_objectSpread({}, x), {}, {\n initTab: 'issuances'\n }))\n })\n });\n }\n }\n }];\n const customButtons = [];\n if (isInvitationEnabled) {\n customButtons.push( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"outlined\",\n style: {\n flexShrink: 0,\n marginRight: 16\n },\n color: \"primary\",\n size: \"small\",\n onClick: () => {\n setShowInviting(true);\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_PersonIcon.default, {\n style: {\n height: '1em',\n marginRight: 4\n }\n }), t('common.inviting'), invitations.length ? \" (\".concat(invitations.length, \")\") : '']\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n style: {\n flexShrink: 0,\n marginRight: 16\n },\n variant: \"contained\",\n edge: \"end\",\n color: \"primary\",\n size: \"small\",\n \"data-cy\": \"invite-member\",\n onClick: () => setShowInviteMember(true),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: '1.3em',\n marginRight: 4\n }\n }), t('team.invite')]\n })\n }));\n if (type === 'server') {\n customButtons.push( /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n role: \"owner\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n style: {\n flexShrink: 0\n },\n variant: \"contained\",\n edge: \"end\",\n color: \"error\",\n size: \"small\",\n \"data-cy\": \"invite-member\",\n onClick: () => setShowTransferMember(true),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Loop.default, {\n style: {\n fontSize: '1.3em',\n marginRight: 4\n }\n }), t('team.transferNode.name')]\n })\n }));\n }\n }\n const onRoleChange = role => {\n if (loading) {\n return;\n }\n setSearch(x => _objectSpread(_objectSpread({}, x), {}, {\n role,\n hideBlocked: false,\n searchText: '',\n page: 1\n }));\n };\n const onHideBlockedChange = value => {\n setSearch(x => _objectSpread(_objectSpread({}, x), {}, {\n hideBlocked: value,\n page: 1\n }));\n };\n const onTableChange = _ref3 => {\n let {\n page,\n rowsPerPage,\n searchText\n } = _ref3;\n if (search.pageSize !== rowsPerPage) {\n setSearch(x => _objectSpread(_objectSpread({}, x), {}, {\n pageSize: rowsPerPage,\n page: 1\n }));\n } else if (search.page !== page + 1) {\n setSearch(x => _objectSpread(_objectSpread({}, x), {}, {\n page: page + 1\n }));\n } else if (search.searchText !== searchText) {\n setSearch(x => _objectSpread(_objectSpread({}, x), {}, {\n searchText,\n page: 1\n }));\n }\n };\n const tableOptions = {\n sort: false,\n download: false,\n filter: false,\n print: false,\n expandableRowsOnClick: true,\n onRowClick(e, _ref4) {\n let {\n dataIndex\n } = _ref4;\n const x = users[dataIndex];\n setMemberDialog(x);\n },\n page: search.page - 1,\n rowsPerPage: search.pageSize,\n count: rowCount,\n searchDebounceTime: 600\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"main\",\n display: \"flex\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"left\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"tabs\",\n children: sideList.map(x => /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"tab \".concat(search.role === x.name ? 'active' : ''),\n onClick: () => onRoleChange(x.name),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: \"text\",\n children: x.title\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: (0, _classnames.default)('badge', {\n 'is-rect': x.num > 999\n }),\n children: x.num\n })]\n }, x.name))\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"right\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Datatable.default, {\n className: \"main-table\",\n verticalKeyWidth: 100,\n locale: locale,\n durable: durableKey,\n durableKeys: ['page', 'rowsPerPage'],\n title: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"table-toolbar-left\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Checkbox.default, {\n disabled: loading,\n color: \"primary\",\n checked: search.hideBlocked,\n onChange: e => onHideBlockedChange(e.target.checked)\n }),\n label: t('team.member.hideBlockedMember')\n })\n }),\n data: users,\n columns: columns,\n customButtons: customButtons,\n options: tableOptions,\n loading: loading,\n onChange: onTableChange\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('common.inviting'),\n onClose: () => setShowInviting(false),\n open: showInviting,\n maxWidth: \"lg\",\n fullWidth: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_invitations.default, {})\n }), memberDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(_member.default, {\n onCancel: () => setMemberDialog(null),\n userDid: memberDialog.did,\n initTab: memberDialog.initTab\n }), showInviteMember && /*#__PURE__*/(0, _jsxRuntime.jsx)(_inviteMember.default, {\n teamDid: teamDid,\n endpoint: endpoint,\n roles: roles,\n onCancel: () => setShowInviteMember(false),\n onSuccess: () => {\n refresh();\n setShowInviteMember(false);\n }\n }), showTransferMember && /*#__PURE__*/(0, _jsxRuntime.jsx)(_transferNode.default, {\n teamDid: teamDid,\n endpoint: endpoint,\n roles: roles,\n onCancel: () => setShowTransferMember(false),\n onSuccess: () => {\n refresh();\n setShowTransferMember(false);\n }\n })]\n });\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .main {\\n .left {\\n width: 168px;\\n flex-shrink: 0;\\n margin-right: 65px;\\n .tabs {\\n padding-top: 16px;\\n .tab {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n padding: 8px 16px;\\n transition: background 0.4s;\\n\\n width: 168px;\\n height: 36px;\\n border-radius: 8px;\\n\\n cursor: pointer;\\n user-select: none;\\n\\n &:nth-child(n + 2) {\\n margin-top: 24px;\\n }\\n\\n &.active {\\n background: #f2f2f2;\\n }\\n\\n &:hover {\\n background: #f2f2f2;\\n }\\n\\n .text {\\n font-weight: 400;\\n font-size: 16px;\\n line-height: 19px;\\n\\n color: #222222;\\n }\\n\\n .badge {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n width: 20px;\\n height: 20px;\\n border-radius: 100%;\\n color: #fff;\\n background: #666666;\\n font-size: 10px;\\n font-weight: 400;\\n &.is-rect {\\n width: auto;\\n border-radius: 8px;\\n padding: 0 4px;\\n }\\n }\\n }\\n }\\n @media (max-width: \", \"px) {\\n display: none;\\n }\\n }\\n .right {\\n flex-grow: 1;\\n }\\n }\\n\\n .member-block {\\n display: flex;\\n justify-content: flex-start;\\n align-items: center;\\n .member-avatar {\\n position: relative;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n }\\n .member-text {\\n margin-left: 10px;\\n }\\n .badge-block {\\n width: 14px;\\n height: 14px;\\n position: absolute;\\n right: -4px;\\n top: -4px;\\n background: #ff5757;\\n border-radius: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n &::after {\\n content: '';\\n width: 6px;\\n height: 2px;\\n background: #fefefe;\\n }\\n }\\n }\\n\\n .table-toolbar-left {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n padding: 7px 0;\\n label span:first-child {\\n display: flex;\\n }\\n }\\n\"])), props => props.theme.breakpoints.values.md);\nMemberList.propTypes = {\n type: _propTypes.default.oneOf(['server', 'blocklet']).isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Invitations;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _CircularProgress = _interopRequireDefault(require(\"@mui/material/CircularProgress\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _Datatable = _interopRequireDefault(require(\"@arcblock/ux/lib/Datatable\"));\nvar _RelativeTime = _interopRequireDefault(require(\"@arcblock/ux/lib/RelativeTime\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction Invitations() {\n const {\n api: client,\n inService\n } = (0, _node.useNodeContext)();\n const {\n t,\n locale\n } = (0, _react.useContext)(_context.LocaleContext);\n const {\n teamDid,\n invitations,\n refresh,\n endpoint\n } = (0, _team.useTeamContext)();\n const [delConfirm, setDelConfirm] = (0, _react.useState)(null);\n const [loading, setLoading] = (0, _react.useState)(false);\n const deleteInvitation = async _ref => {\n let {\n inviteId\n } = _ref;\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n await client.deleteInvitation({\n input: {\n teamDid,\n inviteId\n }\n });\n refresh();\n await (0, _util.sleep)(800);\n } catch (error) {\n console.error(error);\n } finally {\n setLoading(false);\n setDelConfirm(null);\n }\n };\n const onCancel = () => {\n setLoading(false);\n setDelConfirm(null);\n };\n const getLink = column => {\n if (!endpoint) {\n return '';\n }\n return (0, _util.getInviteLink)({\n inviteId: column.inviteId,\n endpoint\n });\n };\n const columns = [{\n label: t('team.inviting.link'),\n name: 'inviteId',\n options: {\n sort: false,\n customBodyRenderLite: rawIndex => {\n const d = invitations[rawIndex];\n if (!endpoint) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {\n size: 16\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n children: getLink(d)\n });\n }\n }\n }, {\n label: t('common.role'),\n name: 'role',\n widtn: 70\n }, {\n label: t('common.remark'),\n name: 'remark',\n options: {\n customBodyRender: e => {\n return e || '--';\n }\n }\n }, {\n label: t('team.inviting.inviter'),\n name: 'inviter.fullName',\n options: {\n sort: false,\n customBodyRender: (e, _ref2) => {\n var _d$inviter;\n let {\n rowIndex\n } = _ref2;\n const d = invitations[rowIndex];\n return d === null || d === void 0 ? void 0 : (_d$inviter = d.inviter) === null || _d$inviter === void 0 ? void 0 : _d$inviter.fullName;\n }\n }\n }, {\n label: t('common.expires'),\n name: 'expireDate',\n options: {\n customBodyRender: e => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_RelativeTime.default, {\n value: e,\n locale: locale\n });\n }\n }\n }, {\n label: t('common.actions'),\n name: '',\n width: 100,\n align: 'center',\n options: {\n sort: false,\n customBodyRenderLite: rawIndex => {\n const item = invitations[rawIndex];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: () => setDelConfirm({\n title: t('team.inviting.delete.title'),\n description: t('team.inviting.delete.description', {\n link: getLink(item)\n }),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm: () => deleteInvitation(item),\n onCancel\n }),\n size: \"small\",\n color: \"error\",\n variant: \"text\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {\n style: {\n fontSize: '1.2em'\n }\n }), t('common.delete')]\n })\n });\n }\n }\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [invitations.length ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Datatable.default, {\n locale: locale,\n data: [...invitations],\n columns: columns,\n verticalKeyWidth: 100,\n options: {\n download: false,\n filter: false,\n print: false\n }\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n }), delConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: delConfirm.title,\n description: delConfirm.description,\n confirm: delConfirm.confirm,\n cancel: delConfirm.cancel,\n params: delConfirm.params,\n onConfirm: delConfirm.onConfirm,\n onCancel: delConfirm.onCancel\n })]\n });\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n margin-top: -20px;\\n\"])));\nInvitations.propTypes = {};\nInvitations.defaultProps = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = InviteMember;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Select = _interopRequireDefault(require(\"@mui/material/Select\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _InputLabel = _interopRequireDefault(require(\"@mui/material/InputLabel\"));\nvar _FormControl = _interopRequireDefault(require(\"@mui/material/FormControl\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\nvar _node = require(\"../../contexts/node\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction InviteMember(_ref) {\n let {\n teamDid,\n roles,\n onCancel,\n onSuccess,\n onError,\n endpoint\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [activeStep, setActiveStep] = (0, _react.useState)(0);\n const [inviteInfo, setInviteInfo] = (0, _react.useState)('');\n const [role, setRole] = (0, _react.useState)('');\n const [remark, setRemark] = (0, _react.useState)('');\n const onCreate = async () => {\n if (!role) {\n setError(t('team.member.error.passportEmpty'));\n return;\n }\n const trimRemark = remark.trim();\n setError(null);\n setLoading(true);\n try {\n const {\n inviteInfo: info\n } = await api.createMemberInvitation({\n input: {\n teamDid,\n role,\n remark: trimRemark\n }\n });\n setInviteInfo(info);\n setActiveStep(1);\n } catch (err) {\n const errMsg = (0, _util.formatError)(err);\n setError(errMsg);\n onError(err);\n } finally {\n setLoading(false);\n }\n };\n const steps = [{\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_FormControl.default, {\n style: {\n width: '100%'\n },\n variant: \"outlined\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_InputLabel.default, {\n children: t('common.passport')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Select.default, {\n \"data-cy\": \"invite-member-select-role\",\n value: role,\n onChange: e => {\n setError(null);\n setRole(e.target.value);\n },\n fullWidth: true,\n label: t('common.passport'),\n disabled: loading,\n onKeyPress: e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n onCreate();\n }\n },\n children: roles.filter(d => d.name !== 'owner').map(r => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: r.name,\n \"data-cy\": \"invite-member-select-option-\".concat(r.name),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: r.title || r.name\n })\n }, r.name))\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 20,\n marginBottom: 10\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.remark'),\n autoComplete: \"off\",\n variant: \"outlined\",\n fullWidth: true,\n style: {\n marginBottom: 8\n },\n value: remark,\n onChange: e => {\n setError(null);\n setRemark(e.target.value);\n },\n disabled: loading,\n \"data-cy\": \"invite-member-input-remark\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 20,\n marginBottom: 10\n }\n })]\n }),\n cancel: t('common.cancel'),\n confirm: t('team.member.inviteDialog.createInviteLink'),\n onCancel,\n onConfirm: onCreate\n }, {\n // eslint-disable-next-line react/no-unstable-nested-components\n body: () => {\n const link = (0, _util.getInviteLink)({\n inviteId: inviteInfo.inviteId,\n endpoint\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Bold, {\n children: t('team.member.inviteDialog.createSuccessTip', {\n expireDate: (0, _util.formatToDatetime)(inviteInfo.expireDate)\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: '40px'\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n children: link\n })]\n });\n },\n confirm: t('common.confirm'),\n onConfirm: onSuccess\n }];\n const step = steps[activeStep];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('common.invite'),\n fullWidth: true,\n open: true,\n showCloseButton: false,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [step.cancel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: step.onCancel,\n color: \"inherit\",\n children: step.cancel\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: step.onConfirm,\n color: \"primary\",\n disabled: loading || !role,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), step.confirm]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: typeof step.body === 'function' ? step.body() : step.body\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n children: error\n })]\n });\n}\nInviteMember.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onError: _propTypes.default.func,\n roles: _propTypes.default.array,\n endpoint: _propTypes.default.string\n};\nInviteMember.defaultProps = {\n onError: () => {},\n roles: [],\n endpoint: ''\n};\nconst Bold = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n font-size: 16px;\\n font-weight: bold;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = IssuePassport;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Select = _interopRequireDefault(require(\"@mui/material/Select\"));\nvar _InputLabel = _interopRequireDefault(require(\"@mui/material/InputLabel\"));\nvar _FormControl = _interopRequireDefault(require(\"@mui/material/FormControl\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _node = require(\"../../contexts/node\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction IssuePassport(_ref) {\n let {\n teamDid,\n ownerDid,\n roles,\n onCancel,\n onSuccess,\n onError,\n showOwnerPassport\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [role, setRole] = (0, _react.useState)('');\n const onCreate = async () => {\n if (!role) {\n setError(t('team.member.error.passportEmpty'));\n return;\n }\n setError(null);\n setLoading(true);\n try {\n await api.createPassportIssuance({\n input: {\n teamDid,\n name: role,\n ownerDid\n }\n });\n onSuccess();\n } catch (err) {\n const errMsg = (0, _util.formatError)(err);\n setError(errMsg);\n onError(err);\n } finally {\n setLoading(false);\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('team.passport.issue'),\n fullWidth: true,\n open: true,\n onClick: e => e.stopPropagation(),\n onClose: onCancel,\n disableEscapeKeyDown: true,\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onCancel,\n color: \"inherit\",\n size: \"small\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: onCreate,\n color: \"primary\",\n size: \"small\",\n disabled: loading || !role,\n variant: \"contained\",\n autoFocus: true,\n \"data-cy\": \"issue-passport-create-btn\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('team.passport.issuance.create.title')]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_FormControl.default, {\n style: {\n width: '100%'\n },\n variant: \"outlined\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_InputLabel.default, {\n children: t('common.passport')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Select.default, {\n \"data-cy\": \"issue-passport-select-passport\",\n value: role,\n onChange: e => {\n setError(null);\n setRole(e.target.value);\n },\n fullWidth: true,\n label: t('common.passport'),\n disabled: loading,\n onKeyPress: e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n onCreate();\n }\n },\n children: roles.filter(d => showOwnerPassport || d.name !== 'owner').map(r => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: r.name,\n \"data-cy\": \"issue-passport-select-option-\".concat(r.name),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: r.title || r.name\n })\n }, r.name))\n })]\n })\n })\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n children: error\n })]\n });\n}\nIssuePassport.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n ownerDid: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onError: _propTypes.default.func,\n roles: _propTypes.default.array,\n showOwnerPassport: _propTypes.default.bool\n};\nIssuePassport.defaultProps = {\n onError: () => {},\n roles: [],\n showOwnerPassport: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Member;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _notistack = require(\"notistack\");\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\nvar _Tabs = _interopRequireDefault(require(\"@arcblock/ux/lib/Tabs\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\nvar _ForbidLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ForbidLoginIcon\"));\nvar _AllowLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/AllowLoginIcon\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _passportIssuances = _interopRequireDefault(require(\"./passport-issuances\"));\nvar _passports = _interopRequireDefault(require(\"./passports\"));\nvar _toggleUserApproval = _interopRequireDefault(require(\"./toggle-user-approval\"));\nvar _util2 = require(\"./util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2, _templateObject3;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction Member(_ref) {\n let {\n userDid,\n onCancel,\n initTab\n } = _ref;\n const {\n api,\n ws: {\n useSubscription\n },\n inService\n } = (0, _node.useNodeContext)();\n const {\n roles,\n teamDid,\n enablePassportIssuance\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [issuances, setIssuances] = (0, _react.useState)(null);\n const [user, setUser] = (0, _react.useState)(null);\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n const [tab, setTab] = (0, _react.useState)(initTab || 'info');\n const getData = async () => {\n try {\n const res = await api.doBatchQuery({\n getUser: {\n input: {\n teamDid,\n user: {\n did: userDid\n }\n }\n },\n getPassportIssuances: {\n input: {\n teamDid,\n ownerDid: userDid\n }\n }\n });\n if (res.getUser.user) {\n res.getUser.user.avatar = (0, _util2.parseAvatar)(res.getUser.user.avatar, teamDid, inService);\n\n // for backwards compatibility\n res.getUser.user.passports = (res.getUser.user.passports || []).filter(x => x.issuer);\n }\n setUser(res.getUser.user || {});\n setIssuances(res.getPassportIssuances.list || []);\n } catch (err) {\n enqueueSnackbar((0, _util.formatError)(err), {\n autoHideDuration: 5000,\n variant: 'error'\n });\n }\n };\n (0, _react.useEffect)(() => {\n if (teamDid) {\n getData();\n }\n }, [userDid, teamDid]); // eslint-disable-line\n\n const onUserEvent = data => {\n if (data.teamDid === teamDid && data.user && data.user.did === userDid) {\n getData();\n }\n };\n useSubscription(_constant.EVENTS.USER_UPDATED, onUserEvent, [userDid, teamDid]);\n (0, _react.useEffect)(() => {\n if (issuances && !issuances.length && tab === 'issuances') {\n setTab('info');\n }\n }, [issuances]); // eslint-disable-line\n\n // tab\n const Info = () => {\n const rows = user ? [{\n name: t('team.member.name'),\n value: user.fullName\n }, {\n name: t('common.email'),\n value: user.email\n }, {\n name: t('team.member.allowLogin'),\n value: user.approved ? t('common.yes') : t('common.no')\n }, {\n name: t('team.member.lastLogin'),\n value: (0, _util.formatToDatetime)(user.updatedAt)\n }, {\n name: t('common.createdAt'),\n value: (0, _util.formatToDatetime)(user.createdAt)\n }, {\n name: t('common.remark'),\n value: user.remark || '--'\n }].filter(Boolean) : [];\n return rows.map(row => {\n if (row.name === t('common.did')) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n nameFormatter: () => t('common.did'),\n children: row.value\n }, row.name);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n style: {\n alignItems: 'flex-start'\n },\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n children: row.value\n }, row.name);\n });\n };\n const tabConfigs = {\n info: {\n label: t('common.basicInfo'),\n value: 'info',\n component: Info\n },\n passports: {\n label: t('common.passport'),\n value: 'passports',\n component: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_passports.default, {\n user: user,\n teamDid: teamDid,\n roles: roles,\n onCreate: () => {\n getData(teamDid);\n setTab('issuances');\n },\n onRefresh: () => {\n getData(teamDid);\n }\n })\n },\n issuances: {\n label: t('team.passport.issuance.pending'),\n value: 'issuances',\n component: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_passportIssuances.default, {\n issuances: issuances || [],\n teamDid: teamDid,\n onRefresh: () => getData(teamDid)\n })\n }\n };\n const tabs = Object.values(tabConfigs).map(_ref2 => {\n let {\n label,\n value\n } = _ref2;\n return {\n label,\n value\n };\n }).filter(x => {\n if (x.value === 'issuances') {\n return enablePassportIssuance && issuances && !!issuances.length;\n }\n return true;\n });\n const tabConfig = tabConfigs[tab] || tabConfigs.info;\n const onTabChange = newTab => {\n setTab(newTab);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('common.member'),\n onClose: onCancel,\n open: true,\n PaperProps: {\n style: {\n maxWidth: 632,\n minHeight: '80vh'\n }\n },\n fullWidth: true,\n actions: user && /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_toggleUserApproval.default, {\n user: user,\n children: _ref3 => {\n let {\n open\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(BlockButton, {\n onClick: open,\n children: [user.approved ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ForbidLoginIcon.default, {\n style: {\n fontSize: '1.2em',\n marginRight: '0.4em'\n }\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_AllowLoginIcon.default, {\n style: {\n fontSize: '1.2em',\n marginRight: '0.4em'\n }\n }), user.approved ? t('team.member.forbidLogin') : t('team.member.allowLogin')]\n });\n }\n })\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [!user && /*#__PURE__*/(0, _jsxRuntime.jsx)(Center, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n }), user && /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n className: \"info\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n src: user.avatar,\n style: {\n width: 48,\n height: 48,\n backgroundColor: 'transparent',\n marginRight: 16\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"name\",\n children: user.fullName\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"did\",\n mt: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, {\n children: user.did\n })\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mx: 3,\n className: \"tabs\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tabs.default, {\n tabs: tabs,\n current: tab,\n onChange: onTabChange,\n scrollButtons: \"auto\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"body\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(tabConfig.component, {})\n })]\n })]\n })\n });\n}\nMember.propTypes = {\n userDid: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n initTab: _propTypes.default.string\n};\nMember.defaultProps = {\n initTab: 'info'\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .info {\\n .name {\\n font-weight: 400;\\n font-size: 18px;\\n line-height: 25px;\\n color: #222222;\\n }\\n }\\n\\n .tabs {\\n margin-top: 24px;\\n margin-left: 0;\\n margin-right: 0;\\n }\\n\\n .body {\\n margin-top: 24px;\\n }\\n\"])));\nconst Center = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n flex: 1;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n height: 200px;\\n\"])));\nconst BlockButton = _styled.default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n flex-shrink: 0;\\n width: 100%;\\n height: 64px;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n cursor: pointer;\\n color: #999;\\n fill: #999;\\n font-size: 16px;\\n border-top: 1px solid #f0f0f0;\\n position: sticky;\\n bottom: 0;\\n background: #fff;\\n z-index: 10;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportIssuances;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _notistack = require(\"notistack\");\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\nvar _passportTag = _interopRequireDefault(require(\"../../passport-tag\"));\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction PassportIssuances(_ref) {\n let {\n issuances,\n teamDid,\n onRefresh\n } = _ref;\n const {\n api: client,\n inService\n } = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [delConfirm, setDelConfirm] = (0, _react.useState)(null);\n const [loading, setLoading] = (0, _react.useState)(false);\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n const {\n endpoint\n } = (0, _team.useTeamContext)();\n const deleteIssuance = async _ref2 => {\n let {\n id\n } = _ref2;\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n await client.deletePassportIssuance({\n input: {\n teamDid,\n sessionId: id\n }\n });\n onRefresh();\n } catch (error) {\n enqueueSnackbar(error.message, {\n autoHideDuration: 5000,\n variant: 'error'\n });\n } finally {\n setLoading(false);\n setDelConfirm(null);\n }\n };\n const onCancel = () => {\n setLoading(false);\n setDelConfirm(null);\n };\n const getLink = column => endpoint ? (0, _util.getIssuePassportLink)({\n id: column.id,\n endpoint\n }) : '';\n\n // eslint-disable-next-line react/prop-types\n // eslint-disable-next-line react/no-unstable-nested-components\n function Issuance(_ref3) {\n let {\n data: d\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"issuance\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n justifyContent: \"space-between\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: can => can ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_passportTag.default, {\n passport: {\n title: d.title,\n name: d.name\n },\n onDelete: () => setDelConfirm({\n title: t('team.passport.issuance.delete.title'),\n description: t('team.passport.issuance.delete.description', {\n link: getLink(d)\n }),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n deleteIssuance(d);\n },\n onCancel\n })\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_passportTag.default, {\n passport: {\n title: d.title,\n name: d.name\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n style: {\n color: '#999'\n },\n children: [t('common.expires'), \":\\xA0\", (0, _util.formatToDatetime)(d.expireDate)]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 2,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n children: getLink(d)\n })\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [issuances.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(Issuance, {\n data: x\n })), delConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: delConfirm.title,\n description: delConfirm.description,\n confirm: delConfirm.confirm,\n cancel: delConfirm.cancel,\n params: delConfirm.params,\n onConfirm: delConfirm.onConfirm,\n onCancel: delConfirm.onCancel\n })]\n });\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiTableHead-root {\\n display: none;\\n }\\n .issuance {\\n padding: 16px 0;\\n border-bottom: 1px solid #f0f0f0;\\n .MuiTypography-root {\\n display: inline-block;\\n width: 100%;\\n background: #f3f3f3;\\n border-radius: 4px;\\n padding-top: 6px;\\n padding-bottom: 6px;\\n }\\n }\\n\"])));\nPassportIssuances.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n issuances: _propTypes.default.array,\n onRefresh: _propTypes.default.func\n};\nPassportIssuances.defaultProps = {\n issuances: [],\n onRefresh: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Passports;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _notistack = require(\"notistack\");\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _upperFirst = _interopRequireDefault(require(\"lodash/upperFirst\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _ErrorOutline = _interopRequireDefault(require(\"@mui/icons-material/ErrorOutline\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _RevokeIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/RevokeIcon\"));\nvar _ExternalIssuerIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ExternalIssuerIcon\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _createPassportSvg = _interopRequireDefault(require(\"@abtnode/auth/lib/util/create-passport-svg\"));\nvar _node = require(\"../../contexts/node\");\nvar _session = require(\"../../contexts/session\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _searchInput = _interopRequireDefault(require(\"../search-input\"));\nvar _listHeader = _interopRequireDefault(require(\"../styles/list-header\"));\nvar _issuePassport = _interopRequireDefault(require(\"./issue-passport\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction ConfirmDescription(_ref) {\n let {\n action,\n passport\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n roles\n } = (0, _team.useTeamContext)();\n const role = roles.find(x => x.name === passport.role);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n children: action === 'enable' ? t('team.member.enablePassportDescription') : t('team.member.revokePassportDescription')\n }), role && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 3,\n fontWeight: \"bold\",\n children: t('team.member.passportPermissionTitle')\n }), role && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 1,\n children: role.description\n })]\n });\n}\nConfirmDescription.propTypes = {\n action: _propTypes.default.string.isRequired,\n passport: _propTypes.default.object.isRequired\n};\nConfirmDescription.defaultProps = {};\nfunction Passports(_ref2) {\n var _blocklet$settings;\n let {\n user,\n onCreate\n } = _ref2;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n session\n } = (0, _session.useSessionContext)();\n const {\n roles,\n teamDid,\n teamIssuerDid,\n refresh: refreshTeam,\n enablePassportIssuance,\n trustedPassports,\n passportColor,\n blocklet\n } = (0, _team.useTeamContext)();\n const {\n api,\n inService\n } = (0, _node.useNodeContext)();\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [toggleConfirm, setToggleConfirm] = (0, _react.useState)(null);\n const [showIssueDialog, setShowIssueDialog] = (0, _react.useState)(false);\n const [search, setSearch] = (0, _react.useState)('');\n const passports = ((0, _get.default)(user, 'passports') || []).map(x => _objectSpread(_objectSpread({}, x), {}, {\n revoked: x.status === _constant.PASSPORT_STATUS.REVOKED\n }));\n const togglePassportStatus = async passport => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const method = passport.status === _constant.PASSPORT_STATUS.REVOKED ? 'enableUserPassport' : 'revokeUserPassport';\n await api[method]({\n input: {\n teamDid,\n userDid: user.did,\n passportId: passport.id\n }\n });\n refreshTeam();\n } catch (err) {\n enqueueSnackbar((0, _util.formatError)(err), {\n autoHideDuration: 5000,\n variant: 'error'\n });\n } finally {\n setLoading(false);\n setToggleConfirm(null);\n }\n };\n const confirmToggle = item => item.status === _constant.PASSPORT_STATUS.REVOKED ? setToggleConfirm({\n title: t('team.member.enablePassport'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsx)(ConfirmDescription, {\n action: \"enable\",\n passport: item\n }),\n confirm: t('common.enable'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n togglePassportStatus(item);\n },\n onCancel: () => {\n setLoading(false);\n setToggleConfirm(null);\n },\n color: 'primary'\n }) : setToggleConfirm({\n title: t('team.member.revokePassport'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsx)(ConfirmDescription, {\n action: \"revoke\",\n passport: item\n }),\n confirm: t('common.revoke'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n togglePassportStatus(item);\n },\n onCancel: () => {\n setLoading(false);\n setToggleConfirm(null);\n }\n });\n const revokeInfo = (hasPermission, passport) => {\n if (user.did === session.user.did && session.user.passportId && session.user.passportId === passport.id) {\n return {\n revokable: false,\n message: t('team.passport.shouldNotDeleteCurrent')\n };\n }\n if (!hasPermission) {\n return {\n revokable: false,\n message: t('team.passport.noPermission')\n };\n }\n if (teamDid === passport.issuer.id && passport.name === 'owner') {\n return {\n revokable: false,\n message: t('team.passport.noPermission')\n };\n }\n return {\n revokable: true\n };\n };\n const filteredPassports = passports.filter(x => !search || x.title.includes(search) || x.name.includes(search));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_listHeader.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"left\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_searchInput.default, {\n placeholder: t('team.passport.search'),\n value: search,\n onChange: e => setSearch(e.target.value)\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"right\",\n children: enablePassportIssuance && !!user.approved && /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"contained\",\n color: \"primary\",\n \"data-cy\": \"issue-passport\",\n onClick: () => setShowIssueDialog(true),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }), t('team.passport.issue')]\n })\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [filteredPassports.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: can => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"passport-item\",\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n mt: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML: {\n __html: (0, _createPassportSvg.default)({\n title: x.title || x.name,\n issuer: x.issuer && x.issuer.name,\n issuerDid: x.issuer && x.issuer.id,\n ownerName: user.fullName,\n ownerAvatarUrl: user.avatar,\n revoked: x.revoked,\n preferredColor: passportColor,\n width: '120px'\n })\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"body\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"title\",\n display: \"flex\",\n alignItems: \"center\",\n children: [(0, _upperFirst.default)(x.title), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"status-icons\",\n children: [!!teamIssuerDid && x.issuer.id !== teamIssuerDid && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExternalIssuerIcon.default, {}), x.revoked && /*#__PURE__*/(0, _jsxRuntime.jsx)(_RevokeIcon.default, {})]\n })]\n }), !!teamIssuerDid && x.issuer.id !== teamIssuerDid && /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"tip\",\n children: [x.issuer.id !== teamIssuerDid && !trustedPassports.some(y => y.issuerDid === x.issuer.id) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('team.passport.notTrustedIssuerTip'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n component: _ErrorOutline.default,\n style: {\n fontSize: '1.3em'\n },\n color: \"error.main\",\n mr: 0.5\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: t('team.passport.issueBy', {\n name: x.issuer.name\n })\n })]\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: revokeInfo(can, x).revokable ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"outlined\",\n color: x.revoked ? 'primary' : 'secondary',\n onClick: () => confirmToggle(x),\n children: [x.revoked ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_RevokeIcon.default, {\n style: {\n height: 16,\n marginRight: 4\n }\n }), x.revoked ? t('common.enable') : t('common.revoke')]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: revokeInfo(can, x).message,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ErrorOutline.default, {\n style: {\n color: '#ddd'\n }\n })\n })\n })]\n })\n })), !filteredPassports.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })]\n }), showIssueDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(_issuePassport.default, {\n teamDid: teamDid,\n ownerDid: user.did,\n roles: roles,\n onCancel: () => setShowIssueDialog(false),\n onSuccess: () => {\n onCreate();\n setShowIssueDialog(false);\n },\n showOwnerPassport: blocklet && !((_blocklet$settings = blocklet.settings) !== null && _blocklet$settings !== void 0 && _blocklet$settings.owner)\n }), toggleConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: toggleConfirm.title,\n description: toggleConfirm.description,\n confirm: toggleConfirm.confirm,\n cancel: toggleConfirm.cancel,\n params: toggleConfirm.params,\n onConfirm: toggleConfirm.onConfirm,\n onCancel: toggleConfirm.onCancel,\n color: toggleConfirm.color\n })]\n });\n}\nPassports.propTypes = {\n user: _propTypes.default.object.isRequired,\n onCreate: _propTypes.default.func\n};\nPassports.defaultProps = {\n onCreate: () => {}\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .passport-item {\\n .body {\\n padding: 0;\\n margin-left: 24px;\\n margin-top: 0;\\n }\\n .title {\\n font-weight: 400;\\n font-size: 16px;\\n line-height: 19px;\\n color: #222222;\\n }\\n .tip {\\n display: flex;\\n align-items: center;\\n font-size: 14px;\\n margin-top: 6px;\\n color: #bbb;\\n }\\n .status-icons {\\n svg {\\n fill: #bfbfbf;\\n height: 1.2em;\\n margin-left: 0.4em;\\n }\\n }\\n .MuiButton-outlinedSecondary {\\n color: #f16e6e;\\n fill: #f16e6e;\\n background: #fcf3f3;\\n border: 0;\\n &:hover {\\n border: 0;\\n }\\n }\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ToggleUserApproval;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _session = require(\"../../contexts/session\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst isNodeOwner = (nodeInfo, userDid) => nodeInfo.nodeOwner && nodeInfo.nodeOwner.did === userDid;\nconst isSelf = (sessionUser, userDid) => sessionUser && sessionUser.did === userDid;\nfunction ToggleUserApproval(_ref) {\n let {\n user,\n onCancel: _onCancel,\n onSuccess,\n onError,\n children\n } = _ref;\n const {\n api,\n info: nodeInfo,\n inService\n } = (0, _node.useNodeContext)();\n const {\n session\n } = (0, _session.useSessionContext)();\n const {\n teamDid,\n refresh\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [show, setShow] = (0, _react.useState)(false);\n const open = () => setShow(true);\n const updateUserApproval = async d => {\n const {\n did,\n approved\n } = d;\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n await api.updateUserApproval({\n input: {\n teamDid,\n user: {\n did,\n approved: !approved\n }\n }\n });\n setShow(false);\n onSuccess();\n refresh();\n } catch (error) {\n _toast.default.error((0, _util.formatError)(error));\n onError();\n } finally {\n setLoading(false);\n }\n };\n const approveConfirm = {\n title: user.approved ? t('team.member.forbidLogin') : t('team.member.allowLogin'),\n description: user.approved ? t('team.member.forbidLoginDescription') : t('team.member.allowLoginDescription'),\n confirm: t('common.confirm'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n updateUserApproval(user);\n },\n onCancel: () => {\n setLoading(false);\n setShow(false);\n _onCancel();\n },\n color: user.approved ? 'error' : 'primary'\n };\n let can;\n if (!inService) {\n can = nodeInfo.nodeOwner && !isNodeOwner(nodeInfo, user.did) && !isSelf(session.user, user.did);\n } else {\n can = !isSelf(session.user, user.did);\n }\n if (!can) {\n return null;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n can,\n open\n }) : children, show ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: approveConfirm.title,\n description: approveConfirm.description,\n confirm: approveConfirm.confirm,\n cancel: approveConfirm.cancel,\n params: approveConfirm.params,\n onConfirm: approveConfirm.onConfirm,\n onCancel: approveConfirm.onCancel,\n color: approveConfirm.color\n }) : null]\n });\n}\nToggleUserApproval.propTypes = {\n user: _propTypes.default.object,\n onSuccess: _propTypes.default.func,\n onCancel: _propTypes.default.func,\n onError: _propTypes.default.func,\n children: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.func])\n};\nToggleUserApproval.defaultProps = {\n user: {},\n onSuccess: () => {},\n onCancel: () => {},\n onError: () => {},\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = TransferMember;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _useAsync = _interopRequireDefault(require(\"react-use/lib/useAsync\"));\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Connect = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Connect\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\nvar _node = require(\"../../contexts/node\");\nvar _util = require(\"../../util\");\nvar _session = require(\"../../contexts/session\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction TransferMember(_ref) {\n let {\n teamDid,\n onCancel,\n onSuccess,\n onError,\n endpoint\n } = _ref;\n const {\n api,\n info\n } = (0, _node.useNodeContext)();\n const {\n api: sessionAPI\n } = (0, _react.useContext)(_session.SessionContext);\n const [loading, setLoading] = (0, _react.useState)(false);\n const {\n locale\n } = (0, _context.useLocaleContext)();\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [openTransferNFTAuth, setOpenTransferNFTAuth] = (0, _react.useState)(false);\n const [activeStep, setActiveStep] = (0, _react.useState)(0);\n const [inviteInfo, setInviteInfo] = (0, _react.useState)('');\n const [remark, setRemark] = (0, _react.useState)('');\n const needTransferNFT = !!(0, _get.default)(info, 'ownerNft.did');\n const delegationState = (0, _useAsync.default)(async () => {\n if (needTransferNFT) {\n const {\n state\n } = await api.getDelegationState();\n return state;\n }\n return {\n delegated: true\n };\n });\n if (delegationState.loading) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('team.transferNode.inviteDialog.title'),\n fullWidth: true,\n open: true,\n onClose: onCancel,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n display: 'flex',\n justifyContent: 'center'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n })\n });\n }\n if (delegationState.error) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('team.transferNode.inviteDialog.title'),\n fullWidth: true,\n open: true,\n onClose: onCancel,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n children: (0, _util.formatError)(delegationState.error)\n })\n });\n }\n const onCreate = async () => {\n setError(null);\n setLoading(true);\n try {\n const {\n inviteInfo: tmpInviteInfo\n } = await api.createTransferInvitation({\n input: {\n teamDid,\n role: 'owner',\n remark: remark.trim()\n }\n });\n setInviteInfo(tmpInviteInfo);\n setActiveStep(steps.length - 1); // 跳转到最后一步\n } catch (err) {\n const errMsg = (0, _util.formatError)(err);\n setError(errMsg);\n onError(err);\n } finally {\n setLoading(false);\n }\n };\n const handleTransferNFT = () => {\n setOpenTransferNFTAuth(true);\n setActiveStep(1);\n };\n const handleCancelTransferNFT = () => {\n setOpenTransferNFTAuth(false);\n setActiveStep(0);\n };\n const steps = [{\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Alert.default, {\n type: \"warning\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('team.transferNode.inviteDialog.tips.progress')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('team.transferNode.inviteDialog.tips.newOwnerPermissions')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"warning\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('team.transferNode.inviteDialog.tips.revoke')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 20,\n marginBottom: 10\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.remark'),\n autoComplete: \"off\",\n variant: \"outlined\",\n fullWidth: true,\n style: {\n marginBottom: 8\n },\n value: remark,\n onChange: e => {\n setError(null);\n setRemark(e.target.value);\n },\n disabled: loading,\n \"data-cy\": \"transfer-node-input-remark\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 20,\n marginBottom: 10\n }\n })]\n }),\n cancel: t('common.cancel'),\n confirm: t('team.transferNode.inviteDialog.createInviteLink'),\n onCancel,\n onConfirm: needTransferNFT && !(0, _get.default)(delegationState, 'value.delegated') ? handleTransferNFT : onCreate\n }, {\n body: () => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Connect.default, {\n action: \"delegate-transfer-nft\",\n open: openTransferNFTAuth,\n locale: locale,\n checkFn: sessionAPI.get,\n onClose: handleCancelTransferNFT,\n onSuccess: onCreate,\n checkTimeout: 5 * 60 * 1000,\n webWalletUrl: (0, _util.getWebWalletUrl)(info),\n extraParams: {\n targetDID: info.did\n },\n messages: {\n title: t('team.transferNode.delegateDialog.title'),\n scan: t('team.transferNode.delegateDialog.scan'),\n confirm: t('team.transferNode.delegateDialog.confirm'),\n success: t('team.transferNode.delegateDialog.success')\n },\n popup: true\n });\n }\n }, {\n body: () => {\n const link = (0, _util.getInviteLink)({\n inviteId: inviteInfo.inviteId,\n endpoint\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Bold, {\n children: t('team.transferNode.inviteDialog.createSuccessTip', {\n expireDate: (0, _util.formatToDatetime)(inviteInfo.expireDate)\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: '40px'\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n children: link\n })]\n });\n },\n confirm: t('common.confirm'),\n onConfirm: onSuccess\n }];\n const step = steps[activeStep];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('team.transferNode.inviteDialog.title'),\n fullWidth: true,\n open: true,\n showCloseButton: false,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [step.cancel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: step.onCancel,\n color: \"inherit\",\n children: step.cancel\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: step.onConfirm,\n color: \"primary\",\n disabled: loading,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), step.confirm]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: typeof step.body === 'function' ? step.body() : step.body\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n children: error\n })]\n });\n}\nTransferMember.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onError: _propTypes.default.func,\n endpoint: _propTypes.default.string\n};\nTransferMember.defaultProps = {\n onError: () => {},\n endpoint: ''\n};\nconst Bold = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n font-size: 16px;\\n font-weight: bold;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.parseAvatar = parseAvatar;\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _constant = require(\"@abtnode/constant\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n// eslint-disable-next-line import/prefer-default-export\nfunction parseAvatar(avatar, teamDid, inService) {\n if (avatar && avatar.startsWith(_constant.USER_AVATAR_URL_PREFIX)) {\n const prefix = window.env.apiPrefix || '/';\n if (inService) {\n return (0, _urlJoin.default)(prefix, _constant.USER_AVATAR_PATH_PREFIX, avatar.replace(_constant.USER_AVATAR_URL_PREFIX, ''));\n }\n return (0, _urlJoin.default)(prefix, _constant.USER_AVATAR_PATH_PREFIX, teamDid, avatar.replace(_constant.USER_AVATAR_URL_PREFIX, ''));\n }\n return avatar;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportColorWithPermission;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _reactColor = require(\"react-color\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _createPassportSvg = _interopRequireDefault(require(\"@abtnode/auth/lib/util/create-passport-svg\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _passportColor = require(\"@abtnode/auth/lib/util/passport-color\");\nvar _constant = require(\"@blocklet/constant\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _blocklet = require(\"../../contexts/blocklet\");\nvar _util2 = require(\"../../util\");\nvar _permission = require(\"../../permission\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction PassportColor(_ref) {\n let {\n onCancel,\n onSuccess\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const curColor = (blocklet.environments.find(x => x.key === 'BLOCKLET_PASSPORT_COLOR') || {}).value || 'auto';\n const defaultColor = curColor === 'auto' ? (0, _passportColor.getPassportColorFromDid)(blocklet.appDid) : curColor;\n const [color, setColor] = (0, _react.useState)(defaultColor);\n const onSubmit = async () => {\n const params = [{\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_PASSPORT_COLOR,\n value: color\n }];\n try {\n setLoading(true);\n await api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: params\n }\n });\n onSuccess();\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('team.passport.color'),\n onClose: onCancel,\n open: true,\n fullWidth: true,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onCancel,\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: onSubmit,\n color: \"primary\",\n disabled: loading,\n variant: \"contained\",\n autoFocus: true,\n \"data-cy\": \"color-btn-confirm\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.save')]\n })]\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n className: \"dialog-content\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactColor.ChromePicker, {\n color: color,\n onChange: c => setColor(c.hex)\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n style: {\n width: 96,\n marginLeft: 48\n },\n alt: \"\",\n src: (0, _createPassportSvg.default)({\n title: 'Owner',\n issuer: (0, _util.getDisplayName)(blocklet),\n issuerDid: blocklet.appDid,\n ownerName: 'Your Name',\n isDataUrl: true,\n preferredColor: color\n })\n })]\n })\n });\n}\nconst PassportColorInDaemon = (0, _permission.withPermission)(PassportColor, 'mutate_team');\nconst PassportColorInService = (0, _permission.withPermission)(PassportColor, '', _util2.BlockletAdminRoles);\nfunction PassportColorWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportColorInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportColorInDaemon, _objectSpread({}, props));\n}\nPassportColor.propTypes = {\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired\n};\nPassportColor.defaultProps = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportDetailWithPermission;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _DeleteIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/DeleteIcon\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _permission = require(\"../../permission\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _mutateRole = _interopRequireDefault(require(\"./mutate-role\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction PassportDetail(_ref) {\n let {\n onCancel,\n onSuccess,\n onDelete,\n roleName,\n hasPermission\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n roles,\n permissions,\n teamDid,\n refresh: refreshTeam,\n isNodeTeam\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [binds, setBinds] = (0, _react.useState)([]);\n const [updateForm, setUpdateForm] = (0, _react.useState)(false);\n const [delConfirm, setDelConfirm] = (0, _react.useState)(null);\n const [loading, setLoading] = (0, _react.useState)(false);\n const role = (0, _cloneDeep.default)(roles.find(x => x.name === roleName));\n const isProtected = (0, _util.isProtectedRole)(roleName);\n const deletePassport = async name => {\n if (loading) return;\n try {\n setLoading(true);\n await api.deleteRole({\n input: {\n teamDid,\n name\n }\n });\n onDelete();\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n setDelConfirm(null);\n }\n };\n const getData = async (team, name) => {\n const res = await api.getPermissionsByRole({\n input: {\n teamDid: team,\n role: {\n name\n }\n }\n });\n const permissionList = res.permissions || [];\n const bindList = permissions.map(x => _objectSpread(_objectSpread({}, x), {}, {\n bind: permissionList.some(y => y.name === x.name)\n }));\n setBinds(bindList);\n };\n const onBind = async () => {\n setLoading(true);\n const grantNames = binds.filter(x => x.bind).map(x => x.name);\n try {\n await api.updatePermissionsForRole({\n input: {\n teamDid,\n roleName: role.name,\n grantNames\n }\n });\n _toast.default.success(t('common.saveSuccess'));\n onSuccess();\n } catch (err) {\n _toast.default.error((0, _util.formatError)(err));\n } finally {\n setLoading(false);\n }\n };\n (0, _react.useEffect)(() => {\n if (teamDid && roleName) {\n getData(teamDid, roleName);\n }\n }, [teamDid, roleName]); // eslint-disable-line\n\n const readPermissionsOnly = isNodeTeam || !hasPermission;\n let bindPermission = null;\n if (isNodeTeam) {\n bindPermission = /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"bind\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: t('common.permission')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"list\",\n children: binds\n // if readonly, show obtained permissions only\n .filter(x => readPermissionsOnly ? x.bind : true).map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"item\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Checkbox.default, {\n disabled: readPermissionsOnly,\n checked: x.bind,\n onChange: () => {\n setBinds(state => state.map(y => {\n if (y.name === x.name) {\n y.bind = !y.bind;\n }\n return y;\n }));\n },\n name: x.name\n }),\n label: x.description\n })\n }))\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('common.passport'),\n onClose: onCancel,\n open: true,\n fullWidth: true,\n toolbar: hasPermission && !isProtected && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => setUpdateForm(role),\n \"data-cy\": \"edit-passport-\".concat(role.name),\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {\n fill: \"#bfbfbf\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => setDelConfirm({\n title: t('team.passport.delete.title'),\n description: t('team.passport.delete.description', {\n name: role.title\n }),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n deletePassport(role.name);\n },\n onCancel: () => {\n setLoading(false);\n setDelConfirm(null);\n }\n }),\n \"data-cy\": \"delete-passport-\".concat(role.name),\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DeleteIcon.default, {\n \"data-cy\": \"close-passport-dialog\",\n fill: \"#bfbfbf\"\n })\n })]\n }),\n actions: isNodeTeam && !readPermissionsOnly && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onCancel,\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: onBind,\n color: \"primary\",\n disabled: loading || !role,\n variant: \"contained\",\n autoFocus: true,\n \"data-cy\": \"bind-permission-btn-confirm\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.save')]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [!role && /*#__PURE__*/(0, _jsxRuntime.jsx)(Center, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n }), role && /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"dialog-content\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"header\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: role.title\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"description\",\n style: {\n marginTop: isNodeTeam ? 16 : 48\n },\n children: role.description\n })]\n }), bindPermission]\n })]\n }), updateForm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_mutateRole.default, {\n teamDid: teamDid,\n onCancel: () => setUpdateForm(null),\n onSuccess: () => {\n setUpdateForm(null);\n refreshTeam();\n },\n mode: \"update\",\n roleName: updateForm.name,\n item: updateForm\n }), delConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: delConfirm.title,\n description: delConfirm.description,\n confirm: delConfirm.confirm,\n cancel: delConfirm.cancel,\n params: delConfirm.params,\n onConfirm: delConfirm.onConfirm,\n onCancel: delConfirm.onCancel\n })]\n });\n}\nconst PassportDetailInDaemon = (0, _permission.withPermission)(PassportDetail, 'mutate_team');\nconst PassportDetailInService = (0, _permission.withPermission)(PassportDetail, '', _util.BlockletAdminRoles);\nfunction PassportDetailWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportDetailInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportDetailInDaemon, _objectSpread({}, props));\n}\nPassportDetail.propTypes = {\n roleName: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onDelete: _propTypes.default.func.isRequired,\n hasPermission: _propTypes.default.bool\n};\nPassportDetail.defaultProps = {\n hasPermission: false\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .header {\\n .title {\\n font-weight: 400;\\n font-size: 24px;\\n line-height: 28px;\\n color: #222222;\\n }\\n\\n .description {\\n margin-top: 16px;\\n font-weight: 400;\\n font-size: 16px;\\n line-height: 19px;\\n color: #999999;\\n }\\n }\\n\\n .bind {\\n margin-top: 24px;\\n .title {\\n font-weight: 400;\\n font-size: 16px;\\n line-height: 19px;\\n color: #666666;\\n margin-bottom: 24px;\\n }\\n .item {\\n margin-top: 24px;\\n }\\n\\n .MuiFormControlLabel-label {\\n font-weight: 400;\\n font-size: 16px;\\n line-height: 19px;\\n color: #666;\\n }\\n\\n .PrivateSwitchBase-root-45 {\\n padding: 0;\\n padding-right: 12px;\\n }\\n }\\n\"])));\nconst Center = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n flex: 1;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n height: 200px;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportList;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _SplitButton = _interopRequireDefault(require(\"@arcblock/ux/lib/SplitButton\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _LockIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/LockIcon\"));\nvar _ExternalIssuerIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ExternalIssuerIcon\"));\nvar _createPassportSvg = _interopRequireDefault(require(\"@abtnode/auth/lib/util/create-passport-svg\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _searchInput = _interopRequireDefault(require(\"../search-input\"));\nvar _listHeader = _interopRequireDefault(require(\"../styles/list-header\"));\nvar _detail = _interopRequireDefault(require(\"./detail\"));\nvar _color = _interopRequireDefault(require(\"./color\"));\nvar _mutateRole = _interopRequireDefault(require(\"./mutate-role\"));\nvar _trustedIssuers = _interopRequireDefault(require(\"./trusted-issuers\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction PassportList() {\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const {\n api,\n inService\n } = (0, _node.useNodeContext)();\n const {\n roles,\n teamDid,\n teamIssuerDid,\n teamName,\n refresh: refreshTeam,\n enablePassportIssuance,\n passportColor,\n isNodeTeam\n } = (0, _team.useTeamContext)();\n const [showCreate, setShowCreate] = (0, _react.useState)(false);\n const [updateForm, setUpdateForm] = (0, _react.useState)(false);\n const [showColor, setShowColor] = (0, _react.useState)(false);\n const [showTrustedIssuers, setShowTrustedIssuers] = (0, _react.useState)(null);\n const [search, setSearch] = (0, _react.useState)('');\n const [loading, setLoading] = (0, _react.useState)(false);\n const toggleShowIssue = async () => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n await api.configPassportIssuance({\n input: {\n teamDid,\n enable: !enablePassportIssuance\n }\n });\n refreshTeam();\n await (0, _util.sleep)(800);\n _toast.default.success(t('common.configSuccess'));\n setLoading(false);\n } catch (error) {\n _toast.default.error(error.message);\n setLoading(false);\n }\n };\n const filteredRoles = roles.filter(x => !search || x.title.includes(search) || x.name.includes(search));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_listHeader.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"left\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_searchInput.default, {\n placeholder: t('team.passport.search'),\n value: search,\n onChange: e => setSearch(e.target.value)\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"right\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SplitButton.default, {\n variant: \"outlined\",\n menuButtonProps: {\n 'data-cy': 'trusted-issuers-more'\n },\n menu: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SplitButton.default.Item, {\n \"data-cy\": \"config-show-issue-passport\",\n onClick: () => {\n toggleShowIssue();\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10],\n style: {\n marginRight: 8\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [enablePassportIssuance ? t('team.passport.disableIssuance') : t('team.passport.enableIssuance'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n fontSize: 12,\n color: \"#888\",\n children: enablePassportIssuance ? t('team.passport.disableIssuanceTip') : t('team.passport.enableIssuanceTip')\n })]\n })]\n })\n }), !isNodeTeam && /*#__PURE__*/(0, _jsxRuntime.jsx)(_SplitButton.default.Item, {\n onClick: () => setShowColor(true),\n \"data-cy\": \"config-passport-color\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: t('team.passport.configColor')\n })\n })]\n }),\n children: () => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"outlined\",\n \"data-cy\": \"config-trusted-issuers\",\n onClick: () => {\n setShowTrustedIssuers(true);\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ExternalIssuerIcon.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }), t('team.passport.trustedPassportIssuers')]\n })\n }), !isNodeTeam && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n style: {\n marginLeft: 16\n },\n variant: \"contained\",\n edge: \"end\",\n color: \"primary\",\n \"data-cy\": \"create-role\",\n onClick: () => setShowCreate(true),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }), t('team.add')]\n })]\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 3\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"list\",\n children: filteredRoles.map(role => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n \"data-cy\": \"passport-\".concat(role.name),\n className: \"item\",\n display: \"flex\",\n alignItems: \"center\",\n onClick: () => setUpdateForm(role),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n style: {\n width: 120\n },\n alt: \"\",\n src: (0, _createPassportSvg.default)({\n title: role.title,\n issuer: teamName,\n issuerDid: teamIssuerDid,\n ownerName: 'Your Name',\n isDataUrl: true,\n preferredColor: passportColor\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 3,\n className: \"title\",\n children: role.title\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"description\",\n children: role.description\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"action\",\n children: (0, _util.isProtectedRole)(role.name) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_LockIcon.default, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {})\n })\n })]\n }, role.name))\n }), showCreate && /*#__PURE__*/(0, _jsxRuntime.jsx)(_mutateRole.default, {\n teamDid: teamDid,\n onCancel: () => setShowCreate(false),\n onSuccess: () => {\n setShowCreate(false);\n refreshTeam();\n }\n }), updateForm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_detail.default, {\n onCancel: () => setUpdateForm(null),\n onSuccess: () => {\n setUpdateForm(null);\n refreshTeam();\n },\n onDelete: () => {\n setUpdateForm(null);\n refreshTeam();\n },\n mode: \"update\",\n roleName: updateForm.name,\n item: updateForm\n }), showTrustedIssuers && /*#__PURE__*/(0, _jsxRuntime.jsx)(_trustedIssuers.default, {\n onCancel: () => setShowTrustedIssuers(false)\n }), showColor && /*#__PURE__*/(0, _jsxRuntime.jsx)(_color.default, {\n onCancel: () => setShowColor(null),\n onSuccess: () => setShowColor(null)\n })]\n });\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .list {\\n .item {\\n padding: 12px;\\n margin: 12px -12px;\\n cursor: pointer;\\n transition: box-shadow 0.4s;\\n &:hover {\\n box-shadow: 0 0 10px 4px rgba(0, 0, 0, 0.1);\\n }\\n }\\n\\n .title {\\n font-weight: 400;\\n font-size: 18px;\\n width: 80px;\\n line-height: 21px;\\n color: #222222;\\n }\\n\\n .description {\\n flex: 1;\\n margin-left: 64px;\\n color: #999999;\\n }\\n\\n .action {\\n color: #bfbfbf;\\n fill: #bfbfbf;\\n }\\n }\\n\"])));\nPassportList.propTypes = {};\nPassportList.defaultProps = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MutateRole;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _md = _interopRequireDefault(require(\"md5\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _node = require(\"../../contexts/node\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction MutateRole(_ref) {\n let {\n teamDid,\n onCancel,\n onSuccess,\n onError,\n mode,\n item\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [title, setTitle] = (0, _react.useState)(item.title || '');\n const [description, setDescription] = (0, _react.useState)(item.description || '');\n const onCreate = async () => {\n const _title = title.trim();\n if (!_title) {\n setError(t('team.passport.error.titleEmpty'));\n return;\n }\n if (_title.length > 64) {\n setError(t('team.passport.error.titleTooLong', {\n length: 64\n }));\n return;\n }\n const desc = description.replace(/\\n/g, ' ');\n if (!desc) {\n setError(t('team.passport.error.descriptionEmpty'));\n return;\n }\n const name = mode === 'create' ? (0, _md.default)(_title) : item.name;\n setError(null);\n setLoading(true);\n try {\n if (mode === 'create') {\n await api.createRole({\n input: {\n teamDid,\n name,\n title: _title,\n description: desc\n }\n });\n } else {\n await api.updateRole({\n input: {\n teamDid,\n role: {\n name,\n title: _title,\n description: desc\n }\n }\n });\n }\n onSuccess();\n } catch (err) {\n const errMsg = (0, _util.formatError)(err);\n setError(errMsg);\n onError(err);\n } finally {\n setLoading(false);\n }\n };\n const body = /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [mode === 'update' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n style: {\n paddingTop: 24\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: \"ID\",\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"url\",\n \"data-cy\": \"mutate-role-input-name\",\n fullWidth: true,\n autoFocus: true,\n value: item.name,\n disabled: true\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n style: {\n marginTop: 24\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.title'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"title\",\n \"data-cy\": \"mutate-role-input-title\",\n fullWidth: true,\n autoFocus: true,\n value: title,\n onChange: e => {\n setError(null);\n setTitle(e.target.value);\n },\n disabled: mode === 'update' || loading,\n helperText: t('team.passport.create.titleTip')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n style: {\n marginTop: 24,\n marginBottom: 24\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.description'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"description\",\n \"data-cy\": \"mutate-role-input-description\",\n fullWidth: true,\n autoFocus: true,\n value: description,\n onChange: e => {\n setError(null);\n setDescription(e.target.value);\n },\n disabled: loading,\n multiline: true,\n rows: 3\n })\n })]\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: mode === 'create' ? t('team.passport.create.title') : '',\n fullWidth: true,\n open: true,\n onClose: onCancel,\n showCloseButton: false,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onCancel,\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n \"data-cy\": \"mutate-role-confirm\",\n onClick: onCreate,\n color: \"primary\",\n disabled: loading,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), mode === 'create' ? t('common.create') : t('common.update')]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: body\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n style: {\n width: '100%',\n margin: 0\n },\n children: error\n })]\n });\n}\nMutateRole.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onError: _propTypes.default.func,\n mode: _propTypes.default.oneOf(['create', 'update']),\n item: _propTypes.default.object\n};\nMutateRole.defaultProps = {\n onError: () => {},\n mode: 'create',\n item: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = TrustedIssuer;\nvar _react = _interopRequireWildcard(require(\"react\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _ArrowBack = _interopRequireDefault(require(\"@mui/icons-material/ArrowBack\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _DeleteIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/DeleteIcon\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nvar LongArrow = function LongArrow(props) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"svg\", _objectSpread(_objectSpread({}, props), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M64.707 8.707a1 1 0 0 0 0-1.414L58.343.929a1 1 0 1 0-1.414 1.414L62.586 8l-5.657 5.657a1 1 0 0 0 1.414 1.414l6.364-6.364zM0 9h64V7H0v2z\",\n fill: \"#666\"\n })\n }));\n};\nLongArrow.defaultProps = {\n width: \"65\",\n height: \"16\",\n viewBox: \"0 0 65 16\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n};\nconst canSave = (issuerDid, mappings) => {\n if (!issuerDid) {\n return false;\n }\n return !mappings.some(x => !x.from.passport || !x.to.role);\n};\nfunction TrustedIssuer(_ref) {\n let {\n onCancel,\n onSuccess,\n data,\n trustedPassports\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n roles,\n teamDid\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [issuerDid, setIssuerDid] = (0, _react.useState)(data.issuerDid || '');\n const [remark, setRemark] = (0, _react.useState)(data.remark || '');\n const [mappings, setMappings] = (0, _react.useState)((0, _cloneDeep.default)(data.mappings) || []);\n const editIndex = trustedPassports.findIndex(x => x.issuerDid === data.issuerDid);\n const configTrustedPassports = async () => {\n if (loading) {\n return;\n }\n const item = {\n issuerDid,\n remark,\n mappings\n };\n const trustedList = [...trustedPassports];\n if (editIndex === -1) {\n trustedList.unshift(item);\n } else {\n trustedList[editIndex] = item;\n }\n try {\n setLoading(true);\n await api.configTrustedPassports({\n input: {\n teamDid,\n trustedPassports: trustedList\n }\n });\n await (0, _util.sleep)(800);\n setLoading(false);\n _toast.default.success(t('common.saveSuccess'));\n onSuccess();\n } catch (err) {\n setLoading(false);\n _toast.default.error((0, _util.formatError)(err));\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('team.passport.trustedIssuers'),\n open: true,\n showCloseButton: false,\n PaperProps: {\n style: {\n minHeight: '80vh'\n }\n },\n fullWidth: true,\n prepend: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: onCancel,\n \"data-cy\": \"trusted-issuer-close\",\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ArrowBack.default, {})\n }),\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onCancel,\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: () => configTrustedPassports(),\n color: \"primary\",\n disabled: !canSave(issuerDid, mappings) || !remark || loading,\n variant: \"contained\",\n autoFocus: true,\n \"data-cy\": \"save-mapping\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.save')]\n })]\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"dialog-content\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n \"data-cy\": \"input-issuer-did\",\n placeholder: t('team.passport.issuerDid'),\n value: issuerDid,\n onChange: event => {\n setIssuerDid(event.target.value);\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n style: {\n marginTop: 16\n },\n fullWidth: true,\n \"data-cy\": \"input-issuer-remark\",\n placeholder: t('common.remark'),\n value: remark,\n onChange: event => {\n setRemark(event.target.value);\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: \"30px\",\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"dialog-h1\",\n children: t('team.passport.mappingRule')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n variant: \"outlined\",\n color: \"primary\",\n \"data-cy\": \"add-mapping\",\n onClick: () => {\n setMappings(d => {\n const res = [...d];\n res.unshift({\n from: {\n passport: ''\n },\n to: {\n role: _constant.ROLES.GUEST\n }\n });\n return res;\n });\n },\n children: t('team.add')\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"list\",\n mt: -0.5,\n children: [mappings.map((item, index) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n my: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n flexGrow: 1,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n flexGrow: 1,\n flexBasis: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n size: \"small\",\n \"data-cy\": \"input-\".concat(index, \"-from\"),\n placeholder: \"Issuer\\u2019s Passport Name/ID\",\n value: item.from.passport,\n onChange: event => {\n const {\n value\n } = event.target;\n setMappings(d => {\n const res = [...d];\n res[index].from.passport = value;\n return res;\n });\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n flexShrink: 0,\n mx: 4,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(LongArrow, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n flexGrow: 1,\n flexBasis: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n size: \"small\",\n select: true,\n value: item.to.role,\n onChange: e => {\n setMappings(d => {\n const res = [...d];\n res[index].to.role = e.target.value;\n return res;\n });\n },\n variant: \"outlined\",\n children: roles.filter(d => d.name !== 'owner').map(r => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: r.name,\n \"data-cy\": \"passport-mapping-select-option-\".concat(r.name),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: r.title || r.name\n })\n }, r.name))\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n flexShrink: 0,\n ml: 4,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => {\n setMappings(d => {\n const res = [...d];\n res.splice(index, 1);\n return res;\n });\n },\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DeleteIcon.default, {})\n })\n })]\n })), !mappings.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n my: 2,\n color: \"text.secondary\",\n fontSize: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })\n })]\n })]\n })\n })\n });\n}\nTrustedIssuer.propTypes = {\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n trustedPassports: _propTypes.default.array,\n data: _propTypes.default.object\n};\nTrustedIssuer.defaultProps = {\n data: {},\n trustedPassports: []\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .dialog-h1 {\\n font-size: 18px;\\n }\\n\\n .MuiOutlinedInput-root {\\n border-radius: 36px;\\n .MuiSelect-root.MuiOutlinedInput-input {\\n padding-top: 8.5px;\\n padding-bottom: 8.5px;\\n }\\n }\\n\\n .list {\\n .MuiIconButton-root {\\n svg {\\n fill: #bfbfbf;\\n }\\n }\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = TrustedIssuersWithPermission;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _DeleteIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/DeleteIcon\"));\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _permission = require(\"../../permission\");\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _listHeader = _interopRequireDefault(require(\"../styles/list-header\"));\nvar _searchInput = _interopRequireDefault(require(\"../search-input\"));\nvar _trustedIssuer = _interopRequireDefault(require(\"./trusted-issuer\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction TrustedIssuers(_ref) {\n let {\n onCancel,\n hasPermission\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n teamDid,\n trustedPassports\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [delConfirm, setDelConfirm] = (0, _react.useState)(null);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [trustedIssuer, setTrustedIssuer] = (0, _react.useState)(false);\n const [search, setSearch] = (0, _react.useState)('');\n const deleteTrustedIssuer = async did => {\n if (loading) {\n return;\n }\n const index = trustedPassports.findIndex(x => x.issuerDid === did);\n if (index === -1) {\n // should not be here\n _toast.default.error('Cannot find passports');\n }\n const trustedList = [...trustedPassports];\n trustedList.splice(index, 1);\n try {\n setLoading(true);\n await api.configTrustedPassports({\n input: {\n teamDid,\n trustedPassports: trustedList\n }\n });\n await (0, _util.sleep)(800);\n setLoading(false);\n _toast.default.success(t('common.saveSuccess'));\n setDelConfirm(false);\n } catch (err) {\n setLoading(false);\n _toast.default.error(err.message);\n }\n };\n const filteredIssuers = trustedPassports.filter(x => !search || x.issuerDid.toLowerCase().includes(search.toLowerCase()));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('team.passport.trustedIssuers'),\n open: true,\n onClose: onCancel,\n fullWidth: true,\n PaperProps: {\n style: {\n minHeight: '80vh'\n }\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Div, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"dialog-content\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"dialog-h1\",\n children: t('team.passport.trustedPassportIssuers')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n component: _listHeader.default,\n mt: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"left\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_searchInput.default, {\n placeholder: t('team.passport.searchIssuerDid'),\n value: search,\n onChange: e => setSearch(e.target.value)\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"right\",\n children: hasPermission && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"contained\",\n color: \"primary\",\n \"data-cy\": \"add-trusted-issuer\",\n onClick: () => setTrustedIssuer({\n mode: 'add'\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }), t('team.add')]\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"list\",\n children: [filteredIssuers.map(x => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n mt: \"20px\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n flexShrink: 0,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, {\n copyable: false,\n prepend: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n mr: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n did: x.issuerDid,\n size: 20\n })\n }),\n showDidLogo: false,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n style: {\n fontSize: 16\n },\n children: x.issuerDid\n })\n }), !!x.remark && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n pl: 3.5,\n fontSize: 12,\n maxWidth: \"300px\",\n children: x.remark\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n color: \"gray\",\n ml: \"28px\",\n flexGrow: 1,\n children: x.mappings && x.mappings.length ? \"\".concat(x.mappings.length, \" \").concat(t('team.passport.mappingRule')) : t('team.passport.defaultRule')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n flexShrink: 0,\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => setTrustedIssuer({\n mode: 'update',\n data: (0, _cloneDeep.default)(x)\n }),\n \"data-cy\": \"edit-mapping-rule\",\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"delete-mapping-rule\",\n onClick: () => setDelConfirm({\n title: t('common.delete'),\n description: t('common.delConfirmDescription'),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm: () => deleteTrustedIssuer(x.issuerDid),\n onCancel: () => {\n setLoading(false);\n setDelConfirm(null);\n }\n }),\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DeleteIcon.default, {})\n })]\n })]\n })), !trustedPassports.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })]\n })]\n })\n }), trustedIssuer && /*#__PURE__*/(0, _jsxRuntime.jsx)(_trustedIssuer.default, {\n mode: trustedIssuer.mode,\n data: trustedIssuer.data,\n trustedPassports: (0, _cloneDeep.default)(trustedPassports),\n onCancel: () => setTrustedIssuer(null),\n onSuccess: () => {\n setTrustedIssuer(null);\n }\n }), delConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: delConfirm.title,\n description: delConfirm.description,\n confirm: delConfirm.confirm,\n cancel: delConfirm.cancel,\n params: delConfirm.params,\n onConfirm: delConfirm.onConfirm,\n onCancel: delConfirm.onCancel\n })]\n });\n}\nTrustedIssuers.propTypes = {\n onCancel: _propTypes.default.func.isRequired,\n hasPermission: _propTypes.default.bool\n};\nTrustedIssuers.defaultProps = {\n hasPermission: false\n};\nconst TrustedIssuersInDaemon = (0, _permission.withPermission)(TrustedIssuers, 'mutate_team');\nconst TrustedIssuersInService = (0, _permission.withPermission)(TrustedIssuers, '', _util.BlockletAdminRoles);\nfunction TrustedIssuersWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(TrustedIssuersInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(TrustedIssuersInDaemon, _objectSpread({}, props));\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .list {\\n .MuiIconButton-root {\\n svg {\\n fill: #bfbfbf;\\n }\\n }\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Search = _interopRequireDefault(require(\"@mui/icons-material/Search\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"children\"];\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst SearchInput = (0, _styled.default)(_ref => {\n let {\n children\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, _objectSpread(_objectSpread({}, props), {}, {\n id: \"outlined-basic\",\n variant: \"outlined\",\n InputProps: {\n startAdornment: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Search.default, {})\n },\n size: \"small\",\n children: children\n }));\n})(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiOutlinedInput-root {\\n color: #999;\\n &.MuiInputBase-adornedStart .MuiSvgIcon-root {\\n color: #bfbfbf;\\n }\\n opacity: 1;\\n border-radius: 36px;\\n background: #f8f8f8;\\n padding-left: 16px;\\n input {\\n padding-left: 8px;\\n font-weight: bold;\\n &::placeholder {\\n opacity: 1;\\n color: #bfbfbf;\\n }\\n padding-top: 8.5px;\\n padding-bottom: 8.5px;\\n }\\n }\\n\\n .MuiOutlinedInput-notchedOutline,\\n .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline,\\n .Mui-focused .MuiOutlinedInput-notchedOutline {\\n border-color: #eee;\\n border-width: 1px;\\n }\\n\"])));\nvar _default = SearchInput;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst ListHeader = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n font-size: 14px;\\n .left,\\n .right {\\n }\\n .right {\\n display: flex;\\n align-items: center;\\n }\\n .tabs {\\n .MuiButton-root {\\n border: none;\\n color: #999;\\n &.active {\\n color: #222;\\n }\\n }\\n }\\n\\n @media (max-width: 600px) {\\n display: block;\\n .right {\\n margin-top: 12px;\\n }\\n }\\n\"])));\nvar _default = ListHeader;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.api = void 0;\nObject.defineProperty(exports, \"axios\", {\n enumerable: true,\n get: function get() {\n return _axios.default;\n }\n});\nexports.default = void 0;\nvar _axios = _interopRequireDefault(require(\"axios\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n_axios.default.defaults.timeout = 10 * 1000; // 超时时间设为10s\n\nconst api = _axios.default.create();\nexports.api = api;\nvar _default = api;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.STORAGE_KEY_STORE_SERVER = exports.STORAGE_KEY_STORE_BLOCKLET = void 0;\nconst STORAGE_KEY_STORE_BLOCKLET = 'blocklet-add-component-registry';\nexports.STORAGE_KEY_STORE_BLOCKLET = STORAGE_KEY_STORE_BLOCKLET;\nconst STORAGE_KEY_STORE_SERVER = 'server-add-registry';\nexports.STORAGE_KEY_STORE_SERVER = STORAGE_KEY_STORE_SERVER;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n// https://www.maigoo.com/top/393790.html\n// https://zh.wikipedia.org/zh-my/ISO_639-1代码表\nvar _default = {\n en: 'English',\n zh: '中文',\n fr: 'Français',\n // 法语\n ru: 'Russian',\n // 俄语\n ar: 'العربية',\n // 阿拉伯语\n es: 'Español',\n // 西班牙语\n de: 'Deutsch',\n // 德语\n pt: 'Português do Brasil',\n // 葡萄牙语\n ja: '日本語',\n // 日语\n hi: 'हिन्दी' // 印地语\n};\nexports.default = _default;"],"names":["Provider","NodeContext","NodeProvider","children","imgPrefix","WELLKNOWN_SERVICE_PATH_PREFIX","window","env","serverDid","serverVersion","value","api","client","restApi","ws","getWsClient","create","useSubscription","type","info","did","version","node","TeamContext","teamDid","appId","TeamProvider","blocklet","useBlockletContext","useState","invitations","setInvitations","roles","setRoles","permissions","setPermissions","teamName","getDisplayName","passportColor","environments","find","x","key","BLOCKLET_CONFIGURABLE_KEY","trustedPassports","enablePassportIssuance","getTeamData","getRoles","input","getPermissions","getInvitations","res","filter","RBAC_CONFIG","y","name","passport","ci","map","description","title","Toast","message","getUsers","query","paging","sort","lastLoginAt","useEffect","meta","onUserEvent","data","EVENTS","teamIssuerDid","isNodeTeam","refresh","endpoint","location","origin","getUsersCountPerRole","BlockletComponent","props","getComponentUrl","mountPoint","joinUrl","defaultProps","Layout","t","useLocaleContext","loading","error","refreshBlocklet","actions","nodeInfo","useContext","useLocation","infos","label","bundleName","StyledDashboard","legacy","fullWidth","footerProps","addon","Center","relative","Spinner","Box","display","alignItems","ErrorOutline","color","sx","marginRight","formatError","Button","onClick","style","textDecoration","className","flex","padding","flexDirection","ErrorBoundary","FallbackComponent","ErrorFallback","resetKeys","pathname","styled","Dashboard","BlockletService","navigate","useNavigate","useParams","tab","currentTab","onUpdate","missingRequiredConfigs","isInstalling","status","getAppMissingConfigs","tabs","Badge","variant","invisible","length","push","getBlockletServices","renderAuditLogs","scope","renders","overview","services","members","mt","passports","components","Components","configuration","logs","Logs","navigation","BlockletConfigNavigation","monitor","TabComponent","showHeader","includes","content","DeletingBlockletProvider","Tabs","current","onChange","newTab","scrollButtons","isValidElement","Main","component","size","marginLeft","source","hasPermission","onStart","onComplete","Alert","margin","WrapDashboard","wsClient","connect","isConnected","disconnect","theme","breakpoints","values","md","__importDefault","this","mod","__esModule","Object","defineProperty","exports","splitNavigationBySection","flatternNavigation","checkLink","joinLink","cleanOrphanNavigation","filterNavigation","nestNavigationList","isMatchSection","deepWalk","parseNavigation","unionWith_1","require","isEqual_1","pick_1","isNil_1","omit_1","cloneDeep_1","url_join_1","path_1","is_absolute_url_1","lodash_1","DEFAULT_SECTION","BASE_PATH","DEFAULT_LINK","default","test","checkUrlPath","tree","cb","order","walk","index","parent","level","Array","isArray","forEach","item","i","sections","section","tryParseItem","JSON","parse","_a","normalizeNavigationList","navigationList","tempData","assign","role","link","optionalJoin","prefix","url","resultUrl","join","endsWith","slice","smartJoinLink","_parentLink","_childLink","strict","parentLink","childLink","isObject","isString","keys","reduce","Set","list","depth","transform","v","copyList","finalList","items","transformedItems","tmpItem","parseBlockletNavigationList","genNavigationListByBlocklet","_b","_c","_d","_e","_f","_g","targetList","capabilities","parentName","parentBase","currentName","currentBase","child","childName","childBase","mergeName","Boolean","childNavigation","mergeBase","matchNavigation","childItems","tmpData","id","undefined","patchBuiltinNavigation","copyNavigation","splice","from","visible","compactNavigation","resData","_parent","reduceRight","all","cur","findIndex","allNavigationList","navigationItem","baseNavigation","itemNavigationList","patchNavigationItem","sectionNavigationList","getNavigationListBySection","allSectionList","currentValue","sectionList","cloneList","findComponent","nestedNavigation","some","filteredNavigation","every","options","beforeProcess","builtinNavigation","customNavigationList","settings","navigations","compactedNavigation","patchedNavigation","splitNavigation","levelUpNavigation","flatNavigation","rawNavigation","prev","next","builtinList","slugify","module","replace","normalizePathPrefix","a","b","Actions","_templateObject","_react","_propTypes","_interopRequireDefault","_styled","_IconButton","_Menu","_MenuItem","_MoreHoriz","_ListItemIcon","_ListItemText","_jsxRuntime","_excluded","_excluded2","obj","ownKeys","object","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","enumerable","apply","_objectSpread","target","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","arg","hint","prim","Symbol","toPrimitive","call","TypeError","String","Number","_toPrimitive","_toPropertyKey","configurable","writable","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","prototype","propertyIsEnumerable","_ref","anchorEl","setAnchorEl","open","onClose","e","stopPropagation","preventDefault","_unused2","jsxs","Div","jsx","_unused","currentTarget","keepMounted","PaperProps","action","close","icon","text","_onClick","disabled","opts","createElement","dense","minWidth","primary","propTypes","array","strings","raw","div","freeze","ConfigAccess","getComponentWhoCanAccess","_templateObject2","_get","_TextField","_Box","_Edit","_useTheme","_Group","_Chip","_Checkbox","_constant","_constant2","_util","_context","_Dialog","_Button","_Spinner","_node","_team","_util2","_toast","_config","_taggedTemplateLiteral","CONFIG_ROLE","Configs","zh","en","getAccess","whoCanAccess","roleStore","startsWith","WHO_CAN_ACCESS_PREFIX_ROLES","roleNames","getRolesFromAuthConfig","filterRoles","access","app","configs","COMPONENT_ACCESS_WHO","WHO_CAN_ACCESS","ALL","service","findServiceFromMeta","NODE_SERVICES","AUTH","config","ancestors","showDialog","setShowDialog","locale","useNodeContext","roleList","useTeamContext","setLoading","root","defaultValue","defaultRoles","setWhoCanAccess","dids","iconStyle","fontSize","verticalAlign","palette","secondary","componentName","concat","onOpen","onConfirm","updateWhoCanAccess","success","StyledDialog","minHeight","Fragment","autoFocus","mb","select","SelectProps","renderValue","selected","d","StyledMenuItem","multiple","flexWrap","gap","_ref2","checked","isRequired","any","BlockletAccess","_Tooltip","_ExpandMore","_ChevronRight","_Collapse","_Launch","_EditIcon","_Empty","_blocklet","_line","_bundleAvatar","_configAccess","nodeInterop","cache","_getRequireWildcardCache","has","get","newObj","hasPropertyDescriptor","hasOwnProperty","desc","set","_interopRequireWildcard","WeakMap","cacheBabelInterop","cacheNodeInterop","ComponentItem","_blocklet$children","accessConfig","expand","setExpand","domain","recommendedDomain","href","getBlockletUrl","params","getBlockletUrlParams","fill","canExpand","expandIcon","str","group","py","justifyContent","pl","Math","max","width","xs","cursor","ml","rel","in","unshift","maxWidth","number","spacing","BlockletActions","_reactRouterDom","_useLocalStorage","_Divider","_ButtonGroup","_MoreVert","_Typography","_Radio","_RadioGroup","_FormControlLabel","_Alert","_util3","_confirm","_icons","useBlockletUrlEvaluation","rest","currentAction","setCurrentAction","confirmSetting","setConfirmSetting","LocaleContext","skipSetup","recommendedUrlLoading","recommendedUrl","inProgress","isInProgress","inService","createHandler","fn","requireUserConfirm","isRemoved","keepData","removeType","_blocklet$settings","initialized","serverUrl","getServerUrl","URL","searchParams","sleep","errMsg","Error","onCancel","removeSetting","fromBlockletSource","BlockletSource","custom","gutterBottom","setParams","control","confirmSettings","stop","confirm","cancel","restart","remove","cancelDownload","onAction","_unused3","handler","console","removeAction","isDeletableBlocklet","Remove","deleteBlocklet","cancelDownloadAction","cancelDownloadBlocklet","Start","startBlocklet","hasRunnableComponent","isDownloading","mode","BLOCKLET_MODES","DEVELOPMENT","Stop","stopBlocklet","Restart","restartBlocklet","Reload","reloadBlocklet","separator","onlyInMenu","Config","Group","Log","severity","Link","to","func","oneOf","bool","_window","_window$location","sm","AddCert","_useAsyncRetry","_CircularProgress","Add","_certState$value2","onAdd","issuing","setIssuing","refreshDomainStatus","certState","findCertificateByDomain","cert","handleIssueComplete","_certState$value","BlockletEvents","certError","certIssued","retry","issueLetsEncryptCert","setting","domainStatus","others","shouldCheckDomainStatus","isHttps","string","shape","_objectDestructuringEmpty","Agreement","_serverEula","_wizardDesc","_agreementApp","onClickNext","handleDescEle","clickNext","search","Container","blockletMeta","onContinue","texts","listenName","buttonNext","down","grey","up","BlockletAppAvatar","_Avatar","_Avatar2","_useAppLogo","_find","logoUrl","imgEle","src","alt","logo","BLOCKLET_APP_LOGO_SQUARE","responsive","backgroundColor","height","borderRadius","oneOfType","_ref3","_auditLog","AuditLogProvider","AuditLogs","_reactMarkdownPreview","_Pagination","_Select","_InputLabel","_FormControl","_relativeTime","getUserLink","log","actor","AuditLog","_log$env$os","_log$env$browser","fullName","linkTarget","ip","os","browser","createdAt","useAuditLogContext","categories","setCategory","fetch","textAlign","marginTop","category","pageCount","page","count","showFirstButton","showLastButton","_ref4","main","_urlJoin","_toUpper","_Tag","_Link","_blocklet$meta","sourceInfo","deployedFrom","bundleDid","underline","BlockletAvatar","_useBundleLogo","setFallBackUrl","ev","onError","AddComponent","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_uniqBy","_flatten","_isEmpty","_isNil","_pageHeader","_DialogContentText","_Check","_useMediaQuery","_launcherLayout","_step","_AnimationWaiter","_launchResultMessage","_schemaForm","_required","_purchase","_agreement","_installFromUrl","_selectStore","_storeBlockletList","hasRequiredEnvironments","required","hasMissRequiredConfigs","configsList","sharedValueMap","getParamsName","StepContent","forwardRef","ref","isMobile","onStepChange","useStepContext","steps","activeStep","setActiveStepByKey","setActiveStepByIndex","step","useImperativeHandle","DialogContentWrapper","pcWidth","pcHeight","registryUrl","getBlockletLogoUrl","baseUrl","logoPath","stepTip","RightContent","body","_blocklet$meta2","_blocklet$meta3","_blocklet$meta4","_purchaseRef$current","_purchaseRef$current$","_purchaseRef$current2","_purchaseRef$current3","editingItem","setEditingItem","setError","setConfigs","purchaseData","setPurchaseData","isWaitingPurchase","setIsWaitingPurchase","initParams","componentDid","pathPrefix","configsValue","hasEnvironmentsStep","requirePurchase","installResultProps","purchaseResultProps","showFromUrlDialog","setActiveStep","useRef","stepRef","purchaseRef","updateParams","validateInput","getComponentName","_component$current","setInstallErrorResult","errorMessage","subTitle","footer","onInstall","installInput","createBlockletEventHandler","_b$meta","statusChange","BlockletStatus","upgrading","downloadFailed","installFailed","payload","_component$current2","inStore","inputUrl","downloadTokenList","_component$current3","getBlockletMetaUrl","rootDid","installComponent","getStoreList","fromBlocklet","storeList","isNewStoreUrl","isNew","decoded","addBlockletStore","validatePathPrefix","blocklets","onNext","_onCancel","onGeneratePurchaseData","installOpts","setConfigValue","_list$","_list$$meta","_meta$environments","chooseParams","componentDidValue","isInit","Date","deletedAt","newConfigs","validation","formatItem","doc","componentSelfConfigs","componentAllConfigs","sharedConfigObj","getSharedConfigObj","hidden","_component$current$me","_component$current$me2","urlFriendly","componentRequirePurchase","isFreeBlocklet","TypographyWrapper","onSuccess","_ref5","handleText","extra","_ref6","currentRegistry","storeUrl","handleButtonClick","handleBlockletRender","_ref7","blockletItem","defaultRender","isChosen","StoreBlockletItemWrapper","extraFilter","allBlocklets","isComponentBlocklet","dangerouslySetInnerHTML","__html","getCurrentStep","PageHeaderWrapper","ComponentPurchaseSelect","paddingTop","handlePaySuccess","autoComplete","helperText","marginBottom","formatToDatetime","inputProps","schema","changeValue","_ref8","currentItem","allValues","MessageDiv","increaseSpeed","messageLoop","setTimeout","scrollDom","document","getElementsByClassName","scrollTop","scrollHeight","onMenuItemClick","showCloseButton","DialogWrapper","innerHeight","event","reason","_steps$","_steps$$onCancel","disableEscapeKeyDown","overflow","textOverflow","whiteSpace","StepProvider","newStep","isMobileDialogContent","_ref9","common","white","ComponentConfiguration","_Tabs","_environment","_setting","isRoot","isDynamic","dynamic","setTab","tabConfigs","tabConfig","DeleteComponent","_Delete","tip","deleteSetting","setDeleteSetting","deleteComponent","param","componentDisabled","btn","StyledButton","btnWithToolTip","ComponentEnvironment","_core","_clickToCopy","_tableIcons","_table","_permission","onConfigChanged","isConfigEditable","onAddConfig","trim","configBlocklet","result","code","onEditConfig","newData","oldData","BLOCKLET_CLUSTER_SIZE","errMessage","isValidClusterSize","onDeleteConfig","componentConfigs","getComponentMissingConfigs","hasBWAConfig","onRowAdd","onRowUpdate","onRowDelete","isDeletable","permission","BlockletAdminRoles","isBlockletDev","columns","field","initialEditValue","render","fontWeight","editComponent","rowData","_onChange","EditDiv","placeholder","secure","unstyled","wordBreak","_onChange2","icons","emptyRowsWhenPaging","actionsColumnIndex","tableLayout","maxBodyHeight","localization","header","emptyDataSourceMessage","editable","_last","_useAsync","_RelativeTime","Expiration","_state$value","_state$value$data","_state$value$data$val","controller","state","getAsset","chainHost","nftId","expirationDate","launcherUrl","encodeURIComponent","_default","_semver","_DialogContent","_DialogTitle","_DialogActions","_Update","_Add","_Badge","_SettingsOutlined","_InfoOutlined","_Grid","_ArrowForward","_InfoRow","_deletingBlocklets","_didAddress","_tag","_blockletSource","_status","_version","_mode","_configuration","_delete","_add","_addRule","_ruleList","getEngineRows","engine","displayName","onRemove","componentInfo","setComponentInfo","deletingComponents","useDeletingBlockletContext","deletingBlocklets","rows","showStatus","bundleSource","store","getSourceInfo","componentRows","checkUpgrade","formatPerson","author","nameWidth","deleteDisabledTip","flexGrow","px","StyledBadge","badgeContent","paddingY","row","valueComponent","nameFormatter","top","right","addDeletingDid","removeDeletingDid","matchDeletingDid","updateConfirm","setUpdateConfirm","showUpdateDot","setShowUpdateDot","getLatestBlockletVersion","then","gt","catch","err","checkForUpdates","newVersion","checkComponentsForUpdates","preUpdateInfo","updateId","updateList","forEachChildSync","updateItem","groupId","checks","hasChecks","onConfirmUpdate","upgradeBlocklet","bind","upgradeComponents","selectedComponents","removeComponent","mr","site","rules","newValue","entries","o","oldValue","onUpdateChecksChange","defaultChecked","container","Line","borderBottom","borderColor","_ahooks","_lodash","_react2","_material","_simpleSelect","_locales","defaultLocale","LocaleTabs","locales","onRemoveLocale","inputRef","addLocaleButtonEl","setAddLocaleButtonEl","useReactive","currentLocale","localeList","inputLocale","localeError","openChooseLocale","useMemo","localeOptions","omit","checkLocale","checkValidLocale","checkResult","handleAddLocale","_state$inputLocale","useKeyPress","Tab","position","IconButton","without","handleRemoveLocale","Icon","disableFocusRipple","Popover","anchorOrigin","vertical","horizontal","p","Typography","NavigationActions","add","edit","toggle","del","isDisabled","isUninstalled","subtitle","handleClick","handleClickAdd","useCallback","handleClickEdit","handleClickToggle","handleClickDelete","_omit","_pick","_values","_without","_isString","_isObject","_cloneDeep","_reactHookForm","_notistack","_parseNavigationFromBlocklet","_index","_isAbsoluteUrl","_localeTabs","initialFormState","IconSuffix","loaded","setLoaded","useAsyncEffect","loadIcon","NavigationDialog","rawNavigations","saveFn","useBoolean","show","setFalse","setTrue","enqueueSnackbar","useSnackbar","linkDisabled","formState","useForm","defaultValues","handleSubmit","watch","setValue","clearErrors","errors","watchComponent","watchTitle","watchLink","watchIcon","watchParent","selectedOption","linkPrefix","stringLink","withoutTrailingSlash","selectedLink","autocompleteOptions","typeName","reset","patchFormValues","localeItem","pickData","validTitle","len","validLink","handleChangeLocale","checkFormState","validRes","handleFormSubmit","checkRes","noValidate","Controller","validate","_errors$title","_errors$title2","TextField","isEdit","_errors$icon","_errors$icon2","InputProps","endAdornment","InputAdornment","disableRipple","_errors$component","_errors$component2","placeholer","_errors$link3","_errors$link4","FormControl","Autocomplete","disablePortal","freeSolo","blurOnSelect","autoSelect","isOptionEqualToValue","option","renderInput","_errors$link","_errors$link2","startAdornment","renderOption","onInputChange","_errors$role","_errors$role2","_Header","_Footer","_Dashboard","_linkBlocker","NavigationPreview","blockletInfo","appDid","appLogo","appName","enableConnect","enableLocale","invalidPathFallback","headerProps","Grid","Skeleton","animation","pt","SimpleSelect","defaultOption","InputLabel","Select","OutlinedInput","Chip","MenuItem","ListItemText","FormHelperText","SelectStore","_ArrowDropDown","_constants","_item","setOpen","storeSelectRef","storageKey","STORAGE_KEY_STORE_BLOCKLET","STORAGE_KEY_STORE_SERVER","setStoreUrl","SelectStoreTitle","endIcon","newRegistry","MenuProps","onDelete","_storeList$","black","ComponentSettingInService","ComponentSettingInDaemon","_formTextInput","ComponentSetting","onSubmitTitle","updateComponentTitle","onSubmitMountPoint","updateComponentMountPoint","initialValue","onSubmit","withPermission","_reactSortableTree","_reactSortableTreeThemeMaterialUi","_isEqual","_reactDndHtml5Backend","_reactDnd","checkCanDrop","prevPath","nextPath","prevLen","nextLen","TreeTitle","treeNode","titleShow","subtitleShow","renderTitle","SortableTree","treeData","setTreeData","renderActions","expandedData","expanded","dndProps","context","DndProvider","backend","HTML5Backend","SortableTreeWithoutDndContext","generateNodeProps","rowInfo","buttons","maxDepth","isVirtualized","canDrop","BlockletList","_ErrorBoundary","_reactErrorBoundary","_list","_Blocklet","getStoreDetail","displayAttributes","attribute","_formatted","BlockletItem","formatRegistryLogoPath","btnTxt","contains","StyledBlocklet","cover","button","ActionButton","handleSearchSelect","filters","setFilters","blockletRender","blockletRenderProps","baseSearch","onFilterChange","changeData","onSearchSelect","_lab","_Session","_sortableTree","_navigationDialog","_navigationActions","_useNavigation","_navigationPreview","mockSession","login","logout","switch","switchDid","switchProfile","switchPassport","navigationTypeMap","bottom","social","dashboard","sessionManager","refNavigationDialog","pageState","saveLoading","resetLoading","showResetConfirm","mockRole","navigationState","getNavigation","saveNavigationList","resetNavigation","updateActiveSection","updateNavigationTree","updateNavigationItem","delNavigationItem","addNavigationItem","handleAddNavigation","handleEditNavigation","handleSaveNavigation","handleResetNavigation","sessionCtxValue","session","user","ButtonGroup","activeSection","Toolbar","paddingLeft","paddingRight","LoadingButton","startIcon","loadingPosition","Paper","elevation","_len","args","_key","_len2","_key2","_len3","_key3","m","SessionContext","Confirm","BlockletEnvironmentInService","BlockletEnvironmentInDaemon","_Switch","_LockIcon","_addDomainAlias","_domainStatus","_domainActions","_walletType","_appSk","_addCert","BlockletEnvironment","cpuCores","setCpuCores","getWhoCanAccess","publicToStore","domains","sortDomains","domainAliases","clusterMode","NODE_RUNTIME_INFO","customType","customDelete","deletable","customUrl","customLogoSquare","customLogoRect","customLogoFavicon","customLogoDeprecated","configurableEnvs","BLOCKLET_APP_NAME","BLOCKLET_APP_DESCRIPTION","BLOCKLET_APP_URL","BLOCKLET_APP_LOGO_RECT","BLOCKLET_APP_LOGO_FAVICON","BLOCKLET_APP_LOGO","exist","schemaList","onPublicToStoreChange","configPublicToStore","onSubmitConfig","onDeletableChange","BLOCKLET_DELETABLE","onWalletTypeChange","BLOCKLET_WALLET_TYPE","onUpdateCors","corsAllowedOrigins","split","updateRoutingSite","onAppSkChange","BLOCKLET_APP_SK","my","isProtected","placement","pointerEvents","paddingBottom","border","BlockletDiskInfo","_filesize","diskInfo","renderDiskInfo","dir","acc","BLOCKLET_APP_DIR","BLOCKLET_DATA_DIR","BLOCKLET_LOG_DIR","BLOCKLET_CACHE_DIR","_PlayArrow","_Stop","_Replay","_Autorenew","_Settings","_Receipt","InstallFromUrl","_Stepper","_Step","_StepLabel","defaultUrl","initMeta","dist","setUrl","setMeta","existingMeta","setExistingMeta","isComponentMode","alwayShowSteps","onGetMeta","decodeURIComponent","getBlockletMetaFromUrl","newer","getBlocklet","attachRuntimeInfo","existedBlocklet","gte","_onConfirm","installBlocklet","tarball","onKeyPress","s","alternativeLabel","BlockletLog","_logTerminal","_download","LogTerminalGroup","logId","initialData","postpend","BlockletMode","BlockletMonitor","_prettyMsI18n","_Datatable","_runtimeInfo","_diskInfo","runtimeHistory","monitList","arr","forEachBlockletSync","runtimeInfo","groupName","interval","setInterval","clearInterval","monitorColumns","customBodyRenderLite","rawIndex","uptime","formatLocale","memoryUsage","cpuUsage","toFixed","cpuHistory","cpu","memoryHistory","memory","download","print","viewColumns","pagination","rowsPerPage","BlockletOverview","_types","_expiration","DomainLink","accessibility","LinkDiv","accessible","DomainType","span","_blocklet$site","loadingRuntimeInfo","infoRows","installedAt","startedAt","stoppedAt","owner","engineRows","AppSk","confirmAppSk","setConfirmAppSk","UL","BlockletPreferences","_reactIframe","_TuneRounded","_Key","addComponentTabs","setCurrent","expandPref","setExpandPref","routing","adminPath","URLSearchParams","toString","frameBorder","styles","orientation","borderRight","WalletType","confirmCustomType","setConfirmCustomType","WalletTypes","CustomSelect","useStyles","commonProps","_styles","_List","_ListItem","_ShoppingCart","_VerifiedUser","_Colors","makeStyles","dialogAuth","iconRoot","onSelect","classes","tabPanel","ComponentPurchase","_Connect","_pWaitFor","_api","_common","webWalletUrl","getWebWalletUrl","nw","setNw","handleConnectSuccess","decrypt","handleConnectSessionStatus","failure","extractStatusUrlFromNextWorkflow","statusUrl","nextWorkflowUrl","modePropsMap","verify","checkFn","axios","baseURL","extraParams","blockletDid","messages","scan","purchase","factory","nftFactory","popup","saveConnect","cancelWhenScanned","checkTimeout","disableClose","showDownload","setAction","setStep","act","_componentPurchase","AddDomainAlias","_CallMerge","addDomainAlias","domainAlias","onEnter","validateDomain","__disableConfirm","AddRule","_configRoutingRule","siteId","validateRule","rule","ROUTING_RULE_TYPES","REDIRECT","redirectCode","addRoutingRule","disable","validateResult","BLOCKLET","interfaceName","ConfigRoutingRule","serviceTypes","redirectCodesMap","NONE","DeleteDomainAlias","hostname","deleteDomainAlias","edge","DeleteRule","_deleteConfirm","ruleId","deleteRoutingRule","keyName","confirmPlaceholder","UpdateRule","updateRoutingRule","DomainActions","_actions","_deleteDomainAlias","DomainStatus","_Https","_dot","_certificate","domainIcon","httpsIcon","matchedCert","checkIsWildcardDomain","dns","resolved","certificate","RuleActions","_deleteRule","_updateRule","getAccessUrl","RuleListInService","RuleListInDaemon","_isUrl","_ruleActions","RedirectRule","toUrl","scheme","tmpToUrl","RuleList","avatarName","validateSite","isSpecialDomain","getInitialBlockletDid","_isPathPrefixEqual","validateRuleByServiceType","localeContext","DEFAULT_IP_DOMAIN_SUFFIX","suffix","curBlocklet","interfaces","BLOCKLET_DYNAMIC_PATH_PREFIX","fromDid","specialDomains","DOMAIN_FOR_IP_SITE_REGEXP","DOMAIN_FOR_DEFAULT_SITE","DOMAIN_FOR_IP_SITE","BlockletRuntimeInfo","_cpu","_memory","appRuntimeInfo","lg","currentLoad","history","hideDescription","used","arrayOf","date","colors","colorMap","added","waiting","downloading","downloaded","installing","installed","starting","running","stopping","stopped","restarting","corrupted","deleting","statusTxt","BlockletVersionInService","BlockletVersionInDaemon","_ArrowUpward","_Toast","Version","newVersionBlocklet","setNewVersionBlocklet","autoHideDuration","Certificate","_Popover","_Card","_CardContent","handlePopoverClose","onMouseEnter","onMouseLeave","transformOrigin","disableRestoreFocus","maxHeight","formatToDate","validFrom","validTo","ClickToCopy","_ClickToCopy","copiedTip","ConfirmDialog","_mobileWidth","showCancel","initialParams","changeLocale","onCallback","isBreakpointsDownSm","fullScreen","AuditLogContext","AuditLogConsumer","auditLogs","setAuditLogs","total","pageSize","setPaging","fetchLogs","silent","getAuditLogs","createContext","Consumer","DeletingBlockletContext","_xorWith","setDeletingBlocklets","deletingBlockletsDid","reDeleteings","existDids","inDeleting","NodeConsumer","inDaemon","useSessionContext","TeamConsumer","CancelConfirm","_title","_description","inputVal","_Address","WrappedDidAddress","external","avatarProps","Content","prepend","defaultSize","FormTextInput","_Close","_Done","_formWrapper","editing","setEditing","setDefaultValue","onKeyDown","useTheme","_window$env","apiPrefix","APP_PREFIX","rawList","injectNavigationData","treeNavigation","rawData","navigationWithLink","getNavigationFullLink","fullList","findItem","Uninstalled","navigation2tree","baseLink","BASE_LINK","componentItem","base","__base","_omitBy","formartedData","stringify","configNavigations","itemData","changed","updatedNavigation","findChanged","changeItem","isSameNavigation","_saveNavigationChange","relatedNavigationId","_nanoid","nanoid","treeItem","unchangedNavigation","Feedback","infoStr","feedbackUrl","mx","_useInterval","currentTime","setCurrentTime","formatTime","DownloadLog","_dayjs","_Download","_formatName","DAYS","setIsDownloading","days","setDays","onDownload","responseType","createObjectURL","setAttribute","format","appendChild","click","removeChild","revokeObjectURL","LogTerminal","_Terminal","_clock","types","logTypeLabels","stdout","stderr","currentType","setCurrentType","logFiles","setLogFiles","terminalRefs","terminal","write","LogTerminalGroupRoot","logFile","visibility","LogTerminalRoot","boxSizing","background","foreground","MonitCard","graph","StyledCard","CpuMonitor","_Sparkline","_card","physicalCores","svgRef","tooltipRef","tooltipState","left","textContent","cpuDom","setCpuDom","useSize","sparklineOptions","onmousemove","dataPoint","onmouseout","querySelector","floor","strokeWidth","MemoryMonitor","instanceCount","dom","setDom","showPercent","available","memoryPercent","memoryList","metric","PassportTag","Tag","Permission","Component","permissionName","_session","can","userPermissions","RelativeTime","prettyOption","compact","valTime","getTime","now","time","enterTouchDelay","AddStore","addMenuItemRoot","lineHeight","setDisable","font","overflowY","DeleteStore","_DeleteOutline","deleteBlockletStore","StoreItem","_ListItemSecondaryAction","buttonText","textTransform","menuName","protected","_Clear","_SaveAlt","_Filter","_FirstPage","_LastPage","_ChevronLeft","_Search","_Remove","_ViewColumn","Check","Delete","Edit","Clear","DetailPanel","Filter","FirstPage","LastPage","NextPage","PreviousPage","Search","ResetSearch","SortArrow","Export","ThirdStateCheck","ViewColumn","Wrapped","MemberActions","_ForbidLoginIcon","_AllowLoginIcon","_issuePassport","_toggleUserApproval","onIssuePassport","setEnablePassportIssuance","approved","ownerDid","MemberList","_classnames","_Loop","_PersonIcon","_ExternalIssuerIcon","_inviteMember","_transferNode","_member","_invitations","ROLE_ALL","ROLE_NONE","getCount","counts","SimpleInfo","avatar","isFromExternal","showInviteMember","setShowInviteMember","showTransferMember","setShowTransferMember","showInviting","setShowInviting","memberDialog","setMemberDialog","users","setUsers","rowCount","setRowCount","userCounts","setUserCounts","durableKey","tableDurableData","getDurableData","searchText","hideBlocked","setSearch","sideList","num","z","_z$issuer","issuer","parseAvatar","getUserCounts","handleUserChange","USER_UPDATED","USER_ADDED","isInvitationEnabled","customBodyRender","copyable","align","verticalKeyAlign","initTab","customButtons","flexShrink","tableOptions","expandableRowsOnClick","onRowClick","dataIndex","searchDebounceTime","verticalKeyWidth","durable","durableKeys","userDid","Invitations","delConfirm","setDelConfirm","deleteInvitation","inviteId","getLink","column","getInviteLink","widtn","_d$inviter","rowIndex","inviter","InviteMember","inviteInfo","setInviteInfo","setRole","remark","setRemark","onCreate","trimRemark","createMemberInvitation","r","Bold","expireDate","IssuePassport","showOwnerPassport","createPassportIssuance","Member","_passportIssuances","_passports","issuances","setIssuances","setUser","getData","doBatchQuery","getUser","getPassportIssuances","email","updatedAt","onRefresh","BlockButton","PassportIssuances","_passportTag","deleteIssuance","deletePassportIssuance","sessionId","getIssuePassportLink","Issuance","Passports","_upperFirst","_ErrorOutline","_RevokeIcon","_createPassportSvg","_searchInput","_listHeader","ConfirmDescription","refreshTeam","toggleConfirm","setToggleConfirm","showIssueDialog","setShowIssueDialog","revoked","PASSPORT_STATUS","REVOKED","togglePassportStatus","method","passportId","revokeInfo","revokable","filteredPassports","issuerDid","ownerName","ownerAvatarUrl","preferredColor","ToggleUserApproval","isSelf","sessionUser","setShow","updateUserApproval","approveConfirm","nodeOwner","isNodeOwner","TransferMember","sessionAPI","openTransferNFTAuth","setOpenTransferNFTAuth","needTransferNFT","delegationState","getDelegationState","delegated","createTransferInvitation","tmpInviteInfo","handleCancelTransferNFT","targetDID","USER_AVATAR_URL_PREFIX","USER_AVATAR_PATH_PREFIX","PassportColorInService","PassportColorInDaemon","_reactColor","_passportColor","PassportColor","curColor","defaultColor","getPassportColorFromDid","setColor","BLOCKLET_PASSPORT_COLOR","ChromePicker","c","hex","isDataUrl","PassportDetailInService","PassportDetailInDaemon","_DeleteIcon","_mutateRole","PassportDetail","roleName","binds","setBinds","updateForm","setUpdateForm","isProtectedRole","deletePassport","deleteRole","team","getPermissionsByRole","permissionList","bindList","onBind","grantNames","updatePermissionsForRole","readPermissionsOnly","bindPermission","toolbar","PassportList","_SplitButton","_detail","_color","_trustedIssuers","showCreate","setShowCreate","showColor","setShowColor","showTrustedIssuers","setShowTrustedIssuers","toggleShowIssue","configPassportIssuance","enable","filteredRoles","menuButtonProps","menu","Item","MutateRole","_md","setTitle","setDescription","createRole","updateRole","multiline","TrustedIssuer","_ArrowBack","LongArrow","viewBox","xmlns","canSave","mappings","setIssuerDid","setMappings","editIndex","configTrustedPassports","trustedList","ROLES","GUEST","flexBasis","TrustedIssuersInService","TrustedIssuersInDaemon","_trustedIssuer","TrustedIssuers","trustedIssuer","setTrustedIssuer","deleteTrustedIssuer","filteredIssuers","toLowerCase","showDidLogo","_axios","defaults","timeout","fr","ru","ar","es","de","ja","hi"],"sourceRoot":""}