@abtnode/blocklet-services 1.8.41 → 1.8.42

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.
@@ -1 +0,0 @@
1
- {"version":3,"file":"static/js/409.4be7cae9.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/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/agreement-app.js","../../ux/lib/blocklet/agreement.js","../../ux/lib/blocklet/audit-logs.js","../../ux/lib/blocklet/avatar.js","../../ux/lib/blocklet/blocklet-source.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/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/overview.js","../../ux/lib/blocklet/preferences/index.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-avatar.js","../../ux/lib/hooks/use-navigation.js","../../ux/lib/layout/feedback.js","../../ux/lib/logs/clock.js","../../ux/lib/logs/log-terminal.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';\n\nconst { Provider, Consumer } = NodeContext;\n\n// eslint-disable-next-line react/prop-types\nfunction NodeProvider({ children }) {\n const prefix = `${WELLKNOWN_SERVICE_PATH_PREFIX}/static/images`;\n\n const { serverDid, serverVersion } = window.env;\n\n const value = {\n prefix,\n api: client,\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 BlockletAvatar from '@abtnode/ux/lib/blocklet/avatar';\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\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 };\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 ? <BlockletAvatar 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\";\n// @ts-nocheck\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.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;\n/**\n *\n * @param {object} tree 需要深度遍历的数状结构\n * @param {function} cb 每一个节点的回调函数,回调的参数:当前节点数据,父亲节点数据,{index:当前节点所属的数组中的序号,level: 当前节点所处的深度}\n * @param {object} param 深度遍历的参数\n * @param {string} param.key 孩子数组的 key 值\n * @param {number} param.index 当前节点所属的数组中的序号\n * @param {object} param.parent 当前节点的父节点\n * @param {number} param.level 当前节点的深度\n */\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 fullNavigation = nestNavigationList(navigationList);\n deepWalk(fullNavigation, (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 return fullNavigation.filter((item) => item.visible !== false);\n}\nexports.filterNavigation = filterNavigation;\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 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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 _avatar = _interopRequireDefault(require(\"../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)(_avatar.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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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 = 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 = 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 = BlockletAvatar;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\nvar _Avatar2 = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _useAvatar = _interopRequireDefault(require(\"../hooks/use-avatar\"));\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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, _useAvatar.default)({\n blocklet,\n ancestors\n });\n const {\n variant\n } = rest;\n const setFallBackUrl = inService ? () => {} : ev => {\n ev.target.src = \"\".concat(node.prefix, \"/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 = 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 = 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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.jsx)(_environment.default, {\n blocklet: blocklet,\n ancestors: ancestors\n }) : /*#__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 })\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 configs.push({\n key: oldData.key\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 const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs: [{\n key: data.key\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 = 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 _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 _runtimeInfo = _interopRequireDefault(require(\"../runtime-info\"));\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 _avatar = _interopRequireDefault(require(\"../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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 _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.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.runtimeInfo'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_runtimeInfo.default, {\n blocklet: componentInfo,\n noRunningMessage: t('--')\n })\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)(_avatar.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 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)(_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 list.push({\n name,\n version: b.meta.version,\n newVersion: updateItem.meta.version\n });\n }\n });\n setUpdateConfirm({\n type: 'child',\n params: {\n updateId\n },\n list\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 input = {\n updateId: updateConfirm.params.updateId,\n rootDid: blocklet.meta.did\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 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: _ref6 => {\n let {\n open\n } = _ref6;\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: _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-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: t('blocklet.component.updateTitle')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n component: _DialogContent.default,\n py: 4,\n ml: 4,\n children: updateConfirm.list.map(x => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n item: true,\n xs: 5,\n children: x.name\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Grid.default, {\n fontSize: \"h6.fontSize\",\n container: true,\n spacing: 3,\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 2,\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: 2,\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 }), /*#__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,\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 _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 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)(_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 }), /*#__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 }), /*#__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 }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n disabled: isDisabled,\n size: \"small\",\n color: \"error\",\n onClick: handleClickDelete,\n title: isDisabled ? 'Not allowed delete built-in navigation' : 'Delete navigation',\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:delete\"\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 return item.component === watchComponent;\n }\n return item.id === watchParent;\n });\n return parentData;\n }, [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[locale] : link;\n return (0, _index.withoutTrailingSlash)((0, _urlJoin.default)(stringLink, selectedOption.link || '/'));\n }\n return null;\n }, [components, locale, selectedOption]);\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 _useAvatar = _interopRequireDefault(require(\"../../../hooks/use-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 NavigationPreview(_ref) {\n let {\n className,\n navigation\n } = _ref;\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const {\n logoUrl\n } = (0, _useAvatar.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 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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 rootDid = 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 await api.updateComponentMountPoint({\n input: {\n rootDid,\n did: blocklet.meta.did,\n mountPoint: value\n }\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: [/*#__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 = _interopRequireDefault(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 _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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactSortableTree.default, {\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}\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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; }\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 _Session = require(\"@arcblock/did-connect/lib/Session\");\nvar _notistack = require(\"notistack\");\nvar _ahooks = require(\"ahooks\");\nvar _Dialog = require(\"@arcblock/ux/lib/Dialog\");\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 _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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nconst mockSession = {\n login: () => {},\n logout: () => {},\n switch: () => {},\n switchDid: () => {},\n switchProfile: () => {},\n switchPassport: () => {}\n};\nfunction ConfigNavigation() {\n const [showTree, setShowTree] = (0, _react.useState)(false);\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const pageState = (0, _ahooks.useReactive)({\n saveLoading: false,\n resetLoading: false,\n showResetConfirm: false,\n mockRole: 'owner'\n });\n (0, _react.useEffect)(() => {\n setShowTree(true);\n return () => {\n setShowTree(false);\n };\n }, []);\n const navigationTypeMap = {\n header: 'Header',\n footer: 'Footer',\n bottom: 'Footer Link',\n social: 'Footer Social',\n dashboard: 'Dashboard',\n sessionManager: 'SessionManager'\n };\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 {\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 } finally {\n pageState.saveLoading = false;\n }\n }, [enqueueSnackbar, navigationState.rawNavigation, pageState, saveNavigationList]);\n const handleResetNavigation = (0, _react.useCallback)(async () => {\n try {\n pageState.resetLoading = true;\n await resetNavigation();\n enqueueSnackbar('重置成功', {\n variant: 'success'\n });\n } finally {\n pageState.resetLoading = false;\n }\n }, [enqueueSnackbar, pageState, resetNavigation]);\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: showTree && /*#__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 _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\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(\"@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 _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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 {\n domainAliases\n } = site;\n const clusterMode = (0, _get.default)(blocklet.meta, 'capabilities.clusterMode', false);\n useSubscription('system.info', res => {\n if (clusterMode) {\n setCpuCores((0, _get.default)(res, 'cpu.cores', ''));\n }\n });\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n const WalletTypes = [{\n label: 'DID',\n value: 'default'\n }, {\n label: 'ETH',\n value: 'eth'\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 customLogo = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO');\n const customLogoSquare = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO_SQUARE');\n const configurableEnvs = [{\n key: _constant.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: _constant.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: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_URL,\n description: t('blocklet.config.appUrl'),\n value: customUrl ? customUrl.value : ''\n }, {\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO,\n description: t('blocklet.config.logo'),\n value: customLogo ? customLogo.value : ''\n }, {\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO_SQUARE,\n description: t('blocklet.config.logoSquare'),\n value: customLogoSquare ? customLogoSquare.value : ''\n }];\n if (clusterMode) {\n const exist = blocklet.configs.find(x => x.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE);\n const value = exist ? exist.value : cpuCores;\n configurableEnvs.push({\n key: _constant.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 === _constant.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: _constant.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 e => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const {\n value\n } = e.target;\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: [{\n key: _constant.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 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 }), domainAliases.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 })]\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)), !domainAliases.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 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)(_TextField.default, {\n disabled: disabled,\n select: true,\n size: \"small\",\n value: (customType === null || customType === void 0 ? void 0 : customType.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 })]\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_schemaForm.default, {\n disabled: disabled,\n style: {\n marginTop: 0\n },\n loading: loading,\n schema: [{\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SK,\n description: t('blocklet.config.sk'),\n value: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_SK').value,\n secure: true\n }],\n defaultValue: {\n [_constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SK]: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_SK').value\n },\n onChange: (changeValue, _ref4) => {\n let {\n action,\n currentItem\n } = _ref4;\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 })]\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'));\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 = BlockletDiskInfo;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\nvar _reactRouterDom = require(\"react-router-dom\");\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 BlockletDiskInfo(_ref) {\n let {\n blocklet\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const navigate = (0, _reactRouterDom.useNavigate)();\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 name: t('blocklet.diskInfo.appDir'),\n value: renderDiskInfo(env.BLOCKLET_APP_DIR, blocklet.diskInfo.app)\n }, {\n name: t('blocklet.diskInfo.dataDir'),\n value: renderDiskInfo(env.BLOCKLET_DATA_DIR, blocklet.diskInfo.data)\n }, {\n name: t('blocklet.diskInfo.logDir'),\n value: renderDiskInfo(env.BLOCKLET_LOG_DIR, blocklet.diskInfo.log, () => {\n navigate(\"/logs/blocklet-\".concat(blocklet.meta.did));\n })\n }, {\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.name))\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 _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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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; }\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 })\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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 = 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 _runtimeInfo = _interopRequireDefault(require(\"./runtime-info\"));\nvar _diskInfo = _interopRequireDefault(require(\"./disk-info\"));\nvar _status = _interopRequireDefault(require(\"./status\"));\nvar _version = _interopRequireDefault(require(\"./version\"));\nvar _domainStatus = _interopRequireDefault(require(\"./router/domain-status\"));\nvar _types = require(\"./types\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\"];\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 _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(_ref2) {\n var _blocklet$settings;\n let {\n blocklet\n } = _ref2,\n rest = _objectWithoutProperties(_ref2, _excluded);\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n info: nodeInfo,\n inService\n } = (0, _node.useNodeContext)();\n const {\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 }, {\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 {\n site\n } = blocklet;\n const {\n domainAliases = []\n } = site || {};\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\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 }), domainAliases.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)), !domainAliases.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.runtimeInfo')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_runtimeInfo.default, {\n blocklet: blocklet\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: t('common.engine')\n }), engineRows.map(_ref3 => {\n let {\n name,\n value\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n nameWidth: 120,\n name: name,\n children: value\n }, name);\n })]\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}\nBlockletOverview.propTypes = {\n blocklet: _propTypes.default.object.isRequired\n};\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 = 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 _avatar = _interopRequireDefault(require(\"../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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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; }\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)(_avatar.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.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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 302: t('common.redirectTemporary'),\n 301: 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\nvar _prettyMsI18n = _interopRequireDefault(require(\"pretty-ms-i18n\"));\nvar _isEmpty = _interopRequireDefault(require(\"lodash/isEmpty\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"noRunningMessage\"];\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 BlockletRuntimeInfo(_ref) {\n let {\n blocklet,\n noRunningMessage\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t,\n locale\n } = (0, _react.useContext)(_context.LocaleContext);\n if (blocklet.status !== 'running') {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: noRunningMessage || t('blocklet.runtimeInfo.noRunning')\n });\n }\n if ((0, _isEmpty.default)(blocklet.runtimeInfo)) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('common.empty')\n });\n }\n const rows = [{\n name: t('blocklet.runtimeInfo.memoryUsage'),\n value: (0, _filesize.default)(blocklet.runtimeInfo.memoryUsage)\n }, {\n name: t('blocklet.runtimeInfo.cpuUsage'),\n value: \"\".concat(blocklet.runtimeInfo.cpuUsage * 100, \"%\")\n }, {\n name: t('blocklet.runtimeInfo.uptime'),\n value: (0, _prettyMsI18n.default)(Number(+new Date() - blocklet.runtimeInfo.startAt || 0), {\n locale: (0, _util.formatLocale)(locale)\n })\n }, {\n name: t('blocklet.runtimeInfo.processId'),\n value: blocklet.runtimeInfo.pid\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: rows.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 nameFormatter: x => x,\n children: value\n }, name);\n })\n }));\n}\nBlockletRuntimeInfo.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n noRunningMessage: _propTypes.default.string\n};\nBlockletRuntimeInfo.defaultProps = {\n noRunningMessage: ''\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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.prefix, \"/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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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\"];\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 FormTextInput(_ref) {\n let {\n label,\n disabled,\n required,\n initialValue,\n onChange,\n placeholder,\n style,\n onSubmit\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)(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 }, 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: 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};\nFormTextInput.defaultProps = {\n style: {},\n onSubmit: () => {},\n onChange: () => {},\n label: '',\n initialValue: '',\n placeholder: '',\n required: false,\n disabled: 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 = 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 = \"?version=\".concat(blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.version);\n let logoUrl = inService ? (0, _urlJoin.default)(_util.APP_PREFIX, _constant.WELLKNOWN_SERVICE_PATH_PREFIX, '/blocklet/logo', search) : (0, _urlJoin.default)(node.prefix, '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\".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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 hackBuiltinLink(treeList) {\n const copyData = (0, _cloneDeep.default)(treeList);\n (0, _parseNavigationFromBlocklet.deepWalk)(copyData, item => {\n if (item.from === 'tmpl') {\n item.link = '/';\n }\n }, {\n key: 'items'\n });\n return copyData;\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 = hackBuiltinLink((0, _parseNavigationFromBlocklet.joinLink)(rawData, components));\n return 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.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\"],\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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; }\n/**\n * 按 level/destination 分类的一组 terminal\n */\nfunction LogTerminalGroup(_ref) {\n let {\n name,\n logId,\n types,\n initialData,\n prepend\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: [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-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};\nLogTerminalGroup.defaultProps = {\n types: ['error', 'info', 'access', 'stdout', 'stderr'],\n initialData: [],\n prepend: 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 flex: 0 0 auto;\\n display: flex;\\n align-items: center;\\n gap: 16px;\\n padding-bottom: 16px;\\n\\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'));\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 = 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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.element]),\n children: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.element])\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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 _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","prefix","WELLKNOWN_SERVICE_PATH_PREFIX","window","env","serverDid","serverVersion","value","api","client","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","Overview","services","members","mt","passports","components","Components","configuration","logs","Logs","navigation","BlockletConfigNavigation","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","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","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","fullNavigation","some","options","beforeProcess","builtinNavigation","customNavigationList","settings","navigations","compactedNavigation","patchedNavigation","splitNavigation","levelUpNavigation","flatNavigation","rawNavigation","prev","next","builtinList","normalizePathPrefix","module","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","configurable","writable","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","prototype","propertyIsEnumerable","call","_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","_avatar","_configAccess","nodeInterop","cache","_getRequireWildcardCache","has","get","newObj","hasPropertyDescriptor","hasOwnProperty","desc","set","_interopRequireWildcard","WeakMap","cacheBabelInterop","cacheNodeInterop","ComponentItem","_blocklet$children","accessConfig","expand","setExpand","domain","recommendedDomain","replace","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","TypeError","_objectDestructuringEmpty","Agreement","_serverEula","_wizardDesc","_agreementApp","onClickNext","handleDescEle","clickNext","search","Container","blockletMeta","onContinue","texts","listenName","buttonNext","down","grey","up","_ref3","_auditLog","AuditLogProvider","AuditLogs","_reactMarkdownPreview","_Avatar","_Pagination","_Select","_InputLabel","_FormControl","_relativeTime","getUserLink","log","actor","AuditLog","_log$env$os","_log$env$browser","shape","fullName","linkTarget","ip","os","browser","createdAt","useAuditLogContext","categories","setCategory","fetch","textAlign","marginTop","category","pageCount","page","count","showFirstButton","showLastButton","_ref4","main","BlockletAvatar","_Avatar2","_useAvatar","logoUrl","setFallBackUrl","ev","src","imgEle","onError","alt","logo","responsive","backgroundColor","height","borderRadius","oneOfType","string","_urlJoin","_toUpper","_Tag","_Link","_blocklet$meta","sourceInfo","deployedFrom","bundleDid","underline","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","BlockletEvents","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","_semver","_DialogContent","_DialogTitle","_DialogActions","_Update","_Add","_Badge","_SettingsOutlined","_InfoOutlined","_Grid","_ArrowForward","_InfoRow","_deletingBlocklets","_didAddress","_tag","_blockletSource","_runtimeInfo","_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","noRunningMessage","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","onConfirmUpdate","upgradeBlocklet","bind","upgradeComponents","removeComponent","mr","site","rules","container","Line","borderBottom","borderColor","_ahooks","_lodash","_react2","_material","_simpleSelect","_locales","defaultLocale","LocaleTabs","locales","onRemoveLocale","inputRef","addLocaleButtonEl","setAddLocaleButtonEl","state","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","_default","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","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","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$","onAdd","black","ComponentSettingInService","ComponentSettingInDaemon","_formTextInput","ComponentSetting","onSubmitTitle","updateComponentTitle","onSubmitMountPoint","updateComponentMountPoint","initialValue","onSubmit","withPermission","_reactSortableTree","_reactSortableTreeThemeMaterialUi","_isEqual","checkCanDrop","prevPath","nextPath","prevLen","nextLen","TreeTitle","treeNode","titleShow","subtitleShow","renderTitle","SortableTree","treeData","setTreeData","renderActions","expandedData","expanded","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","showTree","setShowTree","pageState","saveLoading","resetLoading","showResetConfirm","mockRole","navigationTypeMap","bottom","social","dashboard","sessionManager","refNavigationDialog","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","BlockletEnvironment","cpuCores","setCpuCores","getWhoCanAccess","publicToStore","domainAliases","clusterMode","customType","customDelete","deletable","customUrl","customLogo","customLogoSquare","configurableEnvs","BLOCKLET_APP_NAME","BLOCKLET_APP_DESCRIPTION","BLOCKLET_APP_URL","BLOCKLET_APP_LOGO","BLOCKLET_APP_LOGO_SQUARE","exist","schemaList","onPublicToStoreChange","configPublicToStore","onSubmitConfig","onDeletableChange","BLOCKLET_DELETABLE","onWalletTypeChange","BLOCKLET_WALLET_TYPE","onUpdateCors","oldValue","corsAllowedOrigins","newValue","split","updateRoutingSite","defaultChecked","my","isProtected","placement","pointerEvents","paddingBottom","BLOCKLET_APP_SK","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","LogTerminalGroup","logId","initialData","BlockletMode","BlockletOverview","_diskInfo","_types","DomainLink","accessibility","LinkDiv","accessible","DomainType","span","loadingRuntimeInfo","infoRows","installedAt","startedAt","stoppedAt","owner","engineRows","BlockletPreferences","_reactIframe","_TuneRounded","_Key","addComponentTabs","setCurrent","expandPref","setExpandPref","routing","adminPath","URLSearchParams","encodeURIComponent","toString","frameBorder","styles","border","orientation","borderRight","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","interval","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","setting","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","domainStatus","shouldCheckDomainStatus","domainIcon","httpsIcon","isHttps","matchedCert","checkIsWildcardDomain","dns","resolved","certificate","RuleActions","_deleteRule","_updateRule","getAccessUrl","o","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","_prettyMsI18n","runtimeInfo","memoryUsage","cpuUsage","Number","startAt","formatLocale","pid","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","_CircularProgress","_Close","_Done","_formWrapper","editing","setEditing","setDefaultValue","onKeyDown","useTheme","APP_PREFIX","apiPrefix","rawList","injectNavigationData","treeNavigation","rawData","treeList","copyData","hackBuiltinLink","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","arrayOf","_useInterval","currentTime","setCurrentTime","formatTime","LogTerminal","_Terminal","_clock","types","logTypeLabels","stdout","stderr","currentType","setCurrentType","logFiles","setLogFiles","terminalRefs","terminal","write","LogTerminalGroupRoot","logFile","visibility","LogTerminalRoot","boxSizing","background","foreground","PassportTag","Tag","Permission","Component","permissionName","_session","can","userPermissions","element","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","Add","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","_Datatable","_RelativeTime","_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","rowsPerPage","setSearch","sideList","num","z","_z$issuer","issuer","parseAvatar","getUserCounts","handleUserChange","USER_UPDATED","USER_ADDED","isInvitationEnabled","customBodyRenderLite","rawIndex","customBodyRender","copyable","align","verticalKeyAlign","initTab","customButtons","flexShrink","tableOptions","download","print","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","_useAsync","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":""}