@abtnode/blocklet-services 1.8.65 → 1.8.66-beta-7f4224af
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/index.js +5 -1
- package/api/libs/connect/v1.js +46 -6
- package/api/routes/env.js +1 -0
- package/api/services/notification/index.js +17 -14
- package/api/services/relay/index.js +72 -0
- package/api/{services/notification/channel/did-channel.js → socket/channel/did.js} +2 -2
- package/api/{services/notification/channel/get-hooks-by-channel.js → socket/channel/hooks.js} +6 -2
- package/api/socket/channel/relay.js +28 -0
- package/api/{services/notification → socket}/util.js +6 -4
- package/build/asset-manifest.json +13 -13
- package/build/index.html +1 -1
- package/build/static/js/255.4b68f586.chunk.js +2 -0
- package/build/static/js/255.4b68f586.chunk.js.map +1 -0
- package/build/static/js/{371.ab486e50.chunk.js → 371.60842581.chunk.js} +2 -2
- package/build/static/js/371.60842581.chunk.js.map +1 -0
- package/build/static/js/409.118642d5.chunk.js +2 -0
- package/build/static/js/409.118642d5.chunk.js.map +1 -0
- package/build/static/js/560.67762e99.chunk.js +2 -0
- package/build/static/js/560.67762e99.chunk.js.map +1 -0
- package/build/static/js/906.4f68fe8e.chunk.js +2 -0
- package/build/static/js/906.4f68fe8e.chunk.js.map +1 -0
- package/build/static/js/main.836a9fd8.js +3 -0
- package/build/static/js/{main.b8bd2181.js.map → main.836a9fd8.js.map} +1 -1
- package/package.json +31 -31
- package/build/static/js/255.db03c1c4.chunk.js +0 -2
- package/build/static/js/255.db03c1c4.chunk.js.map +0 -1
- package/build/static/js/371.ab486e50.chunk.js.map +0 -1
- package/build/static/js/409.e1991d07.chunk.js +0 -2
- package/build/static/js/409.e1991d07.chunk.js.map +0 -1
- package/build/static/js/560.3efa5410.chunk.js +0 -2
- package/build/static/js/560.3efa5410.chunk.js.map +0 -1
- package/build/static/js/906.e4362664.chunk.js +0 -2
- package/build/static/js/906.e4362664.chunk.js.map +0 -1
- package/build/static/js/main.b8bd2181.js +0 -3
- /package/api/{services/notification/channel/app-channel.js → socket/channel/app.js} +0 -0
- /package/build/static/js/{main.b8bd2181.js.LICENSE.txt → main.836a9fd8.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"static/js/409.118642d5.chunk.js","mappings":"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","sources":["contexts/node.js","contexts/team.js","components/blocklet/component.js","components/layout/admin.js","pages/dashboard.js","../../../blocklet/meta/lib/parse-navigation-from-blocklet.js","../../util/lib/format-name.js","../../util/lib/is-path-prefix-equal.js","../../ux/lib/actions.js","../../ux/lib/blocklet/access/config-access.js","../../ux/lib/blocklet/access/index.js","../../ux/lib/blocklet/actions.js","../../ux/lib/blocklet/add-cert.js","../../ux/lib/blocklet/agreement-app.js","../../ux/lib/blocklet/agreement.js","../../ux/lib/blocklet/app-avatar.js","../../ux/lib/blocklet/audit-logs.js","../../ux/lib/blocklet/blocklet-source.js","../../ux/lib/blocklet/bundle-avatar.js","../../ux/lib/blocklet/component/add.js","../../ux/lib/blocklet/component/configuration.js","../../ux/lib/blocklet/component/delete.js","../../ux/lib/blocklet/component/environment.js","../../ux/lib/blocklet/component/expiration.js","../../ux/lib/blocklet/component/index.js","../../ux/lib/blocklet/component/line.js","../../ux/lib/blocklet/component/navigation/locale-tabs.js","../../ux/lib/blocklet/component/navigation/navigation-actions.js","../../ux/lib/blocklet/component/navigation/navigation-dialog.js","../../ux/lib/blocklet/component/navigation/navigation-preview.js","../../ux/lib/blocklet/component/navigation/simple-select.js","../../ux/lib/blocklet/component/select-store.js","../../ux/lib/blocklet/component/setting.js","../../ux/lib/blocklet/component/sortable-tree.js","../../ux/lib/blocklet/component/store-blocklet-list.js","../../ux/lib/blocklet/config-navigation.js","../../ux/lib/blocklet/configuration.js","../../ux/lib/blocklet/disk-info.js","../../ux/lib/blocklet/icons.js","../../ux/lib/blocklet/install-from-url.js","../../ux/lib/blocklet/log.js","../../ux/lib/blocklet/mode.js","../../ux/lib/blocklet/monitor.js","../../ux/lib/blocklet/overview.js","../../ux/lib/blocklet/preferences/app-sk.js","../../ux/lib/blocklet/preferences/index.js","../../ux/lib/blocklet/preferences/wallet-type.js","../../ux/lib/blocklet/purchase/common.js","../../ux/lib/blocklet/purchase/component-purchase.js","../../ux/lib/blocklet/purchase/index.js","../../ux/lib/blocklet/router/action/add-domain-alias.js","../../ux/lib/blocklet/router/action/add-rule.js","../../ux/lib/blocklet/router/action/config-routing-rule.js","../../ux/lib/blocklet/router/action/delete-domain-alias.js","../../ux/lib/blocklet/router/action/delete-rule.js","../../ux/lib/blocklet/router/action/update-rule.js","../../ux/lib/blocklet/router/domain-actions.js","../../ux/lib/blocklet/router/domain-status.js","../../ux/lib/blocklet/router/rule-actions.js","../../ux/lib/blocklet/router/rule-list.js","../../ux/lib/blocklet/router/util.js","../../ux/lib/blocklet/runtime-info.js","../../ux/lib/blocklet/status.js","../../ux/lib/blocklet/storage.js","../../ux/lib/blocklet/types.js","../../ux/lib/blocklet/version.js","../../ux/lib/certificate.js","../../ux/lib/click-to-copy.js","../../ux/lib/confirm.js","../../ux/lib/contexts/audit-log.js","../../ux/lib/contexts/deleting-blocklets.js","../../ux/lib/contexts/node.js","../../ux/lib/contexts/session.js","../../ux/lib/contexts/team.js","../../ux/lib/delete-confirm.js","../../ux/lib/did-address.js","../../ux/lib/dot.js","../../ux/lib/form/form-text-input.js","../../ux/lib/hooks/mobile-width.js","../../ux/lib/hooks/use-app-logo.js","../../ux/lib/hooks/use-bundle-logo.js","../../ux/lib/hooks/use-navigation.js","../../ux/lib/layout/feedback.js","../../ux/lib/logs/clock.js","../../ux/lib/logs/download.js","../../ux/lib/logs/log-terminal.js","../../ux/lib/monitor/card.js","../../ux/lib/monitor/cpu.js","../../ux/lib/monitor/memory.js","../../ux/lib/passport-tag.js","../../ux/lib/permission.js","../../ux/lib/relative-time.js","../../ux/lib/store/add.js","../../ux/lib/store/delete.js","../../ux/lib/store/item.js","../../ux/lib/table-icons.js","../../ux/lib/table.js","../../ux/lib/tag.js","../../ux/lib/team/members/actions.js","../../ux/lib/team/members/index.js","../../ux/lib/team/members/invitations.js","../../ux/lib/team/members/invite-member.js","../../ux/lib/team/members/issue-passport.js","../../ux/lib/team/members/member.js","../../ux/lib/team/members/passport-issuances.js","../../ux/lib/team/members/passports.js","../../ux/lib/team/members/toggle-user-approval.js","../../ux/lib/team/members/transfer-node.js","../../ux/lib/team/members/util.js","../../ux/lib/team/passports/color.js","../../ux/lib/team/passports/detail.js","../../ux/lib/team/passports/index.js","../../ux/lib/team/passports/mutate-role.js","../../ux/lib/team/passports/trusted-issuer.js","../../ux/lib/team/passports/trusted-issuers.js","../../ux/lib/team/search-input.js","../../ux/lib/team/styles/list-header.js","../../ux/lib/util/api.js","../../ux/lib/util/constants.js","../../ux/lib/util/locales.js","../../ux/lib/util/mode.js"],"sourcesContent":["import { useContext } from 'react';\n\nimport { NodeContext } from '@abtnode/ux/lib/contexts/node';\nimport { WELLKNOWN_SERVICE_PATH_PREFIX } from '@abtnode/constant';\n\nimport client from '../libs/client';\nimport getWsClient, { create, useSubscription } from '../libs/ws';\nimport restApi from '../libs/api';\n\nconst { Provider, Consumer } = NodeContext;\n\n// eslint-disable-next-line react/prop-types\nfunction NodeProvider({ children }) {\n const imgPrefix = `${WELLKNOWN_SERVICE_PATH_PREFIX}/static/images`;\n\n const { serverDid, serverVersion, mode } = window.env;\n\n const value = {\n imgPrefix,\n api: client,\n restApi,\n ws: {\n getWsClient,\n create,\n useSubscription,\n },\n type: 'service',\n\n // Compatible with format in server dashboard\n info: {\n // server did\n did: serverDid,\n version: serverVersion,\n mode,\n },\n };\n\n return <Provider value={{ node: value }}>{children}</Provider>;\n}\n\nfunction useNodeContext() {\n const { node } = useContext(NodeContext);\n return node;\n}\n\nexport { NodeContext, NodeProvider, Consumer as NodeConsumer, useNodeContext };\n","import { useState, useContext, useEffect } from 'react';\n\nimport Toast from '@abtnode/ux/lib/toast';\nimport { getDisplayName } from '@blocklet/meta/lib/util';\nimport { BLOCKLET_CONFIGURABLE_KEY } from '@blocklet/constant';\nimport { RBAC_CONFIG, EVENTS } from '@abtnode/constant';\nimport { TeamContext } from '@abtnode/ux/lib/contexts/team';\n\nimport { useBlockletContext } from './blocklet';\nimport client from '../libs/client';\nimport { useSubscription } from '../libs/ws';\n\nconst { Provider, Consumer } = TeamContext;\n\nconst { did: teamDid, appId } = window.env;\n\n// eslint-disable-next-line react/prop-types\nfunction TeamProvider({ children }) {\n const { blocklet } = useBlockletContext();\n\n const [invitations, setInvitations] = useState([]);\n const [roles, setRoles] = useState([]);\n const [permissions, setPermissions] = useState([]);\n\n const teamName = getDisplayName(blocklet);\n\n const passportColor =\n (blocklet?.environments || []).find((x) => x.key === BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_PASSPORT_COLOR)?.value ||\n 'auto';\n\n const trustedPassports = blocklet?.trustedPassports || [];\n const enablePassportIssuance = blocklet?.enablePassportIssuance !== false;\n\n const getTeamData = async () => {\n try {\n const res = await client.doBatchQuery({\n getRoles: { input: { teamDid } },\n getPermissions: { input: { teamDid } },\n getInvitations: { input: { teamDid } },\n });\n\n setRoles(\n (res.getRoles.roles || [])\n // exclude some roles: not passport or only for ci\n .filter((x) => !RBAC_CONFIG.roles.some((y) => y.name === x.name && (!y.passport || y.ci)))\n // backwards compatibility\n .map((x) => {\n x.description = x.description || `Use this passport to connect ${teamName} as ${x.title}`;\n return x;\n })\n );\n setPermissions(res.getPermissions.permissions || []);\n setInvitations(res.getInvitations.invitations || []);\n } catch (err) {\n Toast.error(err.message);\n }\n };\n\n const getUsers = async ({ query, paging } = {}) => {\n const input = { teamDid };\n if (paging) {\n input.paging = paging;\n }\n\n if (query) {\n input.query = query;\n }\n\n input.sort = { lastLoginAt: -1 };\n\n return client.getUsers({ input });\n };\n\n const getUsersCountPerRole = () => client.getUsersCountPerRole({ input: { teamDid } });\n\n const refreshTeam = () => getTeamData();\n\n useEffect(() => {\n if (!blocklet?.meta?.did) {\n return;\n }\n getTeamData();\n }, [blocklet?.meta?.did]); // eslint-disable-line\n\n const onUserEvent = (data) => {\n if (data.teamDid === teamDid) {\n getTeamData(teamDid);\n }\n };\n\n useSubscription(EVENTS.USER_ADDED, onUserEvent, [teamDid]);\n useSubscription(EVENTS.USER_REMOVED, onUserEvent, [teamDid]);\n useSubscription(EVENTS.USER_UPDATED, onUserEvent, [teamDid]);\n\n const value = {\n teamDid,\n teamIssuerDid: appId,\n teamName,\n invitations,\n roles,\n permissions,\n trustedPassports,\n isNodeTeam: false,\n enablePassportIssuance,\n refresh: refreshTeam,\n passportColor,\n endpoint: window.location.origin,\n blocklet,\n api: {\n getUsers,\n getUsersCountPerRole,\n },\n };\n\n return <Provider value={value}>{children}</Provider>;\n}\n\nfunction useTeamContext() {\n return useContext(TeamContext);\n}\n\nexport { TeamContext, TeamProvider, Consumer as TeamConsumer, useTeamContext };\n","import PropTypes from 'prop-types';\nimport joinUrl from 'url-join';\n\nimport Components from '@abtnode/ux/lib/blocklet/component';\n\nexport default function BlockletComponent({ blocklet, ...props }) {\n const getComponentUrl = (mountPoint) => `${joinUrl(window.location.origin, mountPoint)}`;\n\n return <Components blocklet={blocklet} getComponentUrl={getComponentUrl} {...props} />;\n}\n\nBlockletComponent.propTypes = {\n blocklet: PropTypes.object.isRequired,\n};\n\nBlockletComponent.defaultProps = {};\n","/** @jsxImportSource @emotion/react */\nimport PropTypes from 'prop-types';\nimport styled from '@emotion/styled';\nimport { Box } from '@mui/material';\nimport ErrorOutlineIcon from '@mui/icons-material/ErrorOutline';\nimport { ErrorBoundary } from 'react-error-boundary';\nimport '@iconify/iconify';\n\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport Center from '@arcblock/ux/lib/Center';\nimport Button from '@arcblock/ux/lib/Button';\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport { ErrorFallback } from '@arcblock/ux/lib/ErrorBoundary';\nimport { useLocation } from 'react-router-dom';\nimport Dashboard from '@blocklet/ui-react/lib/Dashboard';\nimport { formatError } from '@abtnode/ux/lib/util';\nimport Feedback from '@abtnode/ux/lib/layout/feedback';\n\nimport { useBlockletContext } from '../../contexts/blocklet';\nimport { useNodeContext } from '../../contexts/node';\n\nexport default function Layout({ children }) {\n const { t } = useLocaleContext();\n const {\n loading,\n error,\n actions: { refreshBlocklet },\n env,\n blocklet,\n } = useBlockletContext();\n const { info: nodeInfo } = useNodeContext();\n const location = useLocation();\n\n const { appId, version } = env;\n\n const infos = [\n {\n label: 'App ID',\n value: appId,\n },\n {\n label: 'App Version',\n value: version,\n },\n {\n label: 'App Bundle Name',\n value: blocklet?.meta?.bundleName,\n },\n {\n label: 'Server Id',\n value: nodeInfo.did,\n },\n {\n label: 'Server Version',\n value: nodeInfo.version,\n },\n ];\n\n return (\n <StyledDashboard\n legacy={false}\n fullWidth\n footerProps={{\n addon: <Feedback infos={infos} />,\n }}>\n {!blocklet && loading && (\n <Center relative=\"parent\">\n <Spinner />\n </Center>\n )}\n\n {!blocklet && error && (\n <Center relative=\"parent\">\n <Box display=\"flex\" alignItems=\"center\">\n <ErrorOutlineIcon color=\"error\" sx={{ marginRight: 1 }} />\n {formatError(error)}\n </Box>\n <Button onClick={() => refreshBlocklet()}>\n <span style={{ textDecoration: 'underline' }}>{t('common.retry')}</span>\n </Button>\n </Center>\n )}\n\n {!!blocklet && (\n <div className=\"dashboard-layout-body\">\n <div className=\"dashboard-layout-main\">\n <Box className=\"dashboard-layout-main\">\n <Box flex={1} padding=\"16px\" display=\"flex\" flexDirection=\"column\">\n <ErrorBoundary FallbackComponent={ErrorFallback} resetKeys={[location.pathname]}>\n {children}\n </ErrorBoundary>\n </Box>\n </Box>\n </div>\n </div>\n )}\n </StyledDashboard>\n );\n}\n\nLayout.propTypes = {\n children: PropTypes.any,\n};\n\nLayout.defaultProps = {\n children: null,\n};\n\nconst StyledDashboard = styled(Dashboard)`\n .dashboard-layout-body {\n flex: 1;\n display: flex;\n padding-top: 16px;\n }\n .dashboard-layout-main {\n flex: 1;\n padding: 0;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n }\n`;\n","/* eslint-disable react/jsx-one-expression-per-line */\nimport styled from '@emotion/styled';\nimport { useEffect, isValidElement } from 'react';\nimport { useNavigate, useParams } from 'react-router-dom';\n\nimport Box from '@mui/material/Box';\nimport Badge from '@mui/material/Badge';\n\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport Tabs from '@arcblock/ux/lib/Tabs';\nimport { getDisplayName, getAppMissingConfigs } from '@blocklet/meta/lib/util';\nimport { WELLKNOWN_SERVICE_PATH_PREFIX } from '@abtnode/constant';\nimport { getBlockletServices, isInstalling } from '@abtnode/ux/lib/util';\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport Alert from '@arcblock/ux/lib/Alert';\n\nimport { DeletingBlockletProvider } from '@abtnode/ux/lib/contexts/deleting-blocklets';\nimport Logs from '@abtnode/ux/lib/blocklet/log';\nimport Overview from '@abtnode/ux/lib/blocklet/overview';\nimport Preferences from '@abtnode/ux/lib/blocklet/preferences';\nimport AuditLogs from '@abtnode/ux/lib/blocklet/audit-logs';\nimport BlockletConfigNavigation from '@abtnode/ux/lib/blocklet/config-navigation';\nimport Passports from '@abtnode/ux/lib/team/passports';\nimport Members from '@abtnode/ux/lib/team/members';\nimport BlockletStatus from '@abtnode/ux/lib/blocklet/status';\nimport BlockletActions from '@abtnode/ux/lib/blocklet/actions';\nimport BlockletAppAvatar from '@abtnode/ux/lib/blocklet/app-avatar';\nimport Monitor from '@abtnode/ux/lib/blocklet/monitor';\nimport Toast from '@abtnode/ux/lib/toast';\n\nimport Storage from '@abtnode/ux/lib/blocklet/storage';\n\nimport { isAlphaMode } from '@abtnode/ux/lib/util/mode';\nimport getWsClient from '../libs/ws';\nimport { useBlockletContext } from '../contexts/blocklet';\nimport { NodeProvider } from '../contexts/node';\nimport { TeamProvider } from '../contexts/team';\nimport Components from '../components/blocklet/component';\nimport AdminLayout from '../components/layout/admin';\n\nfunction BlockletService() {}\n\nfunction Dashboard() {\n const navigate = useNavigate();\n const { tab: currentTab = 'overview' } = useParams();\n const {\n blocklet,\n actions: { refreshBlocklet },\n } = useBlockletContext();\n const { t } = useLocaleContext();\n\n const did = blocklet?.meta?.did;\n\n const onTabChange = (newTab) => {\n navigate(`${WELLKNOWN_SERVICE_PATH_PREFIX}/admin/${newTab}`);\n };\n\n const onUpdate = async () => {\n refreshBlocklet();\n };\n\n const missingRequiredConfigs = !blocklet || isInstalling(blocklet.status) ? [] : getAppMissingConfigs(blocklet);\n\n const tabs = [\n { label: t('common.overview'), value: 'overview' },\n // TODO\n // { label: t('router.routerSetting'), value: 'access' },\n {\n label: (\n <Badge color=\"error\" variant=\"dot\" invisible={!missingRequiredConfigs.length}>\n {t('common.components')}\n </Badge>\n ),\n value: 'components',\n },\n ];\n\n if (!isInstalling(blocklet?.status)) {\n tabs.push({ label: t('common.configuration'), value: 'configuration' });\n }\n\n tabs.push({ label: t('common.auditLogs'), value: 'audit-logs' });\n tabs.push({ label: t('common.logs'), value: 'logs' });\n tabs.push({ label: t('common.configNavigation'), value: 'navigation' });\n tabs.push({ label: t('common.monitor'), value: 'monitor' });\n\n if (isAlphaMode) {\n tabs.push({ label: t('common.storage'), value: 'storage' });\n }\n\n const services = getBlockletServices(blocklet);\n if (services.length) {\n // TODO\n // tabs.splice(2, 0, { label: t('blocklet.services'), value: 'services' });\n }\n\n const renderAuditLogs = <AuditLogs scope={did} />;\n\n const renders = {\n overview: <Overview />,\n services: <BlockletService />,\n members: (\n <Box mt={-5}>\n <Members type=\"blocklet\" />\n </Box>\n ),\n passports: (\n <Box mt={-4.5}>\n <Passports />\n </Box>\n ),\n components: Components,\n configuration: <Preferences blocklet={blocklet} onUpdate={onUpdate} />,\n 'audit-logs': renderAuditLogs,\n logs: Logs,\n navigation: BlockletConfigNavigation,\n monitor: <Monitor />,\n ...{\n storage: isAlphaMode ? <Storage /> : undefined,\n },\n };\n const TabComponent = renders[currentTab] || renders.overview;\n\n const showHeader = !['members', 'passports'].includes(currentTab);\n\n const content = !blocklet ? (\n <Spinner />\n ) : (\n <DeletingBlockletProvider type=\"components\">\n {showHeader && <Tabs tabs={tabs} current={currentTab} onChange={onTabChange} scrollButtons=\"auto\" />}\n <div className=\"page-content\">\n {isValidElement(TabComponent) ? TabComponent : <TabComponent blocklet={blocklet} />}\n </div>\n </DeletingBlockletProvider>\n );\n\n return (\n <NodeProvider>\n <TeamProvider>\n <AdminLayout>\n <Main>\n {showHeader && (\n <>\n <Box component=\"div\" className=\"page-header\">\n <Box component=\"h2\" variant=\"h4\" className=\"page-title\" color=\"textPrimary\">\n {blocklet ? <BlockletAppAvatar blocklet={blocklet} style={{ marginRight: 16 }} /> : null}\n {blocklet ? (\n <Box display=\"flex\" alignItems=\"center\">\n <Box>{getDisplayName(blocklet)}</Box>\n {!!blocklet && (\n <BlockletStatus\n size=\"12px\"\n style={{ marginLeft: 8 }}\n status={blocklet.status}\n source={blocklet.source}\n />\n )}\n </Box>\n ) : (\n `${t('common.blocklet')} ${t('common.detail')}`\n )}\n </Box>\n {blocklet ? (\n <BlockletActions\n className=\"page-actions\"\n hasPermission\n blocklet={blocklet}\n onStart={() => {}}\n onComplete={({ error } = {}) => {\n if (error) {\n Toast.error(error.message);\n }\n }}\n variant=\"group\"\n />\n ) : null}\n </Box>\n\n {!!missingRequiredConfigs.length && (\n <Alert type=\"error\" style={{ margin: '12px 0' }}>\n {t('blocklet.config.missingRequired')}\n </Alert>\n )}\n </>\n )}\n {content}\n </Main>\n </AdminLayout>\n </TeamProvider>\n </NodeProvider>\n );\n}\n\nexport default function WrapDashboard() {\n const { blocklet } = useBlockletContext();\n\n const did = blocklet?.meta?.did;\n\n useEffect(() => {\n const wsClient = getWsClient();\n\n if (did) {\n wsClient.connect();\n }\n\n return () => {\n if (did && wsClient.isConnected()) {\n wsClient.disconnect();\n }\n };\n }, [did]);\n\n return <Dashboard />;\n}\n\nconst Main = styled.main`\n .page-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .page-title {\n display: flex;\n align-items: center;\n\n .page-link {\n font-size: 15px;\n margin-top: 8px;\n margin-left: 8px;\n }\n }\n\n .page-content {\n margin-top: 36px;\n }\n\n @media (max-width: ${(props) => props.theme.breakpoints.values.md}px) {\n .page-header {\n flex-direction: column;\n align-items: flex-start;\n .page-actions,\n .MuiButtonGroup-root {\n width: 100%;\n }\n .MuiButtonGroup-root {\n .MuiButtonBase-root {\n flex: 1;\n }\n .blocklet-action-text {\n display: none;\n }\n }\n }\n\n .page-title {\n margin-bottom: 15px;\n }\n }\n`;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.splitNavigationBySection = exports.flatternNavigation = exports.checkLink = exports.joinLink = exports.cleanOrphanNavigation = exports.filterNavigation = exports.nestNavigationList = exports.isMatchSection = exports.deepWalk = exports.parseNavigation = void 0;\nconst unionWith_1 = __importDefault(require(\"lodash/unionWith\"));\nconst isEqual_1 = __importDefault(require(\"lodash/isEqual\"));\nconst pick_1 = __importDefault(require(\"lodash/pick\"));\nconst isNil_1 = __importDefault(require(\"lodash/isNil\"));\nconst omit_1 = __importDefault(require(\"lodash/omit\"));\nconst cloneDeep_1 = __importDefault(require(\"lodash/cloneDeep\"));\nconst url_join_1 = __importDefault(require(\"url-join\"));\nconst path_1 = __importDefault(require(\"path\"));\nconst is_absolute_url_1 = __importDefault(require(\"is-absolute-url\"));\nconst lodash_1 = require(\"lodash\");\nconst DEFAULT_SECTION = 'header';\nconst BASE_PATH = '/';\nconst DEFAULT_LINK = '/';\nconst ID_SEPARATE = '/';\n/**\n * 判断一个 url 是否为合法的 url 拼接路径\n * /abc, /abc/bcd valid\n * /abc, /abc//bcd invalid\n * @param value 需要检查的 url path\n * @returns boolean\n */\nconst checkUrlPath = (value) => {\n return /^\\/(?:[^/]+\\/)*$/.test(value) || /^\\/(?:[^/]+\\/)*[^/]+$/.test(value);\n};\nconst checkLink = (value) => {\n if ((0, is_absolute_url_1.default)(value) || checkUrlPath(value)) {\n return true;\n }\n return false;\n};\nexports.checkLink = checkLink;\nfunction deepWalk(tree, cb = () => { }, { key = 'children', order = 'first' } = {}) {\n function walk(current, { index = 0, parent = null, level = 0 } = {}) {\n if (Array.isArray(current)) {\n current.forEach((item, i) => {\n walk(item, { index: i, parent, level: level + 1 });\n });\n }\n else if (current) {\n if (order === 'first') {\n cb(current, parent, { index, level });\n }\n walk(current[key], { parent: current, level });\n if (order === 'last') {\n cb(current, parent, { index, level });\n }\n }\n }\n walk(tree);\n}\nexports.deepWalk = deepWalk;\n/**\n * 判断一个传入值是否属于一个 section\n * @param {string | array} sections 需要判断的对象\n * @param {string} section 目标 section\n */\nfunction isMatchSection(sections, section) {\n if (section === DEFAULT_SECTION && (0, isNil_1.default)(sections)) {\n return true;\n }\n if (Array.isArray(sections)) {\n return sections.includes(section);\n }\n return sections === section;\n}\nexports.isMatchSection = isMatchSection;\nfunction tryParseItem(item) {\n try {\n return JSON.parse(item);\n }\n catch (_a) {\n return item;\n }\n}\nfunction normalizeNavigationList(navigationList) {\n return navigationList.map((item) => {\n const tempData = Object.assign({}, item);\n if (tempData.role) {\n tempData.role = tryParseItem(tempData.role);\n }\n if (tempData.section) {\n tempData.section = tryParseItem(tempData.section);\n }\n if (tempData.title) {\n tempData.title = tryParseItem(tempData.title);\n }\n if (tempData.link) {\n tempData.link = tryParseItem(tempData.link);\n }\n return tempData;\n });\n}\nfunction optionalJoin(prefix = '/', url = '') {\n if ((0, is_absolute_url_1.default)(url || '')) {\n return url;\n }\n // remove last slash\n const resultUrl = path_1.default.join(prefix, url || DEFAULT_LINK);\n if (resultUrl.length > 1 && resultUrl.endsWith('/')) {\n return resultUrl.slice(0, resultUrl.length - 1);\n }\n return resultUrl;\n}\nfunction smartJoinLink(_parentLink, _childLink, { strict = true, } = {}) {\n let parentLink = _parentLink;\n let childLink = _childLink;\n if (!strict) {\n parentLink = parentLink || '/';\n childLink = childLink || '/';\n }\n if ((0, lodash_1.isObject)(parentLink) && (0, lodash_1.isString)(childLink) && checkLink(childLink)) {\n return Object.keys(parentLink).reduce((res, key) => {\n res[key] = optionalJoin(parentLink[key], childLink);\n return res;\n }, {});\n }\n if ((0, lodash_1.isString)(parentLink) && checkLink(parentLink) && (0, lodash_1.isObject)(childLink)) {\n return Object.keys(childLink).reduce((res, key) => {\n res[key] = optionalJoin(parentLink, childLink[key]);\n return res;\n }, {});\n }\n if ((0, lodash_1.isString)(parentLink) && (0, lodash_1.isString)(childLink)) {\n if (checkLink(parentLink) || checkLink(childLink)) {\n return optionalJoin(parentLink, childLink);\n }\n return childLink;\n }\n if ((0, lodash_1.isObject)(parentLink) && (0, lodash_1.isObject)(childLink)) {\n const keys = [...new Set([...Object.keys(parentLink), ...Object.keys(childLink)])];\n return keys.reduce((res, key) => {\n res[key] = optionalJoin(parentLink[key], childLink[key]);\n return res;\n }, {});\n }\n return childLink;\n}\nfunction joinLink(navigation, components) {\n const copyNavigation = (0, cloneDeep_1.default)(navigation);\n deepWalk(copyNavigation, (item, parent) => {\n const component = item.component || item.child;\n if (component) {\n const findComponent = components.find((v) => v.name === component);\n if (findComponent) {\n item.link = smartJoinLink(findComponent.link, item.link, { strict: false });\n }\n }\n else if (parent) {\n item.link = smartJoinLink(parent.link, item.link);\n }\n }, { key: 'items' });\n return copyNavigation;\n}\nexports.joinLink = joinLink;\n/**\n * 将树状结构的导航列表进行扁平化处理\n * @param {array} navigationList 树状结构的导航列表\n * @param {object} params 配置参数\n * @param {number} params.depth 扁平化的层级,默认为 1(全拍平)\n * @param {function} params.transform 当发生拍平处理时\n * @returns 扁平化后的导航列表\n */\nfunction flatternNavigation(list = [], { depth = 1, transform = (v) => v } = {}) {\n const copyList = (0, cloneDeep_1.default)(list);\n const finalList = [];\n deepWalk(copyList, (item, parent, { level }) => {\n if (level >= depth) {\n const { items = [] } = item;\n if (items && Array.isArray(items) && items.length > 0) {\n delete item.items;\n const transformedItems = items.map((v) => transform(v, item));\n if (parent) {\n parent.items.push(...transformedItems);\n }\n else {\n const tmpItem = transform((0, omit_1.default)(item, ['items']), parent);\n finalList.push(tmpItem, ...transformedItems);\n }\n }\n else if (level === 1) {\n const tmpItem = transform((0, omit_1.default)(item, ['items']), parent);\n finalList.push(tmpItem);\n }\n }\n else if (level === 1) {\n finalList.push(item);\n }\n }, { key: 'items', order: 'last' });\n return finalList;\n}\nexports.flatternNavigation = flatternNavigation;\n/**\n * 将 blocklet 中的数据进行处理,获得当前应用的导航数据及组件数据\n * @param {object} blocklet blocklet 应用实例对象\n * @returns 导航数据及组件数据\n */\nfunction parseBlockletNavigationList(blocklet = {}) {\n const components = [];\n /**\n *\n * @param {object} current 当前 blocklet 的数据\n * @param {object} parent 当前 blocklet 的父组件数据\n * @returns\n */\n function genNavigationListByBlocklet(current, parent = {}) {\n var _a, _b, _c, _d, _e, _f, _g;\n const targetList = [];\n const { children = [], meta = {} } = current;\n const navigation = (0, cloneDeep_1.default)((meta === null || meta === void 0 ? void 0 : meta.navigation) || []);\n if (((_b = (_a = current.meta) === null || _a === void 0 ? void 0 : _a.capabilities) === null || _b === void 0 ? void 0 : _b.navigation) !== false) {\n targetList.push(...navigation);\n }\n const parentName = parent.name || '';\n const parentBase = parent.mountPoint || BASE_PATH;\n const currentName = current === blocklet ? '' : meta.name || '';\n const currentBase = current === blocklet ? '' : current.mountPoint || BASE_PATH;\n for (const child of children) {\n const childName = child.meta.name;\n const childBase = child.mountPoint;\n const mergeName = [parentName, currentName, childName].filter(Boolean).join('.');\n const childNavigation = child.meta.navigation || [];\n const mergeBase = (0, url_join_1.default)(parentBase, currentBase, childBase);\n if (((_d = (_c = child.meta) === null || _c === void 0 ? void 0 : _c.capabilities) === null || _d === void 0 ? void 0 : _d.navigation) !== false) {\n components.push({\n did: child.meta.did,\n name: mergeName,\n link: mergeBase,\n title: child.meta.title || '',\n navigation: childNavigation.map((item) => (Object.assign({ \n // 给每个 navigation 赋予一个 setion,用于在 autocomplete 提供依据 section 筛选的基础\n section: DEFAULT_SECTION }, item))),\n });\n }\n // 在现有的 navigation 中判断是否存在 children\n const matchNavigation = navigation.find((item) => {\n if (item.component) {\n return item.component === childName;\n }\n return false;\n });\n // 如果存在,并且当前 navigation 未配置任何 link,则将 child mountpoint 给它\n if (matchNavigation) {\n if (!matchNavigation.link) {\n if (child.meta.navigation && child.meta.navigation.length > 0) {\n const items = genNavigationListByBlocklet(child, { mountPoint: currentBase, name: currentName });\n if (items.length > 0) {\n matchNavigation.items = (_e = matchNavigation.items) !== null && _e !== void 0 ? _e : [];\n matchNavigation.items.push(...items);\n }\n }\n else {\n matchNavigation.link = DEFAULT_LINK;\n }\n }\n }\n else if (((_g = (_f = child.meta) === null || _f === void 0 ? void 0 : _f.capabilities) === null || _g === void 0 ? void 0 : _g.navigation) !== false) {\n const childItems = genNavigationListByBlocklet(child, { mountPoint: currentBase, name: currentName });\n // 否则动态注入一个 navigation\n const tmpData = {\n title: child.meta.title,\n component: childName,\n // 动态注入的 navigation 需要一个默认的 id,blocklet.meta.id 是唯一的,可以用上这个值\n id: child.meta.did,\n };\n if (childItems.length > 0) {\n tmpData.items = childItems;\n tmpData.link = undefined;\n }\n else {\n tmpData.link = DEFAULT_LINK;\n }\n targetList.push(tmpData);\n }\n }\n return targetList;\n }\n const navigationList = genNavigationListByBlocklet(blocklet);\n return {\n navigationList,\n components,\n };\n}\nfunction patchBuiltinNavigation(navigation) {\n const copyNavigation = (0, cloneDeep_1.default)(navigation).filter((item) => item.id);\n deepWalk(copyNavigation, (item, parent) => {\n var _a;\n if (item.items && item.items.length) {\n for (let i = item.items.length - 1; i >= 0; i--) {\n if (!item.items[i].id) {\n item.items.splice(i, 1);\n }\n }\n // 如果 items 全都不符合规范,保留 item 本身,为其增加一个默认的链接\n if (item.items.length === 0) {\n if (item.component) {\n item.link = item.link || DEFAULT_LINK;\n }\n }\n }\n if (parent) {\n item.parent = parent.id;\n // 由于默认设置的 id(在 blocklet.yml 中手动赋予的存在重复的可能性比较大,所以通过 `/` 拼接父节点的 id,可以大大降低重复的概率)\n item.id = [parent.id, item.id].join(ID_SEPARATE);\n }\n item.from = item.from || 'yaml';\n item.visible = (_a = item.visible) !== null && _a !== void 0 ? _a : true;\n }, { key: 'items' });\n return copyNavigation;\n}\n/**\n * 将多层结构的导航列表压缩至指定最大深度的树状结构\n * @param {array} navigation 树状结构的导航列表数据\n * @param {number} depth 压缩的层级\n * @returns 压缩后的树状结构导航列表数据\n */\nfunction compactNavigation(navigation, depth = 2) {\n const copyNavigation = (0, cloneDeep_1.default)(navigation);\n const resData = flatternNavigation(copyNavigation, {\n depth,\n transform: (item, parent) => {\n var _a;\n if (parent) {\n if (!item._parent) {\n item._parent = parent.id;\n if (!parent.component) {\n item.link = smartJoinLink(parent.link, item.link);\n }\n }\n item.section = item.section || parent.section || [DEFAULT_SECTION];\n item.visible = (_a = item.visible) !== null && _a !== void 0 ? _a : parent.visible;\n }\n item.component = [parent.component, item.component].filter(Boolean).join('.');\n return item;\n },\n });\n deepWalk(resData, (item) => {\n if (item.items && item.items.length > 0) {\n item.items.reduceRight((all, cur) => {\n if (cur._parent) {\n const index = item.items.findIndex((v) => v.id === cur._parent);\n if (index >= 0) {\n item.items.splice(index, 1);\n }\n delete cur._parent;\n }\n return null;\n }, null);\n }\n }, { key: 'items' });\n return resData;\n}\n/**\n * 返回指定的导航中的子菜单(属于指定 section)\n * @param {object} navigationItem 指定的某一个导航数据\n * @param {string} section 指定的 section 区域\n * @returns\n */\nfunction getNavigationListBySection(navigationItem, section) {\n if (section && Array.isArray(navigationItem.items)) {\n return navigationItem.items\n .filter((item) => {\n // 如果当前子菜单没有 section,它的 section 应该跟随父菜单的 section\n if ((0, isNil_1.default)(item.section)) {\n return isMatchSection(navigationItem.section, section);\n }\n if (isMatchSection(item.section, section)) {\n return true;\n }\n return false;\n })\n .map((item) => (Object.assign(Object.assign({}, item), { section })));\n }\n return [];\n}\n/**\n * 根据导航中每一个子菜单所属的 section,将原由的导航数据分离为多个导航数据(此时每一个导航 item 只会包含一个 section)\n * @param {array} navigation 导航列表数据(树状结构,目前只适用于两层的树状结构)\n * @returns\n */\nfunction splitNavigationBySection(navigation) {\n const copyNavigation = (0, cloneDeep_1.default)(navigation);\n const allNavigationList = [];\n for (const navigationItem of copyNavigation) {\n const baseNavigation = (0, cloneDeep_1.default)((0, omit_1.default)(navigationItem, ['items']));\n const itemNavigationList = [];\n // eslint-disable-next-line no-inner-declarations\n function patchNavigationItem(item, section) {\n const sectionNavigationList = getNavigationListBySection(item, section);\n itemNavigationList.push(Object.assign(Object.assign({}, baseNavigation), { section, items: sectionNavigationList }));\n }\n if (Array.isArray(navigationItem.section)) {\n for (const section of navigationItem.section) {\n patchNavigationItem(navigationItem, section);\n }\n }\n else if (navigationItem.section) {\n const { section } = navigationItem;\n patchNavigationItem(navigationItem, section);\n }\n else if (navigationItem.items && navigationItem.items.length > 0) {\n const allSectionList = navigationItem.items.reduce((list, currentValue) => {\n const { section = [DEFAULT_SECTION] } = currentValue || {};\n list.push(...section);\n return list;\n }, []);\n const sectionList = [...new Set(allSectionList)];\n for (const section of sectionList) {\n patchNavigationItem(navigationItem, section);\n }\n }\n else {\n itemNavigationList.push(Object.assign(Object.assign({}, navigationItem), { section: DEFAULT_SECTION }));\n }\n allNavigationList.push(...itemNavigationList);\n }\n return allNavigationList;\n}\nexports.splitNavigationBySection = splitNavigationBySection;\n/**\n * 将导航数据进行层叠处理\n * @param {array} list 扁平化的导航数据\n * @returns 处理后的导航\n */\nfunction nestNavigationList(list = []) {\n const cloneList = (0, cloneDeep_1.default)(list);\n cloneList.reduceRight((res, item, index) => {\n if (item.parent) {\n const parent = cloneList.find((i) => {\n if (item.section && i.section) {\n return i.section === item.section && i.id === item.parent;\n }\n return i.id === item.parent;\n });\n if (parent) {\n if (!parent.items)\n parent.items = [];\n // 由于 reduceRight 是从后向前遍历,所以后遍历到的其实顺序在前面\n parent.items = [item, ...parent.items];\n }\n cloneList.splice(index, 1);\n }\n return null;\n }, null);\n return cloneList;\n}\nexports.nestNavigationList = nestNavigationList;\nfunction filterNavigation(navigationList, components = []) {\n const nestedNavigation = nestNavigationList(navigationList);\n deepWalk(nestedNavigation, (item) => {\n if (item === null || item === void 0 ? void 0 : item.component) {\n if (!components.some((x) => x.name === item.component)) {\n item.visible = false;\n }\n }\n if (item.items && item.items.length) {\n for (let i = item.items.length - 1; i >= 0; i--) {\n if (item.items[i].visible === false) {\n item.items.splice(i, 1);\n }\n }\n }\n }, { key: 'items' });\n const filteredNavigation = nestedNavigation.filter((item) => {\n var _a;\n if (item.visible === false)\n return false;\n // 如果某一菜单的 子菜单 均为隐藏状态,则一级菜单本身也不显示出来\n if (item.items &&\n Array.isArray(item.items) &&\n item.items.length > 0 &&\n ((_a = item.items) === null || _a === void 0 ? void 0 : _a.every((v) => v.visible === false)))\n return false;\n return true;\n });\n return filteredNavigation;\n}\nexports.filterNavigation = filterNavigation;\nfunction cleanOrphanNavigation(list) {\n // 将仅有一个 child 的菜单提升到上一级\n return list.map((item) => {\n if (item.items && Array.isArray(item.items) && item.items.length === 1) {\n if (['header', 'footer', '', undefined, null].includes(item.section)) {\n return item.items[0];\n }\n }\n return item;\n });\n}\nexports.cleanOrphanNavigation = cleanOrphanNavigation;\nfunction parseNavigation(blocklet = {}, options = {}) {\n var _a;\n const { beforeProcess = (v) => v } = options;\n const { navigationList: builtinNavigation, components } = parseBlockletNavigationList(blocklet);\n const customNavigationList = ((_a = blocklet === null || blocklet === void 0 ? void 0 : blocklet.settings) === null || _a === void 0 ? void 0 : _a.navigations) || [];\n const compactedNavigation = compactNavigation(beforeProcess(builtinNavigation));\n const patchedNavigation = patchBuiltinNavigation(compactedNavigation);\n const splitNavigation = splitNavigationBySection(patchedNavigation);\n // 将 footer-social, footer-bottom, sessionManager 的二级菜单提升为一级菜单\n const levelUpNavigation = splitNavigation.reduce((all, cur) => {\n if (['bottom', 'social', 'sessionManager'].includes(cur.section)) {\n if (cur.items && cur.items.length > 0) {\n all.push(...cur.items.map((x) => {\n const { section } = cur;\n const link = smartJoinLink(cur.link, x.link);\n const component = [cur.component, x.component].filter(Boolean).join('.');\n return Object.assign(Object.assign({}, x), { section, link, component, parent: '' });\n }));\n return all;\n }\n }\n all.push(cur);\n return all;\n }, []);\n const flatNavigation = flatternNavigation(levelUpNavigation, {\n transform(item, parent) {\n let { component } = item;\n if (parent === null || parent === void 0 ? void 0 : parent.component) {\n component = [parent.component, item.component].filter(Boolean).join('.');\n }\n return Object.assign(Object.assign({}, item), { component });\n },\n });\n const rawNavigation = (0, unionWith_1.default)(normalizeNavigationList(customNavigationList), flatNavigation, (prev, next) => {\n const keys = ['id', 'section'];\n return (0, isEqual_1.default)((0, pick_1.default)(prev, keys), (0, pick_1.default)(next, keys));\n });\n return { navigationList: rawNavigation, components, builtinList: flatNavigation };\n}\nexports.parseNavigation = parseNavigation;\n","const slugify = require('slugify');\n\nconst formatName = (name) => slugify(name.replace(/^[@./-]/, '').replace(/[@./_]/g, '-'));\n\nmodule.exports = formatName;\n","const normalizePathPrefix = require('./normalize-path-prefix');\n\nmodule.exports = (a, b) => normalizePathPrefix(a) === normalizePathPrefix(b);\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Actions;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Menu = _interopRequireDefault(require(\"@mui/material/Menu\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _MoreHoriz = _interopRequireDefault(require(\"@mui/icons-material/MoreHoriz\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"actions\"],\n _excluded2 = [\"icon\", \"text\", \"onClick\", \"disabled\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction Actions(_ref) {\n let {\n actions\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n const [anchorEl, setAnchorEl] = (0, _react.useState)(null);\n const open = Boolean(anchorEl);\n const onOpen = e => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused) {}\n setAnchorEl(e.currentTarget);\n };\n const onClose = e => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused2) {}\n setAnchorEl(null);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({}, props), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"aria-label\": \"more\",\n \"aria-controls\": \"actions-menu\",\n \"aria-haspopup\": \"true\",\n \"data-cy\": \"actions-menu-icon\",\n onClick: onOpen,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_MoreHoriz.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Menu.default, {\n id: \"actions-menu\",\n \"data-cy\": \"actions-menu\",\n anchorEl: anchorEl,\n keepMounted: true,\n open: open,\n onClose: onClose,\n PaperProps: {},\n children: actions.map((action, index) => {\n if (typeof action === 'function') {\n return action({\n close: onClose\n });\n }\n const {\n icon,\n text,\n onClick: _onClick,\n disabled = false\n } = action,\n opts = _objectWithoutProperties(action, _excluded2);\n return /*#__PURE__*/(0, _react.createElement)(_MenuItem.default, _objectSpread(_objectSpread({}, opts), {}, {\n disabled: disabled,\n dense: true,\n onClick: e => {\n onClose();\n _onClick(e);\n }\n // eslint-disable-next-line react/no-array-index-key\n ,\n key: index\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n style: {\n minWidth: 24,\n marginRight: 8\n },\n children: icon\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: text\n }));\n })\n })]\n }));\n}\nActions.propTypes = {\n actions: _propTypes.default.array\n};\nActions.defaultProps = {\n actions: []\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ConfigAccess;\nexports.getComponentWhoCanAccess = void 0;\nvar _react = require(\"react\");\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _Group = _interopRequireDefault(require(\"@mui/icons-material/Group\"));\nvar _Chip = _interopRequireDefault(require(\"@mui/material/Chip\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\nvar _constant = require(\"@blocklet/constant\");\nvar _constant2 = require(\"@abtnode/constant\");\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util2 = require(\"../../util\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _config = _interopRequireDefault(require(\"../../who-can-access/config\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst CONFIG_ROLE = 'roles';\nconst Configs = [..._config.default, {\n value: CONFIG_ROLE,\n icon: _Group.default,\n title: {\n zh: '指定通行证可访问',\n en: 'Accessible to selected passports'\n },\n description: {\n zh: '只有指定的通行证可以访问',\n en: 'Only specified passports can access'\n }\n}];\nconst getAccess = (whoCanAccess, roleStore) => {\n if (whoCanAccess && whoCanAccess.startsWith(_constant2.WHO_CAN_ACCESS_PREFIX_ROLES)) {\n const roleNames = (0, _util.getRolesFromAuthConfig)({\n whoCanAccess\n });\n const filterRoles = roleStore.filter(x => roleNames.includes(x.name));\n return {\n access: CONFIG_ROLE,\n roles: filterRoles\n };\n }\n return {\n access: whoCanAccess,\n roles: []\n };\n};\nconst getComponentWhoCanAccess = function getComponentWhoCanAccess(component, app) {\n let {\n roles = []\n } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n const access = (component.configs || []).find(x => x.key === _constant.BLOCKLET_CONFIGURABLE_KEY.COMPONENT_ACCESS_WHO);\n if (access) {\n return getAccess(access.value, roles);\n }\n if (app && (0, _get.default)(app, 'settings.whoCanAccess') && (0, _get.default)(app, 'settings.whoCanAccess') !== _constant2.WHO_CAN_ACCESS.ALL) {\n return getAccess((0, _get.default)(app, 'settings.whoCanAccess'), roles);\n }\n const service = (0, _util.findServiceFromMeta)(component.meta, _constant2.NODE_SERVICES.AUTH);\n if ((0, _get.default)(service, 'config.whoCanAccess')) {\n return getAccess(service.config.whoCanAccess, roles);\n }\n return {\n access: _constant2.WHO_CAN_ACCESS.ALL,\n roles: []\n };\n};\nexports.getComponentWhoCanAccess = getComponentWhoCanAccess;\nfunction ConfigAccess(_ref) {\n let {\n blocklet,\n ancestors,\n children\n } = _ref;\n const theme = (0, _useTheme.default)();\n const [showDialog, setShowDialog] = (0, _react.useState)('');\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n roles: roleList\n } = (0, _team.useTeamContext)();\n const [loading, setLoading] = (0, _react.useState)('');\n const root = ancestors[0] || blocklet;\n const {\n access: defaultValue,\n roles: defaultRoles\n } = getComponentWhoCanAccess(blocklet, root, {\n roles: roleList\n });\n const [whoCanAccess, setWhoCanAccess] = (0, _react.useState)(defaultValue);\n const [roles, setRoles] = (0, _react.useState)(defaultRoles);\n const dids = [...ancestors.map(x => x.meta.did), blocklet.meta.did];\n const iconStyle = {\n marginRight: 4,\n fontSize: 18,\n verticalAlign: 'text-bottom',\n color: theme.palette.text.secondary\n };\n const componentName = ancestors.concat(blocklet).map(x => (0, _util.getDisplayName)(x, true)).join(' / ');\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n if (blocklet.status === 'unknown' && (0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n const onClose = () => {\n setShowDialog(false);\n };\n const onOpen = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setShowDialog(true);\n };\n const onWhoCanAccessChange = e => {\n const {\n value\n } = e.target;\n setWhoCanAccess(value);\n };\n const onRolesChange = e => {\n setRoles(roleList.filter(x => (e.target.value || []).includes(x.name)));\n };\n const onConfirm = async () => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n let value = whoCanAccess;\n if (value === CONFIG_ROLE) {\n value = \"\".concat(_constant2.WHO_CAN_ACCESS_PREFIX_ROLES).concat(roles.map(x => x.name).join(','));\n }\n await api.updateWhoCanAccess({\n input: {\n did: dids,\n whoCanAccess: value\n }\n });\n _toast.default.success(t('blocklet.config.access.updatedTip'));\n onClose();\n setLoading(false);\n } catch (err) {\n setLoading(false);\n _toast.default.error((0, _util2.formatError)(err));\n }\n };\n const disabled = loading || whoCanAccess === CONFIG_ROLE && !roles.length;\n return [typeof children === 'function' ? children({\n open: onOpen\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: onOpen,\n \"data-cy\": \"action-config-component\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Edit.default, {})\n }), showDialog && /*#__PURE__*/(0, _jsxRuntime.jsxs)(StyledDialog, {\n open: true,\n fullWidth: true,\n title: componentName,\n onClose: onClose,\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onClose,\n color: \"inherit\",\n \"data-cy\": \"config-access-cancel\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: onConfirm,\n color: \"primary\",\n disabled: disabled,\n variant: \"contained\",\n autoFocus: true,\n \"data-cy\": \"config-access-confirm\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.confirm')]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 4,\n mb: 3,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('blocklet.config.access.description'),\n select: true,\n fullWidth: true,\n value: whoCanAccess,\n onChange: onWhoCanAccessChange,\n \"data-cy\": \"config-access-select\",\n SelectProps: {\n renderValue: selected => {\n const d = Configs.find(x => x.value === selected);\n return d ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(d.icon, {\n style: iconStyle\n }), d.title[locale]]\n }) : null;\n }\n },\n children: Configs.map(d => {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(StyledMenuItem, {\n value: d.value,\n sx: {\n display: 'block'\n },\n \"data-cy\": \"config-access-opt-\".concat(d.value),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(d.icon, {\n style: iconStyle\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: d.title[locale]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"tip\",\n children: d.description[locale]\n })\n })]\n });\n })\n })\n }), whoCanAccess === CONFIG_ROLE && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 4,\n mb: 3,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('blocklet.config.access.description'),\n select: true,\n fullWidth: true,\n value: roles.map(x => x.name),\n onChange: onRolesChange,\n SelectProps: {\n multiple: true,\n renderValue: selected => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n sx: {\n display: 'flex',\n flexWrap: 'wrap',\n gap: 0.5\n },\n children: selected.map(value => {\n const role = roleList.find(x => x.name === value);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Chip.default, {\n label: role.title\n }, role.text);\n })\n })\n },\n children: roleList.map(_ref2 => {\n let {\n name,\n title\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n value: name,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Checkbox.default, {\n checked: roles.some(x => x.name === name)\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: title\n })]\n }, name);\n })\n })\n })]\n })];\n}\nConfigAccess.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n children: _propTypes.default.any\n};\nConfigAccess.defaultProps = {\n ancestors: [],\n children: null\n};\nconst StyledDialog = (0, _styled.default)(_Dialog.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiDialogContent-root {\\n padding-top: 0;\\n margin-top: -32px;\\n }\\n .MuiToolbar-root {\\n padding-right: 12px;\\n }\\n .ux-dialog_right {\\n padding-right: 20px;\\n }\\n\"])));\nconst StyledMenuItem = (0, _styled.default)(_MenuItem.default)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n .tip {\\n font-size: 12px;\\n color: \", \";\\n }\\n\"])), props => props.theme.palette.text.secondary);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletAccess;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _ExpandMore = _interopRequireDefault(require(\"@mui/icons-material/ExpandMore\"));\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\nvar _Collapse = _interopRequireDefault(require(\"@mui/material/Collapse\"));\nvar _Launch = _interopRequireDefault(require(\"@mui/icons-material/Launch\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _blocklet = require(\"../../contexts/blocklet\");\nvar _team = require(\"../../contexts/team\");\nvar _util2 = require(\"../../util\");\nvar _line = _interopRequireDefault(require(\"../component/line\"));\nvar _bundleAvatar = _interopRequireDefault(require(\"../bundle-avatar\"));\nvar _configAccess = _interopRequireWildcard(require(\"./config-access\"));\nvar _config = _interopRequireDefault(require(\"../../who-can-access/config\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ComponentItem(_ref) {\n var _blocklet$children;\n let {\n blocklet,\n ancestors,\n depth\n } = _ref;\n const theme = (0, _useTheme.default)();\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n roles: roleList\n } = (0, _team.useTeamContext)();\n const [expand, setExpand] = (0, _react.useState)(true);\n const {\n recommendedDomain: domain\n } = (0, _blocklet.useBlockletContext)();\n const app = ancestors[0] || blocklet;\n const mountPoint = \"/\".concat(ancestors.map(x => x.mountPoint || '/').join('/'), \"/\").concat(blocklet.mountPoint || '/').replace(/\\/+/g, '/');\n const href = (0, _util2.getBlockletUrl)({\n blocklet: app,\n domain: {\n value: domain\n },\n mountPoint,\n params: (0, _util2.getBlockletUrlParams)(app, locale)\n });\n const iconStyle = {\n fill: theme.palette.text.secondary\n };\n const canExpand = depth > 0 && blocklet.children.length > 0;\n const expandIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n size: \"small\",\n children: expand ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {\n fontSize: \"inherit\"\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChevronRight.default, {\n fontSize: \"inherit\"\n })\n });\n const {\n access: whoCanAccess,\n roles\n } = (0, _configAccess.getComponentWhoCanAccess)(blocklet, app, {\n roles: roleList\n });\n let accessConfig;\n if (whoCanAccess !== 'roles') {\n accessConfig = _config.default.find(x => x.value === whoCanAccess) || _config.default[2];\n } else {\n const str = roles.map(x => x.title).join('/');\n accessConfig = {\n title: {\n zh: \"\\u53EA\\u6709 \".concat(str, \" \\u53EF\\u4EE5\\u8BBF\\u95EE\"),\n en: \"Only \".concat(str, \" can access\")\n }\n };\n }\n return [(depth > 0 || blocklet.meta.group !== 'gateway') && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n py: 2,\n className: \"component-item\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n pl: Math.max((depth - 1) * 2, 0),\n width: {\n xs: 300,\n md: 400\n },\n display: \"flex\",\n alignItems: \"center\",\n style: {\n cursor: canExpand ? 'pointer' : 'cursor'\n },\n onClick: () => canExpand && setExpand(!expand),\n children: [canExpand ? expandIcon : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n width: 28\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_bundleAvatar.default, {\n blocklet: blocklet,\n ancestors: ancestors\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n ml: \"16px\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n style: {\n color: '#222',\n fontSize: 18\n },\n children: (0, _util.getDisplayName)(blocklet, true)\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n color: \"text.secondary\",\n children: accessConfig.title[locale]\n })\n })]\n })]\n }, blocklet), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.visit'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n title: href,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Launch.default, {})\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_configAccess.default, {\n blocklet: blocklet,\n ancestors: ancestors,\n children: _ref2 => {\n let {\n open\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.edit'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: open,\n \"data-cy\": \"btn-edit-\".concat(blocklet.meta.did),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {\n style: iconStyle\n })\n })\n });\n }\n })]\n }, \"actions\")]\n }, \"group-not-gateway-box\"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_line.default, {\n depth: depth\n }), (_blocklet$children = blocklet.children) !== null && _blocklet$children !== void 0 && _blocklet$children.length ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Collapse.default, {\n in: expand,\n children: blocklet.children.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentItem, {\n blocklet: x,\n ancestors: [...ancestors, blocklet],\n depth: depth + 1\n }, \"\".concat(depth + 1, \"-\").concat(x.meta.did)))\n }, \"blocklet-collapse\") : null];\n}\nComponentItem.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n depth: _propTypes.default.number\n};\nComponentItem.defaultProps = {\n ancestors: [],\n depth: 0\n};\nfunction BlockletAccess() {\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const components = [...blocklet.children] || [];\n if (blocklet.meta.group !== 'gateway') {\n // add root blocklet to table list\n components.unshift(blocklet);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, {\n component: \"div\",\n children: components && components.length ? [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 2,\n ml: {\n xs: '-12px',\n md: '-24px'\n },\n style: {\n maxWidth: 1080\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentItem, {\n blocklet: blocklet\n }, \"0-\".concat(blocklet.meta.did))\n }, \"top-blocklet-\".concat(blocklet.meta.did))] : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 8,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('blocklet.component.noComponent')\n })\n })\n });\n}\nBlockletAccess.propTypes = {};\nconst Div = (0, _styled.default)(_Box.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .title {\\n font-size: 1.2rem;\\n font-weight: bold;\\n margin-top: \", \";\\n margin-bottom: \", \";\\n &.first {\\n margin-top: 0;\\n }\\n }\\n\"])), props => props.theme.spacing(5), props => props.theme.spacing(3));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletActions;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _reactRouterDom = require(\"react-router-dom\");\nvar _useLocalStorage = _interopRequireDefault(require(\"react-use/lib/useLocalStorage\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Menu = _interopRequireDefault(require(\"@mui/material/Menu\"));\nvar _Divider = _interopRequireDefault(require(\"@mui/material/Divider\"));\nvar _ButtonGroup = _interopRequireDefault(require(\"@mui/material/ButtonGroup\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _MoreVert = _interopRequireDefault(require(\"@mui/icons-material/MoreVert\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Radio = _interopRequireDefault(require(\"@mui/material/Radio\"));\nvar _RadioGroup = _interopRequireDefault(require(\"@mui/material/RadioGroup\"));\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@blocklet/constant\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _util2 = require(\"../util\");\nvar _util3 = require(\"./util\");\nvar _node = require(\"../contexts/node\");\nvar _confirm = _interopRequireDefault(require(\"../confirm\"));\nvar _icons = _interopRequireDefault(require(\"./icons\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"onStart\", \"onComplete\", \"variant\", \"hasPermission\", \"useBlockletUrlEvaluation\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletActions(_ref) {\n let {\n blocklet,\n onStart,\n onComplete,\n variant,\n hasPermission,\n useBlockletUrlEvaluation\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const navigate = (0, _reactRouterDom.useNavigate)();\n const node = (0, _node.useNodeContext)();\n const [anchorEl, setAnchorEl] = (0, _react.useState)(null);\n const [currentAction, setCurrentAction] = (0, _react.useState)(null);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [skipSetup] = (0, _useLocalStorage.default)('skip-blocklet-setup', false);\n const {\n loading: recommendedUrlLoading,\n recommendedUrl\n } = useBlockletUrlEvaluation(blocklet);\n const inProgress = (0, _util2.isInProgress)(blocklet.status);\n const {\n inService\n } = node;\n const createHandler = function createHandler(action, fn) {\n let requireUserConfirm = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return async () => {\n const onConfirm = async params => {\n onStart({\n action,\n blocklet\n });\n setLoading(true);\n setCurrentAction(action);\n setConfirmSetting(null);\n let isRemoved = false;\n try {\n var _blocklet$settings;\n const input = {\n did: blocklet.meta.did\n };\n if (action === 'remove') {\n input.keepData = params.removeType === 'keepData';\n }\n if (action === 'start' && !inService && !skipSetup && !((_blocklet$settings = blocklet.settings) !== null && _blocklet$settings !== void 0 && _blocklet$settings.initialized)) {\n // 启动 blocklet 并跳转到 setup 流程界面时携带 serverUrl 查询参数\n const serverUrl = (0, _util3.getServerUrl)(node.info);\n const url = new URL(recommendedUrl);\n url.searchParams.set('serverUrl', serverUrl);\n window.open(url.href);\n onComplete({\n action,\n blocklet\n });\n return;\n }\n await fn({\n input\n });\n if (action === 'remove') {\n isRemoved = true; // Deleted send request and succeeded\n } else {\n await (0, _util2.sleep)(1000); // just avoid user feeling so fast\n }\n\n if (action === 'reload') {\n _toast.default.success(t('blocklet.reloadSuccess'));\n }\n onComplete({\n action,\n blocklet\n });\n } catch (err) {\n const errMsg = \"Blocklet \".concat(action, \" failed: \").concat((0, _util2.formatError)(err));\n onComplete({\n action,\n blocklet,\n error: new Error(errMsg)\n });\n } finally {\n if (!isRemoved) {\n setLoading(false);\n }\n }\n };\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const name = (0, _util.getDisplayName)(blocklet, true);\n const removeSetting = blocklet.source === (0, _constant.fromBlockletSource)(_constant.BlockletSource.custom) ? {\n description: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n gutterBottom: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"b\", {\n children: t('blocklet.action.forceRemoveDescription')\n })\n })\n }),\n params: {\n removeType: 'complete'\n }\n } : {\n description: (params, setParams) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n gutterBottom: true,\n children: t('blocklet.action.removeDescription')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_RadioGroup.default, {\n name: \"removeType\",\n value: params.removeType,\n onChange: e => setParams(_objectSpread(_objectSpread({}, params), {}, {\n removeType: e.target.value\n })),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n value: \"keepData\",\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),\n label: t('blocklet.action.removeKeepData')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n value: \"complete\",\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),\n label: t('blocklet.action.removeComplete')\n })]\n })]\n }),\n params: {\n removeType: 'keepData'\n }\n };\n const confirmSettings = {\n stop: {\n title: \"\".concat(t('common.stop'), \" \").concat(name),\n description: t('blocklet.action.stopDescription'),\n confirm: t('blocklet.action.confirmStop'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n },\n restart: {\n title: \"\".concat(t('common.restart'), \" \").concat(name),\n description: t('blocklet.action.restartDescription'),\n confirm: t('blocklet.action.confirmRestart'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n },\n remove: _objectSpread({\n title: \"\".concat(t('common.remove'), \" \").concat(name),\n confirm: t('blocklet.action.confirmRemove'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n }, removeSetting),\n cancelDownload: {\n title: \"\".concat(t('common.cancel')),\n description: t('blocklet.action.cancelDownloadDescription', {\n name\n }),\n confirm: t('common.confirm'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n }\n };\n if (requireUserConfirm) {\n setConfirmSetting(confirmSettings[action]);\n } else {\n await onConfirm();\n }\n };\n };\n const open = Boolean(anchorEl);\n const onOpen = e => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused) {}\n setAnchorEl(e.currentTarget);\n };\n const onClose = e => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused2) {}\n setAnchorEl(null);\n };\n const onAction = async (action, e) => {\n try {\n e.stopPropagation();\n e.preventDefault();\n // eslint-disable-next-line no-empty\n } catch (_unused3) {}\n setAnchorEl(null);\n if (typeof action.handler === 'function') {\n try {\n setLoading(true);\n setCurrentAction(action.action);\n await action.handler();\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error(\"Blocklet \".concat(action.name, \" failed: \"), err);\n } finally {\n setLoading(false);\n }\n }\n };\n const removeAction = !inService && (0, _util.isDeletableBlocklet)(blocklet) ? {\n action: 'remove',\n icon: _icons.default.Remove,\n name: t('common.remove'),\n handler: createHandler('remove', node.api.deleteBlocklet, true),\n disabled: inProgress\n } : null;\n const cancelDownloadAction = !inService ? {\n action: 'remove',\n icon: _icons.default.Remove,\n name: t('common.cancel'),\n handler: createHandler('cancelDownload', node.api.cancelDownloadBlocklet, true)\n } : null;\n const missingRequiredConfigs = (0, _util.getAppMissingConfigs)(blocklet);\n const actions = [{\n action: 'start',\n icon: _icons.default.Start,\n name: t('common.start'),\n handler: createHandler('start', node.api.startBlocklet),\n disabled: !(0, _util.hasRunnableComponent)(blocklet) || blocklet.status === 'running' || blocklet.status === 'corrupted' || missingRequiredConfigs.length > 0 || (0, _util2.isDownloading)(blocklet.status) || blocklet.mode === _constant.BLOCKLET_MODES.DEVELOPMENT || recommendedUrlLoading || inProgress\n }, {\n action: 'stop',\n icon: _icons.default.Stop,\n name: t('common.stop'),\n handler: createHandler('stop', node.api.stopBlocklet, true),\n disabled: !['running', 'starting'].includes(blocklet.status) || blocklet.mode === _constant.BLOCKLET_MODES.DEVELOPMENT\n }, {\n action: 'restart',\n icon: _icons.default.Restart,\n name: t('common.restart'),\n handler: createHandler('restart', node.api.restartBlocklet, true),\n disabled: blocklet.status !== 'running' || blocklet.mode === _constant.BLOCKLET_MODES.DEVELOPMENT\n }, {\n action: 'reload',\n icon: _icons.default.Reload,\n name: t('common.reload'),\n handler: createHandler('reload', node.api.reloadBlocklet),\n disabled: blocklet.status !== 'running' || blocklet.mode === _constant.BLOCKLET_MODES.DEVELOPMENT\n }, (0, _util2.isDownloading)(blocklet.status) ? cancelDownloadAction : removeAction, {\n separator: true\n }, {\n onlyInMenu: true,\n action: 'config',\n icon: _icons.default.Config,\n name: t('common.config'),\n handler: () => {\n navigate(\"/blocklets/\".concat(blocklet.meta.did, \"/configuration\"));\n },\n disabled: (0, _util2.isDownloading)(blocklet.status)\n }, {\n onlyInMenu: true,\n action: 'team',\n icon: _icons.default.Group,\n name: t('common.manageTeam'),\n handler: () => {\n navigate(\"/blocklets/\".concat(blocklet.meta.did, \"/members\"));\n },\n disabled: (0, _util2.isDownloading)(blocklet.status)\n }, {\n onlyInMenu: true,\n action: 'log',\n icon: _icons.default.Log,\n name: t('common.log'),\n handler: () => {\n navigate(\"/logs/blocklet-\".concat(blocklet.meta.did));\n },\n disabled: (0, _util2.isDownloading)(blocklet.status)\n }].filter(Boolean);\n if (variant === 'menu') {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n \"data-cy\": \"blocklet-actions\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"aria-label\": \"more\",\n \"aria-controls\": \"actions-menu\",\n \"aria-haspopup\": \"true\",\n \"data-cy\": \"trigger-blocklet-actions\",\n \"actions-blocklet-did\": blocklet.meta.did,\n onClick: onOpen,\n size: \"small\",\n disabled: !hasPermission || !(0, _util2.isDownloading)(blocklet.status) && loading,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_MoreVert.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Menu.default, {\n id: \"actions-menu\",\n anchorEl: anchorEl,\n keepMounted: true,\n open: open,\n onClose: onClose,\n PaperProps: {},\n children: [missingRequiredConfigs.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Alert.default, {\n style: {\n maxWidth: '400px'\n },\n severity: \"error\",\n children: [t('blocklet.config.missingRequired'), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"br\", {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRouterDom.Link, {\n to: \"/blocklets/\".concat(blocklet.meta.did, \"/components\"),\n children: t('blocklet.config.gotoFix')\n })]\n }), actions.map((action, i) => {\n if (action.separator) {\n // eslint-disable-next-line react/no-array-index-key\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Divider.default, {}, \"separator-\".concat(i));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n dense: true,\n onClick: e => onAction(action, e),\n disabled: action.disabled,\n \"data-cy\": \"\".concat(action.action, \"-blocklet\"),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n style: {\n minWidth: 24\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(action.icon, {\n fontSize: \"small\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: action.name\n })]\n }, action.name);\n })]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({\n \"data-cy\": \"blocklet-actions\"\n }, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonGroup.default, {\n children: actions.filter(x => !x.separator && !x.onlyInMenu).map(action => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n title: action.name,\n \"data-cy\": \"\".concat(action.action, \"-blocklet\"),\n onClick: () => onAction(action),\n disabled: Boolean(action.disabled) || loading,\n children: [currentAction === action.action && loading && inProgress ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(action.icon, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: \"blocklet-action-text\",\n children: action.name\n })]\n }, action.name))\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n }));\n}\nBlockletActions.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n onStart: _propTypes.default.func.isRequired,\n onComplete: _propTypes.default.func.isRequired,\n variant: _propTypes.default.oneOf(['menu', 'group']),\n hasPermission: _propTypes.default.bool,\n useBlockletUrlEvaluation: _propTypes.default.func\n};\nBlockletActions.defaultProps = {\n variant: 'menu',\n hasPermission: false,\n useBlockletUrlEvaluation: () => {\n var _window, _window$location;\n return {\n loading: false,\n recommendedUrl: (_window = window) === null || _window === void 0 ? void 0 : (_window$location = _window.location) === null || _window$location === void 0 ? void 0 : _window$location.href\n };\n }\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n align-items: center;\\n\\n @media (max-width: \", \"px) {\\n .MuiButton-root {\\n padding: 4px;\\n font-size: 10px;\\n }\\n }\\n\"])), props => props.theme.breakpoints.values.sm);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddCert;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _useAsyncRetry = _interopRequireDefault(require(\"react-use/lib/useAsyncRetry\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _CircularProgress = _interopRequireDefault(require(\"@mui/material/CircularProgress\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@blocklet/constant\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _confirm = _interopRequireDefault(require(\"../confirm\"));\nvar _node = require(\"../contexts/node\");\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"domain\", \"domainStatus\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nconst isCertInProgress = status => ['waiting', 'creating', 'renewaling'].includes(status);\nfunction Add(props) {\n var _certState$value2;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const {\n domain,\n onAdd,\n children,\n did\n } = props;\n const {\n api,\n ws: {\n useSubscription\n }\n } = (0, _node.useNodeContext)();\n const [issuing, setIssuing] = (0, _react.useState)(false);\n const {\n actions: {\n refreshDomainStatus\n }\n } = (0, _blocklet.useBlockletContext)();\n const certState = (0, _useAsyncRetry.default)(async () => {\n const {\n cert\n } = await api.findCertificateByDomain({\n input: {\n domain,\n did\n }\n });\n return cert;\n });\n const handleIssueComplete = (cert, type) => {\n if (cert.domain === domain) {\n setIssuing(false);\n if (type === 'success') {\n _toast.default.success(\"The \".concat(cert.domain, \" certificate is issued successfully\"));\n } else if (type === 'error') {\n _toast.default.error(\"Failed to issue certificate for \".concat(cert.domain));\n }\n }\n };\n (0, _react.useEffect)(() => {\n var _certState$value;\n if (!certState.loading && isCertInProgress((_certState$value = certState.value) === null || _certState$value === void 0 ? void 0 : _certState$value.status)) {\n setIssuing(true);\n }\n }, [certState]);\n useSubscription(_constant.BlockletEvents.certError, cert => handleIssueComplete(cert, 'error'));\n useSubscription(_constant.BlockletEvents.certIssued, cert => {\n certState.retry();\n refreshDomainStatus(cert.domain);\n handleIssueComplete(cert, 'success');\n });\n if (certState.loading) {\n return ''; // 如果正在加载证书的状态,则不渲染任何元素\n }\n\n if (((_certState$value2 = certState.value) === null || _certState$value2 === void 0 ? void 0 : _certState$value2.status) === 'normal') {\n return ''; // 如果证书已经生成,则不渲染任何元素\n }\n\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n setLoading(true);\n try {\n await api.issueLetsEncryptCert({\n input: {\n domain,\n did\n }\n });\n onAdd();\n setIssuing(true);\n } catch (error) {\n console.error(error);\n setIssuing(false);\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n title: t('router.cert.genLetsEncryptCert.title'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"success\",\n children: t('router.cert.genLetsEncryptCert.dnsTip')\n }), t('router.cert.genLetsEncryptCert.description')]\n }),\n confirm: t('common.confirm'),\n onConfirm,\n onCancel\n };\n const onClick = e => {\n e.stopPropagation();\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [issuing ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('router.cert.issuing'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {\n size: 12\n })\n }) : children({\n loading,\n open: onClick\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n color: \"primary\",\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nAdd.propTypes = {\n domain: _propTypes.default.string.isRequired,\n did: _propTypes.default.string.isRequired,\n onAdd: _propTypes.default.func,\n children: _propTypes.default.any\n};\nAdd.defaultProps = {\n onAdd: () => {},\n children: null\n};\nfunction AddCert(props) {\n const {\n domain,\n domainStatus\n } = props,\n others = _objectWithoutProperties(props, _excluded);\n if (!(0, _util.shouldCheckDomainStatus)(domain) || domainStatus !== null && domainStatus !== void 0 && domainStatus.isHttps) {\n return '';\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Add, _objectSpread({}, _objectSpread({\n domain\n }, others)));\n}\nAddCert.propTypes = {\n domain: _propTypes.default.string.isRequired,\n domainStatus: _propTypes.default.shape({\n isHttps: _propTypes.default.bool\n }).isRequired,\n did: _propTypes.default.string.isRequired,\n onAdd: _propTypes.default.func,\n children: _propTypes.default.any\n};\nAddCert.defaultProps = {\n onAdd: () => {},\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AgreementApp;\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectDestructuringEmpty(obj) { if (obj == null) throw new TypeError(\"Cannot destructure \" + obj); }\nfunction AgreementApp(_ref) {\n let props = Object.assign({}, (_objectDestructuringEmpty(_ref), _ref));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", _objectSpread(_objectSpread({}, props), {}, {\n style: {\n width: '100%'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"h3\", {\n children: \"End User License Agreement for Application\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: \"Blocklet Server License Agreement ArcBlock, Inc. version 2020-08-28\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: \"BLOCKLET SERVER LICENSE AGREEMENT\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: \"\\u6682\\u65E0\"\n })]\n }));\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Agreement;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _reactRouterDom = require(\"react-router-dom\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _serverEula = _interopRequireDefault(require(\"@blocklet/launcher-layout/lib/wizard/server-eula\"));\nvar _wizardDesc = _interopRequireDefault(require(\"@blocklet/launcher-layout/lib/wizard/wizard-desc\"));\nvar _agreementApp = _interopRequireDefault(require(\"./agreement-app\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n// TODO: 加载 Blocklet 定义的 Agreement\nfunction Agreement(_ref) {\n let {\n meta,\n onClickNext,\n handleDescEle\n } = _ref;\n const navigate = (0, _reactRouterDom.useNavigate)();\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const clickNext = onClickNext || (() => {\n navigate(\"/launch-blocklet/install\".concat(window.location.search));\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Container, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"app-content\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"agreement\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"agreement-content\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_wizardDesc.default, {\n blockletMeta: {\n data: meta\n },\n locale: locale,\n handleDescEle: handleDescEle\n })\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"button-container\",\n \"data-cy\": \"agree-all\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_serverEula.default, {\n onContinue: clickNext,\n description: /*#__PURE__*/(0, _jsxRuntime.jsx)(_agreementApp.default, {}),\n texts: {\n listenName: t('launchBlocklet.license'),\n buttonNext: t('launchBlocklet.next')\n }\n })\n })]\n });\n}\nAgreement.propTypes = {\n meta: _propTypes.default.object.isRequired,\n onClickNext: _propTypes.default.func,\n handleDescEle: _propTypes.default.node\n};\nAgreement.defaultProps = {\n onClickNext: null,\n handleDescEle: ''\n};\nconst Container = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n height: 100%;\\n flex: 1;\\n .app-content {\\n padding: 2px 24px 24px;\\n \", \" {\\n padding-top: 10px;\\n }\\n width: 100%;\\n flex: 1;\\n letter-spacing: normal;\\n }\\n .agreement {\\n position: relative;\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n height: 100%;\\n border: 1px solid \", \";\\n border-radius: 12px;\\n \", \" {\\n margin-top: 24px;\\n }\\n \", \" {\\n margin-top: 16px;\\n }\\n .agreement-content {\\n position: absolute;\\n left: 0;\\n top: 0;\\n width: 100%;\\n height: 100%;\\n font-size: 14px;\\n overflow-y: auto;\\n \", \" {\\n padding: 0 24px;\\n }\\n \", \" {\\n padding: 0 16px;\\n }\\n &:after {\\n display: block;\\n content: '';\\n height: 24px;\\n }\\n }\\n }\\n .button-container {\\n padding-top: 24px;\\n padding-bottom: 34px;\\n \", \" {\\n padding-right: 24px;\\n margin-left: auto;\\n }\\n \", \" {\\n padding-top: 0;\\n padding-bottom: 16px;\\n }\\n }\\n\"])), props => props.theme.breakpoints.down('md'), props => props.theme.palette.grey['100'], props => props.theme.breakpoints.up('md'), props => props.theme.breakpoints.down('md'), props => props.theme.breakpoints.up('md'), props => props.theme.breakpoints.down('md'), props => props.theme.breakpoints.up('md'), props => props.theme.breakpoints.down('md'));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletAppAvatar;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\nvar _Avatar2 = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _constant = require(\"@blocklet/constant\");\nvar _useAppLogo = _interopRequireDefault(require(\"../hooks/use-app-logo\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\", \"style\", \"size\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletAppAvatar(_ref) {\n let {\n blocklet,\n style,\n size\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n logoUrl\n } = (0, _useAppLogo.default)({\n blocklet\n });\n const {\n variant\n } = rest;\n let imgEle = /*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n src: logoUrl,\n alt: \"\",\n style: {\n width: size\n }\n });\n if (!blocklet.meta.logo) {\n var _find;\n const exist = (_find = (blocklet.configs || []).find(x => x.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO_SQUARE)) === null || _find === void 0 ? void 0 : _find.value;\n if (!exist) {\n imgEle = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar2.default, {\n did: blocklet.meta.did || '',\n responsive: true\n });\n }\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, _objectSpread(_objectSpread({\n variant: variant || 'square',\n style: Object.assign({\n backgroundColor: 'transparent',\n width: size,\n height: size,\n borderRadius: 10\n }, style)\n }, rest), {}, {\n children: imgEle\n }));\n}\nBlockletAppAvatar.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n style: _propTypes.default.object,\n size: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])\n};\nBlockletAppAvatar.defaultProps = {\n style: {},\n size: 40\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = WrappedAuditLogs;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _reactRouterDom = require(\"react-router-dom\");\nvar _reactMarkdownPreview = _interopRequireDefault(require(\"@uiw/react-markdown-preview\"));\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Pagination = _interopRequireDefault(require(\"@mui/lab/Pagination\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Select = _interopRequireDefault(require(\"@mui/material/Select\"));\nvar _InputLabel = _interopRequireDefault(require(\"@mui/material/InputLabel\"));\nvar _FormControl = _interopRequireDefault(require(\"@mui/material/FormControl\"));\nvar _auditLog = require(\"../contexts/audit-log\");\nvar _node = require(\"../contexts/node\");\nvar _relativeTime = _interopRequireDefault(require(\"../relative-time\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst getUserLink = _ref => {\n let {\n log,\n info,\n inService\n } = _ref;\n if (inService) {\n // TODO\n return \"/members?did=\".concat(log.actor.did);\n }\n if (log.scope === info.did) {\n return \"/team/members?did=\".concat(log.actor.did);\n }\n return \"/blocklets/\".concat(log.scope, \"/members?did=\").concat(log.actor.did);\n};\nfunction AuditLog(_ref2) {\n var _log$env$os, _log$env$browser;\n let {\n log\n } = _ref2;\n const {\n inService,\n info\n } = (0, _node.useNodeContext)();\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"log-entry\",\n \"data-cy\": \"log-entry\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"log-author\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n did: log.actor.did,\n size: 36,\n shape: \"circle\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"log-body\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n className: \"log-header\",\n color: \"textSecondary\",\n component: \"p\",\n gutterBottom: true,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactRouterDom.Link, {\n to: getUserLink({\n log,\n inService,\n info\n }),\n target: \"_blank\",\n children: [log.actor.fullName, log.actor.role ? \"(\".concat(log.actor.role, \")\") : '']\n }), ' ', \"- \", log.action]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n className: \"log-content\",\n color: \"textPrimary\",\n component: \"div\",\n \"data-color-mode\": \"light\",\n gutterBottom: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactMarkdownPreview.default, {\n source: log.content,\n linkTarget: \"_blank\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"log-meta\",\n variant: \"body2\",\n children: [!!log.ip && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"span\",\n color: \"textSecondary\",\n children: \"IP: \".concat(log.ip)\n }), !!((_log$env$os = log.env.os) !== null && _log$env$os !== void 0 && _log$env$os.name) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"span\",\n color: \"textSecondary\",\n children: [log.env.os.name, \"(\", log.env.os.version, \")\"]\n }), !!((_log$env$browser = log.env.browser) !== null && _log$env$browser !== void 0 && _log$env$browser.name) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"span\",\n color: \"textSecondary\",\n children: [log.env.browser.name, \"(\", log.env.browser.version, \")\"]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"span\",\n color: \"textSecondary\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_relativeTime.default, {\n value: log.createdAt\n })\n })]\n })]\n })]\n });\n}\nfunction AuditLogs() {\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n data,\n loading,\n paging,\n filter,\n categories,\n setCategory,\n fetch\n } = (0, _auditLog.useAuditLogContext)();\n if (loading) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n textAlign: 'center',\n marginTop: '50px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n \"data-cy\": \"audit-logs\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"log-controls\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_FormControl.default, {\n style: {\n width: '240px'\n },\n variant: \"outlined\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_InputLabel.default, {\n children: t('common.filter')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Select.default, {\n \"data-cy\": \"filter-by-category-trigger\",\n value: filter.category,\n onChange: e => setCategory(e.target.value),\n fullWidth: true,\n label: t('common.category'),\n disabled: loading,\n children: categories.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: x.value,\n \"data-cy\": \"filter-by-category-\".concat(x.value),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: x.label\n })\n })\n }, x.label))\n })]\n })\n }), data.length === 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n }), data.length > 0 && data.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(AuditLog, {\n log: x\n }, x.id)), paging.pageCount > 1 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Pagination.default, {\n page: paging.page,\n count: paging.pageCount,\n onChange: (e, page) => fetch({\n page\n }),\n showFirstButton: true,\n showLastButton: true\n })]\n });\n}\nfunction WrappedAuditLogs(_ref3) {\n let {\n scope\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_auditLog.AuditLogProvider, {\n scope: scope,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(AuditLogs, {})\n });\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .log-controls {\\n display: flex;\\n justify-content: space-between;\\n }\\n .log-entry {\\n display: flex;\\n margin: 16px 0;\\n\\n .log-author {\\n margin-right: 8px;\\n }\\n\\n .log-body {\\n flex: 1;\\n\\n a {\\n color: \", \";\\n }\\n\\n .log-header {\\n }\\n\\n .log-content {\\n p {\\n margin-bottom: 4px;\\n }\\n ul,\\n ol {\\n padding-left: 2rem;\\n }\\n li {\\n list-style-type: disc;\\n }\\n }\\n\\n .log-meta {\\n margin-top: 4px;\\n\\n span {\\n font-size: 0.8rem;\\n display: inline-block;\\n margin-right: 8px;\\n padding-right: 8px;\\n border-right: 1px solid #ccc;\\n\\n &:last-of-type {\\n border-right: none;\\n }\\n }\\n }\\n }\\n }\\n\"])), _ref4 => {\n let {\n theme\n } = _ref4;\n return theme.palette.primary.main;\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletSource;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _toUpper = _interopRequireDefault(require(\"lodash/toUpper\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction BlockletSource(_ref) {\n var _blocklet$meta;\n let {\n sourceInfo,\n blocklet\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n type: \"success\",\n children: (0, _toUpper.default)(sourceInfo.source)\n }, \"source\"), sourceInfo.source === 'registry' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n href: (0, _urlJoin.default)(sourceInfo.deployedFrom, 'blocklets', (blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.bundleDid) || ''),\n target: \"_blank\",\n className: \"page-link\",\n underline: \"hover\",\n style: {\n display: 'flex',\n alignItems: 'center',\n marginLeft: 8\n },\n children: t('blocklet.overview.viewInStore')\n })]\n });\n}\nBlockletSource.propTypes = {\n sourceInfo: _propTypes.default.shape({\n source: _propTypes.default.string,\n deployedFrom: _propTypes.default.string\n }),\n blocklet: _propTypes.default.object\n};\nBlockletSource.defaultProps = {\n sourceInfo: {},\n blocklet: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletAvatar;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\nvar _Avatar2 = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _useBundleLogo = _interopRequireDefault(require(\"../hooks/use-bundle-logo\"));\nvar _node = require(\"../contexts/node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\", \"style\", \"size\", \"ancestors\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletAvatar(_ref) {\n let {\n blocklet,\n style,\n size,\n ancestors\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const node = (0, _node.useNodeContext)();\n const {\n logoUrl,\n inService\n } = (0, _useBundleLogo.default)({\n blocklet,\n ancestors\n });\n const {\n variant\n } = rest;\n const setFallBackUrl = inService ? () => {} : ev => {\n ev.target.src = \"\".concat(node.imgPrefix, \"/blocklet.png\");\n };\n let imgEle = /*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n src: logoUrl,\n onError: setFallBackUrl,\n alt: blocklet.meta.name,\n style: {\n width: size\n }\n });\n if (!blocklet.meta.logo) {\n imgEle = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar2.default, {\n did: blocklet.meta.did || '',\n responsive: true\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, _objectSpread(_objectSpread({\n variant: variant || 'square',\n style: Object.assign({\n backgroundColor: 'transparent',\n width: size,\n height: size,\n borderRadius: 10\n }, style)\n }, rest), {}, {\n children: imgEle\n }));\n}\nBlockletAvatar.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n style: _propTypes.default.object,\n size: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n ancestors: _propTypes.default.array\n};\nBlockletAvatar.defaultProps = {\n style: {},\n size: 40,\n ancestors: []\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddComponent;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _uniqBy = _interopRequireDefault(require(\"lodash/uniqBy\"));\nvar _flatten = _interopRequireDefault(require(\"lodash/flatten\"));\nvar _isEmpty = _interopRequireDefault(require(\"lodash/isEmpty\"));\nvar _isNil = _interopRequireDefault(require(\"lodash/isNil\"));\nvar _pageHeader = _interopRequireDefault(require(\"@blocklet/launcher-layout/lib/page-header\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Link = _interopRequireDefault(require(\"@mui/icons-material/Link\"));\nvar _Check = _interopRequireDefault(require(\"@mui/icons-material/Check\"));\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@blocklet/constant\");\nvar _launcherLayout = _interopRequireDefault(require(\"@blocklet/launcher-layout\"));\nvar _step = require(\"@blocklet/launcher-layout/lib/context/step\");\nvar _constant2 = require(\"@abtnode/constant\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _AnimationWaiter = _interopRequireDefault(require(\"@arcblock/ux/lib/AnimationWaiter\"));\nvar _launchResultMessage = _interopRequireDefault(require(\"@blocklet/launcher-layout/lib/launch-result-message\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _node = require(\"../../contexts/node\");\nvar _util2 = require(\"../../util\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _schemaForm = _interopRequireDefault(require(\"../../schema-form\"));\nvar _required = _interopRequireDefault(require(\"../../form/required\"));\nvar _purchase = require(\"../purchase\");\nvar _util3 = require(\"../router/util\");\nvar _agreement = _interopRequireDefault(require(\"../agreement\"));\nvar _installFromUrl = _interopRequireDefault(require(\"../install-from-url\"));\nvar _selectStore = _interopRequireDefault(require(\"./select-store\"));\nvar _storeBlockletList = _interopRequireDefault(require(\"./store-blocklet-list\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;\nconst _excluded = [\"name\", \"validation\"],\n _excluded2 = [\"default\", \"key\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst requirePurchase = meta => meta.inStore && (0, _util.isFreeBlocklet)(meta) === false;\nconst hasRequiredEnvironments = meta => (meta.environments || []).some(x => x.required);\nconst hasMissRequiredConfigs = (configsList, sharedValueMap) => {\n return configsList === null || configsList === void 0 ? void 0 : configsList.some(item => {\n return item.required && !sharedValueMap[item.key];\n });\n};\nconst getParamsName = function getParamsName() {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return params.title || params.name;\n};\nconst StepContent = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {\n let {\n meta,\n isMobile,\n onStepChange\n } = _ref;\n const {\n steps,\n activeStep,\n setActiveStepByKey,\n setActiveStepByIndex\n } = (0, _step.useStepContext)();\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const step = steps[activeStep];\n (0, _react.useEffect)(() => {\n onStepChange(activeStep);\n }, [onStepChange, activeStep]);\n\n // expose the func and activeStep\n (0, _react.useImperativeHandle)(ref, () => ({\n setActiveStepByKey,\n setActiveStepByIndex\n }));\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(DialogContentWrapper, {\n component: \"div\",\n className: isMobile ? 'mobileStyle' : '',\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_launcherLayout.default, {\n locale: locale,\n blockletMeta: _objectSpread({\n title: ' '\n }, meta),\n pcWidth: \"100%\",\n pcHeight: \"100%\",\n logoUrl: meta && meta.logo && meta.registryUrl ? (0, _util2.getBlockletLogoUrl)({\n did: meta.did,\n baseUrl: meta.registryUrl,\n logoPath: meta.logo\n }) : null,\n stepTip: t('blocklet.component.add'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(RightContent, {\n children: step !== null && step !== void 0 && step.body && typeof step.body === 'function' ? step.body() : step.body\n })\n })\n });\n});\nStepContent.propTypes = {\n meta: _propTypes.default.any,\n onStepChange: _propTypes.default.func.isRequired,\n isMobile: _propTypes.default.bool.isRequired\n};\nStepContent.defaultProps = {\n meta: null\n};\nfunction AddComponent(_ref2) {\n var _blocklet$meta2, _blocklet$meta3, _blocklet$meta4, _purchaseRef$current, _purchaseRef$current$, _purchaseRef$current2, _purchaseRef$current3;\n let {\n blocklet,\n children\n } = _ref2;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [editingItem, setEditingItem] = (0, _react.useState)(null);\n const [error, setError] = (0, _react.useState)('');\n const [showDialog, setShowDialog] = (0, _react.useState)('');\n const [configs, setConfigs] = (0, _react.useState)([]);\n const {\n api,\n ws: {\n useSubscription\n },\n inService,\n info: nodeInfo\n } = (0, _node.useNodeContext)();\n const [purchaseData, setPurchaseData] = (0, _react.useState)(null);\n const [isWaitingPurchase, setIsWaitingPurchase] = (0, _react.useState)(false);\n const initParams = {\n bundleDid: '',\n componentDid: '',\n componentName: '',\n pathPrefix: '',\n name: '',\n title: '',\n configsList: [],\n configsValue: {},\n hasMissRequiredConfigs: false,\n hasEnvironmentsStep: false,\n hasRequiredEnvironments: false,\n requirePurchase: false,\n installResultProps: {},\n purchaseResultProps: {},\n showFromUrlDialog: false\n };\n const [params, setParams] = (0, _react.useState)(initParams);\n const [activeStep, setActiveStep] = (0, _react.useState)(0);\n const component = (0, _react.useRef)({});\n const stepRef = (0, _react.useRef)({});\n const purchaseRef = (0, _react.useRef)({});\n const isMobile = (0, _useMediaQuery.default)(theme => theme.breakpoints.down('md'));\n const {\n meta\n } = component.current;\n // eslint-disable-next-line no-unused-vars\n const {\n setActiveStepByIndex\n } = stepRef.current || {};\n const isServerlessMode = nodeInfo.mode === _constant2.NODE_MODES.SERVERLESS;\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: !isServerlessMode ? /*#__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 }) : null,\n loading: loading,\n onChange: () => {\n setParams({});\n component.current = {};\n },\n children: _ref6 => {\n let {\n currentRegistry\n } = _ref6;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_storeBlockletList.default, {\n style: isMobile ? {\n // should remove other dom height/margin\n height: 'calc(100vh - 56px - 80px - 32px - 40px )'\n } : {\n height: 'calc(100% - 40px)'\n },\n storeUrl: currentRegistry.url,\n handleButtonClick: chooseParams => {\n setConfigValue({\n chooseParams: _objectSpread(_objectSpread({}, chooseParams), {}, {\n inStore: true // choose from store, must be inStore\n }),\n\n isInit: true\n });\n },\n handleBlockletRender: _ref7 => {\n let {\n blocklet: blockletItem,\n defaultRender\n } = _ref7;\n const isChosen = (params === null || params === void 0 ? void 0 : params.bundleDid) && (params === null || params === void 0 ? void 0 : params.bundleDid) === (blockletItem === null || blockletItem === void 0 ? void 0 : blockletItem.did);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(StoreBlockletItemWrapper, {\n children: [isChosen && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"check-container\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Check.default, {\n className: \"check-icon\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: isChosen ? 'choose-blocklet' : '',\n style: {\n marginLeft: 16\n },\n children: defaultRender\n })]\n });\n },\n extraFilter: allBlocklets => {\n // only use blocklets that are component\n return allBlocklets === null || allBlocklets === void 0 ? void 0 : allBlocklets.filter(x => !!(0, _util.isComponentBlocklet)(x));\n }\n });\n }\n })]\n }),\n cancel: t('common.cancel'),\n confirm: getParamsName(params) ? t('blocklet.component.addNext', {\n name: getParamsName(params)\n }) : t('common.next'),\n onCancel: onClose,\n onConfirm: () => {\n onNext();\n }\n }, {\n key: 'agreement',\n name: t('launchBlocklet.introduction'),\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(TypographyWrapper, {\n component: \"div\",\n className: \"agreement-wrapper\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_pageHeader.default, {\n title: t('launchBlocklet.introduction'),\n subTitle: t('blocklet.component.addComponentTip.introduction')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_agreement.default, {\n meta: meta,\n onClickNext: onNext,\n handleDescEle: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n // eslint-disable-next-line\n dangerouslySetInnerHTML: {\n __html: t(\"blocklet.component.addComponentTip.\".concat(params.requirePurchase ? 'isPurchase' : 'isFree'), {\n name: getComponentName()\n })\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: t('blocklet.component.addComponentTip.belowInformation')\n })]\n })\n })]\n }),\n cancel: t('common.pre'),\n confirm: t('launchBlocklet.next'),\n onCancel: _onCancel,\n onConfirm: () => {\n setIsWaitingPurchase(false);\n onNext();\n }\n }, meta && params.requirePurchase && {\n key: 'purchase',\n name: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [t('common.verifyNFT'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_required.default, {})]\n }),\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(TypographyWrapper, {\n component: \"div\",\n className: \"flex-align-center\",\n style: {\n flexDirection: 'column'\n },\n children: [!(((_purchaseRef$current = purchaseRef.current) === null || _purchaseRef$current === void 0 ? void 0 : (_purchaseRef$current$ = _purchaseRef$current.getCurrentStep) === null || _purchaseRef$current$ === void 0 ? void 0 : _purchaseRef$current$.call(_purchaseRef$current)) === 2 || isWaitingPurchase) && /*#__PURE__*/(0, _jsxRuntime.jsx)(PageHeaderWrapper, {\n title: t('common.verifyNFT'),\n subTitle: t('blocklet.component.addComponentTip.verifyNFT')\n }), !(0, _isEmpty.default)(params.purchaseResultProps) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"flex-align-center flex-justify-center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_launchResultMessage.default, _objectSpread({}, params.purchaseResultProps))\n }) : purchaseData && /*#__PURE__*/(0, _jsxRuntime.jsx)(_purchase.ComponentPurchaseSelect, {\n ref: purchaseRef,\n meta: purchaseData.meta\n // if select deleted history, use verify mode\n ,\n mode: params.componentDid ? 'verify' : 'both',\n onCancel: onCancelPurchase,\n installOpts: purchaseData.installOpts,\n handlePaySuccess: onSuccessPurchase\n })]\n }),\n disabled: ((_purchaseRef$current2 = purchaseRef.current) === null || _purchaseRef$current2 === void 0 ? void 0 : (_purchaseRef$current3 = _purchaseRef$current2.getCurrentStep) === null || _purchaseRef$current3 === void 0 ? void 0 : _purchaseRef$current3.call(_purchaseRef$current2)) === 2 || isWaitingPurchase,\n cancel: t('common.pre'),\n confirm: t('common.next'),\n onConfirm: () => {\n if (typeof purchaseRef.current.onNext === 'function') {\n purchaseRef.current.onNext();\n setIsWaitingPurchase(true);\n }\n },\n onCancel: () => {\n _onCancel();\n }\n }, {\n key: 'config',\n name: t('common.config'),\n error,\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(TypographyWrapper, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(PageHeaderWrapper, {\n title: t('common.config'),\n subTitle: t('blocklet.component.addComponentTip.config')\n }), !!params.bundleDid && !!configs.length && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_TextField.default, {\n select: true,\n label: t('blocklet.component.selectInstance'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"did\",\n helperText: t('blocklet.component.selectInstanceTip'),\n \"data-cy\": \"component-instance-select\",\n fullWidth: true,\n value: params.componentDid || '_empty_',\n onChange: e => {\n setConfigValue({\n componentDid: e.target.value\n });\n },\n style: {\n marginBottom: 32\n },\n margin: \"normal\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: \"_empty_\",\n children: t('blocklet.component.newInstance')\n }, \"_empty_\"), configs.map(x => {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n value: x.meta.did,\n \"data-cy\": x.meta.did,\n children: [x.meta.title, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n style: {\n marginLeft: 8\n },\n children: (0, _util2.formatToDatetime)(x.deletedAt)\n })]\n }, x.meta.did);\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('blocklet.component.mountPoint'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"pathPrefix\",\n inputProps: {\n 'data-cy': 'mount-point-input'\n },\n fullWidth: true,\n helperText: t('blocklet.component.mountPointTip'),\n style: {\n marginBottom: 32\n },\n margin: \"normal\",\n value: params.pathPrefix,\n onChange: e => {\n const pathPrefix = e.target.value;\n updateParams({\n pathPrefix\n });\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.title'),\n autoComplete: \"off\",\n variant: \"outlined\",\n fullWidth: true,\n style: {\n marginBottom: 32\n },\n margin: \"normal\",\n value: params.title,\n helperText: t('blocklet.component.titleTip'),\n onChange: e => {\n const title = e.target.value;\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n title\n }));\n }\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n style: {\n width: '100%',\n marginTop: 8\n },\n children: error\n })]\n }),\n cancel: t('common.pre'),\n confirm: t('common.next'),\n onCancel: _onCancel,\n onConfirm: () => {\n onNext();\n }\n }, meta && (params === null || params === void 0 ? void 0 : params.hasEnvironmentsStep) && {\n key: 'environment',\n name: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [t('common.environment'), \" \", params.hasRequiredEnvironments && /*#__PURE__*/(0, _jsxRuntime.jsx)(_required.default, {})]\n }),\n disabled: !!editingItem || (params === null || params === void 0 ? void 0 : params.hasMissRequiredConfigs),\n body: () => {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(TypographyWrapper, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(PageHeaderWrapper, {\n title: t('common.environment'),\n subTitle: t('blocklet.component.addComponentTip.environment')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_schemaForm.default, {\n style: {\n marginTop: -12,\n width: '100%'\n },\n schema: params.configsList,\n defaultValue: params.configsValue\n // eslint-disable-next-line\n ,\n onChange: (changeValue, _ref8) => {\n let {\n action,\n currentItem,\n allValues\n } = _ref8;\n if (action === 'confirm') {\n updateParams({\n hasMissRequiredConfigs: hasMissRequiredConfigs(params.configsList, allValues),\n configsValue: allValues\n });\n }\n if (action === 'edit') {\n setEditingItem(currentItem);\n } else if (['cancel', 'confirm'].includes(action)) {\n setEditingItem(null);\n }\n }\n })]\n });\n },\n cancel: t('common.pre'),\n confirm: t('common.next'),\n onCancel: _onCancel,\n onConfirm: onNext\n }, {\n key: 'install',\n name: t('common.install'),\n disabled: false,\n loading: false,\n body: /*#__PURE__*/(0, _jsxRuntime.jsx)(TypographyWrapper, {\n component: \"div\",\n className: \"flex-justify-center flex-align-center\",\n style: {\n flexDirection: 'column'\n },\n children: (0, _isEmpty.default)(params.installResultProps) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_AnimationWaiter.default, {\n message: /*#__PURE__*/(0, _jsxRuntime.jsx)(MessageDiv, {\n children: t('blocklet.component.installingCanCloseWindowTip')\n }),\n increaseSpeed: 0.3,\n messageLoop: false\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 120\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_launchResultMessage.default, _objectSpread({}, params.installResultProps))\n })\n }),\n confirm: t('common.complete'),\n // onCancel: onClose,\n onConfirm: () => {\n onClose();\n // scroll to bottom\n setTimeout(() => {\n const scrollDom = document.getElementsByClassName('dashboard-main')[0];\n if (scrollDom) {\n scrollDom.scrollTop = scrollDom.scrollHeight;\n }\n }, 200);\n }\n }].filter(item => item);\n const step = steps[activeStep] || {};\n const onMenuItemClick = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setShowDialog(true);\n };\n const isDisabled = () => {\n if (loading || step.error || !params.bundleDid) {\n return true;\n }\n if (activeStep > 0) {\n return !params.pathPrefix;\n }\n return false;\n };\n\n // show close button when step is not the last one\n const showCloseButton = activeStep < steps.length - 1;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"component-action\",\n \"data-cy\": \"action-add-component\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('blocklet.component.add')]\n }), showDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(DialogWrapper, {\n title: t('blocklet.component.addWithName', {\n name: (0, _util.getDisplayName)(blocklet)\n }),\n maxWidth: false,\n fullWidth: false,\n PaperProps: {\n style: isMobile ? {\n width: '100%',\n height: window.innerHeight\n } : {\n maxWidth: 1350,\n minWidth: 930,\n width: '80%'\n }\n }\n // eslint-disable-next-line no-unused-vars\n ,\n onClose: (event, reason) => {\n var _steps$, _steps$$onCancel;\n // disable backdropClick\n if (reason === 'backdropClick') {\n return;\n }\n (_steps$ = steps[0]) === null || _steps$ === void 0 ? void 0 : (_steps$$onCancel = _steps$.onCancel) === null || _steps$$onCancel === void 0 ? void 0 : _steps$$onCancel.call(_steps$);\n },\n showCloseButton: showCloseButton,\n disableEscapeKeyDown: true,\n open: true,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [step.cancel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n step.onCancel();\n },\n color: \"inherit\",\n children: step.cancel || t('common.cancel')\n }), step.confirm && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n step.onConfirm();\n },\n color: \"primary\",\n \"data-cy\": \"submit-confirm-next\",\n disabled: typeof step.disabled === 'boolean' ? step.disabled : isDisabled(),\n variant: \"contained\",\n autoFocus: true,\n title: step.confirm,\n style: {\n marginLeft: 8,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n maxWidth: '200px',\n display: 'inline-block'\n },\n children: [(typeof step.loading === 'boolean' ? step.loading : loading) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), step.confirm]\n })]\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_step.StepProvider, {\n steps: steps,\n mode: \"memory\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StepContent, {\n ref: stepRef,\n meta: meta,\n isMobile: isMobile,\n onStepChange: newStep => {\n setActiveStep(newStep);\n }\n })\n })\n })]\n });\n}\nAddComponent.propTypes = {\n children: _propTypes.default.any,\n blocklet: _propTypes.default.object.isRequired\n};\nAddComponent.defaultProps = {\n children: null\n};\nconst DialogWrapper = (0, _styled.default)(_Dialog.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiDialogContent-root {\\n padding-left: 0;\\n padding-right: 0;\\n padding-bottom: 0;\\n }\\n .MuiDialogActions-root {\\n padding: 16px 24px;\\n }\\n\"])));\nconst TypographyWrapper = (0, _styled.default)(_Typography.default)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n width: 100%;\\n height: 100%;\\n\"])));\nconst RightContent = _styled.default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n padding: 34px 24px 24px;\\n width: 100%;\\n display: flex;\\n flex-direction: column;\\n justify-content: flex-start;\\n align-items: flex-start;\\n\\n .bottom-button {\\n min-width: 200px;\\n }\\n\\n // blocklet-select-side\\n aside {\\n width: 140px;\\n }\\n\"])));\nconst isMobileDialogContent = props => {\n if (props.isMobile) {\n return \"\\n height: calc(100vh - 56px - 64px - 48px);\\n \";\n }\n return '';\n};\nconst DialogContentWrapper = (0, _styled.default)(_DialogContentText.default)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral([\"\\n \", \"\\n\\n & .flex-justify-center {\\n display: flex;\\n justify-content: center;\\n }\\n\\n & .flex-align-center {\\n display: flex;\\n height: 100%;\\n align-items: center;\\n \", \"\\n }\\n\\n & .agreement-wrapper {\\n \", \"\\n max-height: 60vh;\\n .eula-trigger {\\n padding-right: 0;\\n }\\n .next-button {\\n display: none;\\n }\\n }\\n\\n & .connect {\\n background: white;\\n }\\n\"])), _ref9 => {\n let {\n className\n } = _ref9;\n // mobile extra style\n if (className === 'mobileStyle') {\n return \"\\n & > div{\\n height: 100%;\\n }\\n .root-header {\\n .app-name-content {\\n display: none;\\n }\\n }\\n\\n // content-panel\\n .root-header + div{\\n padding-top: 0;\\n position: relative;\\n & > div {\\n padding-top: 0;\\n }\\n }\\n\\n \";\n }\n return \"\\n height: 72vh;\\n position: relative;\\n .root-header {\\n z-index: auto !important;\\n position: fixed !important;\\n }\\n & > div {\\n height: 100%;\\n width: 100%;\\n max-width: 100%;\\n & > div {\\n max-height: unset !important;\\n max-width: 100%;\\n & > div {\\n // left-panel\\n &:first-child {\\n padding-top: 0;\\n // padding-left: 0;\\n width: 25%;\\n min-width: 240px;\\n & > div:first-child {\\n display: none;\\n }\\n // step\\n & > div:last-child {\\n // margin-top: 32px;\\n margin-top: 0;\\n }\\n }\\n // right-panel\\n &:last-child {\\n padding-top: 0;\\n padding-right: 24px;\\n overflow-y: auto;\\n .app-content {\\n padding: 0 0 24px 0;\\n }\\n .button-container {\\n padding-right: 0;\\n }\\n }\\n }\\n }\\n }\\n\\n \";\n}, props => isMobileDialogContent(props), props => isMobileDialogContent(props));\nconst PageHeaderWrapper = (0, _styled.default)(_pageHeader.default)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([\"\\n margin-bottom: 24px;\\n\"])));\nconst StoreBlockletItemWrapper = _styled.default.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([\"\\n position: relative;\\n\\n .choose-blocklet {\\n background-color: rgb(236, 251, 253);\\n border-color: rgb(236, 251, 253);\\n border-radius: 8px;\\n }\\n\\n .check-container {\\n position: absolute;\\n right: 0;\\n bottom: 0;\\n display: flex;\\n justify-content: flex-end;\\n align-items: flex-end;\\n width: 30px;\\n height: 30px;\\n border-radius: 0 0 8px 0;\\n color: \", \";\\n overflow: hidden;\\n transition: all ease 0.3s;\\n &:after {\\n position: absolute;\\n z-index: 0;\\n display: block;\\n width: 0;\\n height: 0;\\n border-top: transparent solid 15px;\\n border-left: transparent solid 15px;\\n border-bottom: \", \" solid 15px;\\n border-right: \", \" solid 15px;\\n transition: all ease 0.1s;\\n content: '';\\n }\\n\\n .check-icon {\\n position: relative;\\n z-index: 2;\\n margin: 0 1px 1px 0;\\n font-size: 16px;\\n transition: all ease 0.2s;\\n }\\n }\\n\"])), props => props.theme.palette.common.white, props => props.theme.palette.primary.main, props => props.theme.palette.primary.main);\nconst MessageDiv = _styled.default.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([\"\\n color: \", \";\\n .msg-before {\\n display: inline-block;\\n color: #aaa;\\n font-size: 14px;\\n margin-right: 6px;\\n }\\n\"])), props => props.theme.palette.primary.main);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ComponentConfiguration;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Tabs = _interopRequireDefault(require(\"@arcblock/ux/lib/Tabs\"));\nvar _util2 = require(\"../../util\");\nvar _environment = _interopRequireDefault(require(\"./environment\"));\nvar _setting = _interopRequireDefault(require(\"./setting\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ComponentConfiguration(_ref) {\n let {\n blocklet,\n ancestors,\n children\n } = _ref;\n const [showDialog, setShowDialog] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const isRoot = !ancestors.map(x => x.meta.did)[0];\n const isDynamic = blocklet.dynamic;\n const [tab, setTab] = (0, _react.useState)('settings');\n const name = ancestors.concat(blocklet).map(x => (0, _util.getDisplayName)(x, true)).join(' / ');\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n if (blocklet.status === 'unknown' && (0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n const onClose = () => {\n setShowDialog(false);\n };\n const onOpen = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setShowDialog(true);\n };\n const tabConfigs = {\n settings: {\n label: t('blocklet.component.setting'),\n value: 'settings',\n component: /*#__PURE__*/(0, _jsxRuntime.jsx)(_setting.default, {\n blocklet: blocklet,\n ancestors: ancestors\n })\n },\n environments: {\n label: t('common.environment'),\n value: 'environments',\n component: /*#__PURE__*/(0, _jsxRuntime.jsx)(_environment.default, {\n blocklet: blocklet,\n ancestors: ancestors\n })\n }\n };\n const tabs = Object.values(tabConfigs).map(_ref2 => {\n let {\n label,\n value\n } = _ref2;\n return {\n label,\n value\n };\n });\n const onTabChange = newTab => {\n setTab(newTab);\n };\n const tabConfig = tabConfigs[tab] || tabConfigs.settings;\n return [typeof children === 'function' ? children({\n open: onOpen\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: onOpen,\n \"data-cy\": \"action-config-component\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Edit.default, {})\n }), showDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledDialog, {\n open: true,\n fullWidth: true,\n maxWidth: \"md\",\n title: name,\n onClose: onClose,\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n children: isRoot || isDynamic ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: 1,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tabs.default, {\n tabs: tabs,\n current: tab,\n onChange: onTabChange,\n scrollButtons: \"auto\"\n }), tabConfig.component]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_environment.default, {\n blocklet: blocklet,\n ancestors: ancestors\n })\n })];\n}\nComponentConfiguration.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n children: _propTypes.default.any\n};\nComponentConfiguration.defaultProps = {\n ancestors: [],\n children: null\n};\nconst StyledDialog = (0, _styled.default)(_Dialog.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiDialogContent-root {\\n padding-top: 0;\\n margin-top: -32px;\\n }\\n .MuiToolbar-root {\\n padding-right: 12px;\\n }\\n .ux-dialog_right {\\n padding-right: 20px;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DeleteComponent;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Radio = _interopRequireDefault(require(\"@mui/material/Radio\"));\nvar _RadioGroup = _interopRequireDefault(require(\"@mui/material/RadioGroup\"));\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction DeleteComponent(_ref) {\n let {\n component,\n remove,\n disabled,\n tip\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [deleteSetting, setDeleteSetting] = (0, _react.useState)(null);\n const deleteComponent = async param => {\n setLoading(true);\n await remove(param.component, param.removeType);\n setLoading(false);\n setDeleteSetting(null);\n };\n const componentDisabled = disabled || loading;\n const btn = /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledButton, {\n disabled: componentDisabled,\n onClick: () => setDeleteSetting({\n title: t('blocklet.component.delete'),\n // eslint-disable-next-line react/no-unstable-nested-components\n description: (params, setParams) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n gutterBottom: true,\n children: t('blocklet.action.removeComponentDescription')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_RadioGroup.default, {\n name: \"removeType\",\n value: params.removeType,\n onChange: e => setParams(_objectSpread(_objectSpread({}, params), {}, {\n removeType: e.target.value\n })),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n value: \"keepData\",\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),\n label: t('blocklet.action.removeComponentKeepData')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n value: \"complete\",\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.default, {}),\n label: t('blocklet.action.removeComponentComplete')\n })]\n })]\n }),\n confirm: t('common.confirm'),\n cancel: t('common.cancel'),\n params: {\n component,\n removeType: 'keepData'\n },\n onConfirm: deleteComponent,\n onCancel: () => setDeleteSetting(null)\n }),\n \"data-cy\": \"delete-component-btn\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {\n disabled: componentDisabled\n })\n });\n const btnWithToolTip = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: tip || t('common.delete'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: btn\n })\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [btnWithToolTip, deleteSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: deleteSetting.title,\n description: deleteSetting.description,\n confirm: deleteSetting.confirm,\n cancel: deleteSetting.cancel,\n params: deleteSetting.params,\n onConfirm: deleteSetting.onConfirm,\n onCancel: deleteSetting.onCancel\n })]\n });\n}\nDeleteComponent.propTypes = {\n component: _propTypes.default.object.isRequired,\n remove: _propTypes.default.func,\n disabled: _propTypes.default.bool,\n tip: _propTypes.default.string\n};\nDeleteComponent.defaultProps = {\n remove: async () => {},\n disabled: false,\n tip: ''\n};\nconst StyledButton = (0, _styled.default)(_IconButton.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n &.Mui-disabled {\\n opacity: 0.5;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ComponentEnvironment;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _core = _interopRequireDefault(require(\"@material-table/core\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _constant = require(\"@blocklet/constant\");\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _tableIcons = _interopRequireDefault(require(\"../../table-icons\"));\nvar _table = _interopRequireDefault(require(\"../../table\"));\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _util2 = require(\"../../util\");\nvar _icons = _interopRequireDefault(require(\"../icons\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction ComponentEnvironment(_ref) {\n let {\n blocklet,\n ancestors\n } = _ref;\n const node = (0, _node.useNodeContext)();\n const {\n inService\n } = node;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const dids = [...ancestors.map(x => x.meta.did), blocklet.meta.did];\n const onConfigChanged = () => _toast.default.success(t('blocklet.config.changedTip'));\n const isConfigEditable = x => x.custom;\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n if (blocklet.status === 'unknown' && (0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n const onAddConfig = async data => {\n if (!data.key.trim() || !data.value.trim()) {\n _toast.default.error(t('blocklet.config.environment.keyValueRequired'));\n return;\n }\n if (data.key.startsWith('BLOCKLET_') || data.key.startsWith('COMPONENT_')) {\n _toast.default.error(t('blocklet.config.environment.invalidKey'));\n return;\n }\n data.custom = true;\n const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs: [data]\n }\n });\n if (result.code === 'ok') {\n onConfigChanged(result.blocklet);\n }\n };\n const onEditConfig = async (newData, oldData) => {\n // only required field can't be empty\n if (newData.required && (!newData.key.trim() || !newData.value.trim())) {\n _toast.default.error(t('blocklet.config.environment.keyValueRequired'));\n return;\n }\n if (newData.key.startsWith('BLOCKLET_') && !_constant.BLOCKLET_CONFIGURABLE_KEY[newData.key]) {\n _toast.default.error(t('blocklet.config.environment.invalidKey'));\n return;\n }\n if (newData.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE) {\n const errMessage = (0, _util2.isValidClusterSize)(newData);\n if (errMessage) {\n _toast.default.error(errMessage);\n return;\n }\n }\n const configs = [newData];\n if (newData.key !== oldData.key) {\n if (!newData.custom) {\n _toast.default.error('Only key of custom env can be changed');\n return;\n }\n configs.push({\n key: oldData.key,\n custom: true\n });\n }\n try {\n const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs\n }\n });\n if (result.code === 'ok') {\n onConfigChanged(result.blocklet);\n }\n } catch (err) {\n _toast.default.error((0, _util2.formatError)(err));\n }\n };\n const onDeleteConfig = async data => {\n if (data.required) {\n _toast.default.error(t('blocklet.config.environment.deleteForbidden'));\n return;\n }\n if (!data.custom) {\n _toast.default.error('Only key of custom env can be changed');\n return;\n }\n const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs: [{\n key: data.key,\n custom: true\n }]\n }\n });\n if (result.code === 'ok') {\n onConfigChanged(result.blocklet);\n }\n };\n\n // configs\n const componentConfigs = (blocklet.configs || []).filter(x => !_constant.BLOCKLET_CONFIGURABLE_KEY[x.key]);\n const sharedConfigObj = (0, _util.getSharedConfigObj)(blocklet, ancestors);\n const missingRequiredConfigs = (0, _util.getComponentMissingConfigs)(blocklet, ancestors);\n const configs = componentConfigs.map(x => _objectSpread(_objectSpread({}, x), {}, {\n value: sharedConfigObj[x.key] || x.value\n }));\n const hasBWAConfig = configs.some(x => x.key && x.key.startsWith('BWA_'));\n const action = {\n onRowAdd: onAddConfig,\n onRowUpdate: onEditConfig,\n onRowDelete: onDeleteConfig,\n // environment declare in blocklet.yml can't be deleted, only custom env can be deleted\n isDeletable: isConfigEditable\n };\n const onColumns = () => [{\n title: t('common.key'),\n field: 'key',\n initialEditValue: 'Key',\n width: '30%',\n render: d => /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n value: d.value,\n style: {\n color: d.required && !d.value ? '#ff4436' : '#222222',\n fontWeight: d.required ? 'bold' : 'normal'\n },\n children: d.key\n }),\n editComponent: props => {\n const {\n value,\n rowData,\n onChange: _onChange\n } = props;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(EditDiv, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n size: \"small\",\n disabled: isConfigEditable(rowData) === false,\n value: value,\n onChange: e => _onChange(e.target.value),\n variant: \"outlined\",\n label: \"Key\",\n placeholder: t('blocklet.config.environment.key'),\n margin: \"dense\",\n autoFocus: true\n })\n });\n }\n }, {\n title: t('common.value'),\n field: 'value',\n initialEditValue: 'Value',\n width: 'calc((100% - (96px + 30%)) / 1)',\n render: d => {\n if (d.secure) {\n return '******';\n }\n if (!d.value) {\n return null;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n unstyled: true,\n value: d.value,\n style: {\n wordBreak: 'break-all'\n },\n children: d.value\n });\n },\n // eslint-disable-next-line no-shadow\n editComponent: props => {\n const {\n value,\n rowData,\n onChange: _onChange2\n } = props;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(EditDiv, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n size: \"small\",\n value: value === '__encrypted__' ? '' : value,\n onChange: e => _onChange2(e.target.value),\n variant: \"outlined\",\n label: t('common.value'),\n placeholder: t('blocklet.config.environment.value'),\n margin: \"dense\",\n autoFocus: true\n }), rowData.description && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginLeft: 12\n },\n children: rowData.description\n })]\n });\n }\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [!!missingRequiredConfigs.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"error\",\n style: {\n marginTop: 24\n },\n children: t('blocklet.config.missingRequired')\n }), hasBWAConfig && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"info\",\n children: t('blocklet.config.environment.tip')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_blocklets',\n role: inService ? _util2.BlockletAdminRoles : [],\n children: hasPermission => /*#__PURE__*/(0, _jsxRuntime.jsx)(_table.default, {\n className: (0, _util2.isBlockletDev)(blocklet) ? 'readonly-block config-table' : 'config-table',\n \"data-disabled-text\": t('blocklet.config.disabledText'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_core.default, {\n title: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"h4\", {\n children: t('common.environment')\n }),\n columns: onColumns(),\n icons: _objectSpread(_objectSpread({}, _icons.default), _tableIcons.default),\n options: {\n emptyRowsWhenPaging: false,\n actionsColumnIndex: -1,\n tableLayout: 'auto',\n maxBodyHeight: '100%',\n paging: false,\n search: false\n },\n localization: {\n header: {\n actions: t('common.actions')\n },\n body: {\n emptyDataSourceMessage: t('common.noData')\n }\n },\n data: configs,\n editable: hasPermission ? action : {}\n })\n })\n })]\n });\n}\nComponentEnvironment.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array\n};\nComponentEnvironment.defaultProps = {\n ancestors: []\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .readonly-block {\\n position: relative;\\n &::after {\\n content: attr(data-disabled-text);\\n position: absolute;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n background-color: rgba(230, 230, 230, 0.7);\\n font-size: 24px;\\n letter-spacing: 2px;\\n color: #e33371;\\n padding: 20px;\\n word-break: break-all;\\n word-wrap: break-word;\\n z-index: 10;\\n }\\n }\\n .config-table {\\n margin-bottom: 24px;\\n position: relative;\\n .hide-control {\\n position: absolute;\\n top: 10px;\\n left: 200px;\\n @media (max-width: \", \"px) {\\n left: 160px;\\n }\\n }\\n\\n .MuiToolbar-root {\\n display: flex;\\n }\\n\\n .MuiTableRow-head {\\n display: none;\\n }\\n\\n &.hide-header {\\n .MuiToolbar-root {\\n display: none;\\n }\\n }\\n }\\n\\n .accordion {\\n margin-bottom: 16px;\\n &:last-of-type {\\n margin-bottom: 0;\\n }\\n padding: 8px 0 8px 0px;\\n &.MuiAccordion-root {\\n background: transparent;\\n box-shadow: none;\\n border: 1px solid #ddd;\\n border-radius: 4px;\\n &::before,\\n &::after {\\n height: 0;\\n }\\n .MuiAccordionSummary-root {\\n padding-left: 0;\\n }\\n .accordion-title {\\n font-weight: bold;\\n padding-left: 16px;\\n }\\n }\\n }\\n\"])), props => props.theme.breakpoints.values.sm);\nconst EditDiv = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n height: 60px;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _last = _interopRequireDefault(require(\"lodash/last\"));\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _useAsync = _interopRequireDefault(require(\"react-use/lib/useAsync\"));\nvar _RelativeTime = _interopRequireDefault(require(\"@arcblock/ux/lib/RelativeTime\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@mui/material/Button\"));\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction Expiration(_ref) {\n var _state$value, _state$value$data, _state$value$data$val;\n let {\n controller\n } = _ref;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const state = (0, _useAsync.default)(async () => (0, _util.getAsset)(controller.chainHost, controller.nftId));\n if (state.loading) {\n return '';\n }\n const expirationDate = (0, _last.default)((0, _get.default)(state.value, 'data.value.expirationDate', []));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_RelativeTime.default, {\n value: expirationDate,\n locale: locale\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n style: {\n marginLeft: '5px'\n },\n variant: \"contained\",\n component: _Link.default,\n href: (0, _urlJoin.default)((_state$value = state.value) === null || _state$value === void 0 ? void 0 : (_state$value$data = _state$value.data) === null || _state$value$data === void 0 ? void 0 : (_state$value$data$val = _state$value$data.value) === null || _state$value$data$val === void 0 ? void 0 : _state$value$data$val.launcherUrl, \"/instances/\".concat(controller.nftId, \"/renewal?locale=\").concat(locale, \"&return-url=\").concat(encodeURIComponent(window.location.href))),\n children: t('common.renew')\n })]\n });\n}\nExpiration.propTypes = {\n controller: _propTypes.default.object.isRequired\n};\nvar _default = Expiration;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletComponent;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _semver = _interopRequireDefault(require(\"semver\"));\nvar _Dialog = _interopRequireDefault(require(\"@mui/material/Dialog\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _DialogContent = _interopRequireDefault(require(\"@mui/material/DialogContent\"));\nvar _DialogTitle = _interopRequireDefault(require(\"@mui/material/DialogTitle\"));\nvar _DialogActions = _interopRequireDefault(require(\"@mui/material/DialogActions\"));\nvar _Update = _interopRequireDefault(require(\"@mui/icons-material/Update\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Badge = _interopRequireDefault(require(\"@mui/material/Badge\"));\nvar _SettingsOutlined = _interopRequireDefault(require(\"@mui/icons-material/SettingsOutlined\"));\nvar _InfoOutlined = _interopRequireDefault(require(\"@mui/icons-material/InfoOutlined\"));\nvar _Launch = _interopRequireDefault(require(\"@mui/icons-material/Launch\"));\nvar _Grid = _interopRequireDefault(require(\"@mui/material/Grid\"));\nvar _Collapse = _interopRequireDefault(require(\"@mui/material/Collapse\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _ArrowForward = _interopRequireDefault(require(\"@mui/icons-material/ArrowForward\"));\nvar _ExpandMore = _interopRequireDefault(require(\"@mui/icons-material/ExpandMore\"));\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _deletingBlocklets = require(\"../../contexts/deleting-blocklets\");\nvar _didAddress = _interopRequireDefault(require(\"../../did-address\"));\nvar _tag = _interopRequireDefault(require(\"../../tag\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _blockletSource = _interopRequireDefault(require(\"../blocklet-source\"));\nvar _status = _interopRequireDefault(require(\"../status\"));\nvar _version = _interopRequireDefault(require(\"../version\"));\nvar _node = require(\"../../contexts/node\");\nvar _util2 = require(\"../../util\");\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _bundleAvatar = _interopRequireDefault(require(\"../bundle-avatar\"));\nvar _mode = _interopRequireDefault(require(\"../mode\"));\nvar _configuration = _interopRequireDefault(require(\"./configuration\"));\nvar _delete = _interopRequireDefault(require(\"./delete\"));\nvar _line = _interopRequireDefault(require(\"./line\"));\nvar _add = _interopRequireDefault(require(\"./add\"));\nvar _addRule = _interopRequireDefault(require(\"../router/action/add-rule\"));\nvar _ruleList = _interopRequireDefault(require(\"../router/rule-list\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\", \"onUpdate\", \"getComponentUrl\"];\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst getEngineRows = (engine, t) => {\n if (!engine) {\n return [];\n }\n return [{\n name: t('common.name'),\n value: engine.displayName\n }, {\n name: t('common.description'),\n value: engine.description\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, {\n children: engine.version\n })\n }];\n};\nconst getSourceInfo = blocklet => {\n const {\n source,\n deployedFrom,\n bundleSource\n } = blocklet;\n if (source) {\n return {\n source,\n deployedFrom\n };\n }\n if (!bundleSource) {\n return {\n source: 'upload',\n deployedFrom\n };\n }\n if (bundleSource.url) {\n return {\n source: 'url',\n deployedFrom: deployedFrom || Array.isArray(bundleSource.url) ? bundleSource.url[0] : bundleSource.url\n };\n }\n if (bundleSource.store) {\n return {\n source: 'registry',\n deployedFrom: deployedFrom || Array.isArray(bundleSource.store) ? bundleSource.store[0] : bundleSource.store\n };\n }\n return {};\n};\nfunction ComponentItem(_ref) {\n var _blocklet$children;\n let {\n blocklet,\n ancestors,\n depth,\n onRemove,\n getComponentUrl\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [expand, setExpand] = (0, _react.useState)(true);\n const [componentInfo, setComponentInfo] = (0, _react.useState)();\n const {\n deletingBlocklets: deletingComponents\n } = (0, _deletingBlocklets.useDeletingBlockletContext)();\n let {\n status\n } = blocklet;\n if (depth <= 1 && deletingComponents.includes(blocklet.meta.did)) {\n status = 'deleting';\n }\n const mountPoint = \"/\".concat(ancestors.slice(1) // ignore mountPoint of root component\n .map(x => x.mountPoint || '/').join('/'), \"/\").concat(blocklet.mountPoint || '/').replace(/\\/+/g, '/');\n\n // hide root's status and only display specific status\n const showStatus = !!ancestors.length && ['downloading', 'deleting', 'starting'].includes(status);\n const canExpand = depth > 0 && blocklet.children.length > 0;\n const expandIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n size: \"small\",\n children: expand ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {\n fontSize: \"inherit\"\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChevronRight.default, {\n fontSize: \"inherit\"\n })\n });\n const root = ancestors[0] || blocklet;\n const href = getComponentUrl(mountPoint);\n const renderRows = rows => rows.map(row => {\n if (row.name === t('common.did') || row.name === t('blocklet.appId')) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n nameFormatter: () => row.name,\n children: row.value\n }, row.name);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n children: row.value\n }, row.name);\n });\n const sourceInfo = componentInfo ? getSourceInfo(componentInfo) : {};\n const componentRows = componentInfo ? [{\n name: t('common.name'),\n value: (0, _util.getDisplayName)(componentInfo, true)\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_version.default, {\n blocklet: componentInfo,\n checkUpgrade: false\n })\n }, {\n name: t('common.status'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_status.default, {\n status: status,\n source: componentInfo.source\n })\n }, {\n name: t('common.mountPoint'),\n value: mountPoint\n }, {\n name: t('common.group'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, {\n type: \"success\",\n children: componentInfo.meta.group\n })\n }, {\n name: t('blocklet.overview.source'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockletSource.default, {\n sourceInfo: sourceInfo,\n blocklet: blocklet\n })\n }, {\n name: t('blocklet.overview.deployedFrom'),\n value: sourceInfo.deployedFrom || '-'\n }, {\n name: t('common.did'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: componentInfo.meta.did\n })\n }, {\n name: t('common.author'),\n value: (0, _util2.formatPerson)(componentInfo.meta.author)\n }, {\n name: t('common.engine'),\n value: getEngineRows(componentInfo.engine, t).map(_ref2 => {\n let {\n name,\n value\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n style: {\n marginBottom: 4\n },\n nameWidth: 120,\n name: name,\n children: value\n }, name);\n })\n }].filter(Boolean) : [];\n let deleteDisabledTip = '';\n if (depth !== 1 || !blocklet.dynamic) {\n deleteDisabledTip = t('blocklet.component.tip.notDynamic');\n } else if ((0, _util2.isInProgress)(root.status) || depth === 1 && deletingComponents.includes(blocklet.meta.did)) {\n deleteDisabledTip = t('blocklet.component.tip.stopBlocklet');\n }\n return [(depth > 0 || blocklet.meta.group !== 'gateway') && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n py: 2,\n className: \"component-item\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n pl: Math.max((depth - 1) * 2, 0),\n width: {\n xs: 300,\n md: 400\n },\n display: \"flex\",\n alignItems: \"center\",\n style: {\n cursor: canExpand ? 'pointer' : 'cursor'\n },\n onClick: () => canExpand && setExpand(!expand),\n children: [canExpand ? expandIcon : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n width: 28\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_bundleAvatar.default, {\n blocklet: blocklet,\n ancestors: ancestors\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n ml: \"16px\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n style: {\n color: '#222',\n fontSize: 18\n },\n children: (0, _util.getDisplayName)(blocklet, true)\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_version.default, {\n blocklet: blocklet,\n checkUpgrade: false\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_mode.default, {\n style: {\n marginLeft: 4\n },\n mode: blocklet.mode || ''\n }), showStatus && /*#__PURE__*/(0, _jsxRuntime.jsx)(_status.default, {\n style: {\n marginLeft: 4\n },\n status: status,\n source: blocklet.source\n })]\n })]\n })]\n }, blocklet), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n sx: {\n display: {\n xs: 'none',\n md: 'flex'\n }\n },\n alignItems: \"center\",\n flexGrow: \"1\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n title: href,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n maxWidth: 400,\n sx: {\n color: 'secondary.main',\n fontSize: 18,\n px: 2\n },\n overflow: \"hidden\",\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n children: mountPoint\n })\n })\n }, mountPoint), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.visit'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Launch.default, {})\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.overview'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => setComponentInfo(blocklet),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoOutlined.default, {})\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_configuration.default, {\n blocklet: blocklet,\n ancestors: ancestors,\n children: _ref3 => {\n let {\n open\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.config'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledBadge, {\n color: \"error\",\n badgeContent: \"\",\n variant: \"dot\",\n invisible: !(0, _util.getComponentMissingConfigs)(blocklet, ancestors).length,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: open,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsOutlined.default, {})\n })\n })\n }, \"config\");\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_delete.default, {\n blocklet: root,\n component: blocklet,\n remove: onRemove,\n disabled: !!deleteDisabledTip,\n tip: deleteDisabledTip\n })]\n }, \"actions\")]\n }, \"group-not-gateway-box\"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_line.default, {\n depth: depth\n }), (_blocklet$children = blocklet.children) !== null && _blocklet$children !== void 0 && _blocklet$children.length ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Collapse.default, {\n in: expand,\n children: blocklet.children.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentItem, {\n blocklet: x,\n ancestors: [...ancestors, blocklet],\n depth: depth + 1,\n onRemove: onRemove,\n getComponentUrl: getComponentUrl\n }, \"\".concat(depth + 1, \"-\").concat(x.meta.did)))\n }, \"blocklet-collapse\") : null, !!componentInfo && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n open: true,\n fullWidth: true,\n maxWidth: \"md\",\n onClose: () => {\n setComponentInfo(null);\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n paddingY: 1.5,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogTitle.default, {\n children: t('common.componentBasicInfo')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContent.default, {\n children: renderRows(componentRows)\n })]\n }, \"dialog-wrapper\")\n }, \"base-info-dialog\")];\n}\nComponentItem.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n depth: _propTypes.default.number,\n onRemove: _propTypes.default.func,\n getComponentUrl: _propTypes.default.func\n};\nComponentItem.defaultProps = {\n ancestors: [],\n depth: 0,\n onRemove: () => {},\n getComponentUrl: () => window.location.origin\n};\nconst StyledBadge = (0, _styled.default)(_Badge.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .BaseBadge-badge {\\n top: \", \"px;\\n right: \", \"px;\\n }\\n\"])), props => props.top * 8 || 6, props => props.right * 8 || 6);\nfunction BlockletComponent(_ref4) {\n var _blocklet$meta;\n let {\n blocklet,\n onUpdate,\n getComponentUrl\n } = _ref4,\n rest = _objectWithoutProperties(_ref4, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const {\n api,\n inService\n } = (0, _node.useNodeContext)();\n const {\n addDeletingDid,\n removeDeletingDid,\n matchDeletingDid\n } = (0, _deletingBlocklets.useDeletingBlockletContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [updateConfirm, setUpdateConfirm] = (0, _react.useState)(null);\n const [showUpdateDot, setShowUpdateDot] = (0, _react.useState)(false);\n const components = [...blocklet.children] || [];\n if (blocklet.meta.group !== 'gateway') {\n // add root blocklet to table list\n components.unshift(blocklet);\n }\n matchDeletingDid(components.map(e => e.meta.did));\n (0, _react.useEffect)(() => {\n if (blocklet && !(0, _util2.isInProgress)(blocklet.status)) {\n api.getLatestBlockletVersion({\n input: {\n did: blocklet.meta.did,\n version: blocklet.meta.version\n }\n }).then(res => {\n const {\n version\n } = res.data || {};\n if (version && _semver.default.gt(version, blocklet.meta.version)) {\n setShowUpdateDot(true);\n }\n }).catch(err => {\n console.error(err.message);\n });\n }\n }, [blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.did]); // eslint-disable-line\n\n const checkForUpdates = async () => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n // check app version\n const {\n version,\n registryUrl\n } = (await api.getLatestBlockletVersion({\n input: {\n did: blocklet.meta.did,\n version: blocklet.meta.version\n }\n })).data || {};\n if (version && _semver.default.gt(version, blocklet.meta.version)) {\n setUpdateConfirm({\n type: 'app',\n params: {\n version,\n registryUrl\n },\n list: [{\n name: (0, _util.getDisplayName)(blocklet),\n version: blocklet.meta.version,\n newVersion: version\n }]\n });\n setLoading(false);\n return;\n }\n\n // check child component version\n const {\n updateId,\n updateList\n } = (await api.checkComponentsForUpdates({\n input: {\n did: blocklet.meta.did\n }\n })).preUpdateInfo || {};\n setLoading(false);\n if (!updateId) {\n _toast.default.info(t('blocklet.component.noUpdate'));\n return;\n }\n const list = [];\n (0, _util.forEachChildSync)(blocklet, (b, _ref5) => {\n let {\n id,\n ancestors\n } = _ref5;\n const updateItem = updateList.find(x => x.id === id);\n if (updateItem) {\n const name = ancestors.slice(1).concat(b).map(x => x.meta.title || x.meta.name).join(' / ');\n\n // groupId 为一级组件的 id\n const groupId = (ancestors[1] || b).meta.did;\n list.push({\n groupId,\n name,\n version: b.meta.version,\n newVersion: updateItem.meta.version\n });\n }\n });\n const checks = {};\n list.forEach(x => {\n if (!checks[x.groupId]) {\n checks[x.groupId] = true;\n } else {\n x.disabled = true;\n }\n });\n setUpdateConfirm({\n type: 'component',\n params: {\n updateId\n },\n list,\n checks,\n hasChecks: true\n });\n } catch (err) {\n setLoading(false);\n _toast.default.error((0, _util2.formatError)(err));\n }\n };\n const onConfirmUpdate = async () => {\n if (loading) {\n return;\n }\n let fn;\n let input;\n if (updateConfirm.type === 'app') {\n fn = api.upgradeBlocklet.bind(api);\n input = {\n did: blocklet.meta.did,\n version: updateConfirm.params.version,\n storeUrl: updateConfirm.params.registryUrl || ''\n };\n } else {\n fn = api.upgradeComponents.bind(api);\n const selectedComponents = Object.keys(updateConfirm.checks).filter(x => updateConfirm.checks[x]);\n input = {\n updateId: updateConfirm.params.updateId,\n rootDid: blocklet.meta.did,\n selectedComponents\n };\n }\n try {\n setLoading(true);\n await fn({\n input\n });\n setLoading(false);\n setUpdateConfirm(null);\n setShowUpdateDot(null);\n } catch (error) {\n setLoading(false);\n _toast.default.error((0, _util2.formatError)(error));\n }\n };\n const removeComponent = async (d, type) => {\n addDeletingDid(d.meta.did);\n try {\n await api.deleteComponent({\n input: {\n did: d.meta.did,\n keepData: type === 'keepData',\n rootDid: blocklet.meta.did\n }\n });\n await (0, _util2.sleep)(800);\n } catch (err) {\n _toast.default.error((0, _util2.formatError)(err));\n removeDeletingDid(d.meta.did);\n }\n };\n const onUpdateChecksChange = (e, groupId) => {\n const {\n checked: newValue\n } = e.target;\n setUpdateConfirm(x => {\n const checks = Object.entries(x.checks).reduce((o, _ref6) => {\n let [key, oldValue] = _ref6;\n o[key] = groupId === key ? newValue : oldValue;\n return o;\n }, {});\n const hasChecks = Object.values(checks).includes(true);\n return _objectSpread(_objectSpread({}, x), {}, {\n checks,\n hasChecks\n });\n });\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"title\",\n children: [t('common.components'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_blocklets',\n role: inService ? _util2.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledBadge, {\n top: 1.2,\n right: 0.4,\n color: \"error\",\n badgeContent: \"\",\n variant: \"dot\",\n invisible: !showUpdateDot,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n disabled: loading || (0, _util2.isInProgress)(blocklet.status),\n color: \"secondary\",\n onClick: () => {\n checkForUpdates();\n },\n \"data-cy\": \"check-for-updates\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mr: 0.5,\n display: \"flex\",\n children: loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Update.default, {\n style: {\n fontSize: '1em'\n }\n })\n }), t('blocklet.component.checkUpdateTitle')]\n })\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_blocklets',\n role: inService ? _util2.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_addRule.default, {\n children: _ref7 => {\n let {\n open\n } = _ref7;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n disabled: loading || (0, _util2.isInProgress)(blocklet.status),\n variant: \"text\",\n color: \"primary\",\n \"data-cy\": \"add-rule\",\n onClick: open,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: '1.3em',\n marginRight: 4\n }\n }), t('router.rule.add.title')]\n });\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_add.default, {\n blocklet: blocklet,\n children: _ref8 => {\n let {\n open\n } = _ref8;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n disabled: loading || (0, _util2.isInProgress)(blocklet.status),\n variant: \"text\",\n color: \"primary\",\n \"data-cy\": \"add-component\",\n onClick: open,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: '1.3em',\n marginRight: 4\n }\n }), t('blocklet.component.add')]\n });\n }\n })]\n })\n })]\n }), components && components.length ? [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 2,\n ml: {\n xs: '-12px',\n md: '-24px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentItem, {\n blocklet: blocklet,\n onRemove: removeComponent,\n getComponentUrl: getComponentUrl\n }, \"0-\".concat(blocklet.meta.did))\n }, \"top-blocklet-\".concat(blocklet.meta.did))] : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 8,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('blocklet.component.noComponent')\n })\n }), !!blocklet.site.rules.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 0,\n ml: {\n xs: '-16px',\n md: '-28px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ruleList.default, {})\n }), !!updateConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n open: true,\n fullWidth: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n paddingY: 1.5,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogTitle.default, {\n children: updateConfirm.type === 'component' ? t('blocklet.component.updateTitle') : t('blocklet.component.updateAppTitle')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n component: _DialogContent.default,\n py: 4,\n ml: updateConfirm.type === 'component' ? 0 : 4,\n children: updateConfirm.list.map(x => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [updateConfirm.type === 'component' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Checkbox.default, {\n checked: updateConfirm.checks[x.groupId],\n onChange: e => onUpdateChecksChange(e, x.groupId),\n style: {\n marginLeft: x.disabled ? 16 : 0\n },\n defaultChecked: true,\n disabled: x.disabled\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n flexGrow: 1,\n mt: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n item: true,\n xs: 8,\n children: x.name\n }), x.version && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Grid.default, {\n fontSize: \"h6.fontSize\",\n container: true,\n spacing: 2,\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 3,\n children: x.version\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ArrowForward.default, {\n style: {\n fontSize: '0.9em'\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 3,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n color: \"secondary.main\",\n children: x.newVersion\n })\n })]\n })]\n }, \"\".concat(x.name, \"-\").concat(x.newVersion))]\n }))\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_DialogActions.default, {\n style: {\n padding: '8px 24px 24px'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: () => {\n setUpdateConfirm(null);\n },\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n onConfirmUpdate();\n },\n color: \"primary\",\n disabled: loading || updateConfirm.type === 'component' && !updateConfirm.hasChecks,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.update')]\n })]\n })]\n })\n })]\n }));\n}\nBlockletComponent.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n onUpdate: _propTypes.default.func,\n getComponentUrl: _propTypes.default.func\n};\nBlockletComponent.defaultProps = {\n onUpdate: () => {},\n getComponentUrl: () => window.location.origin\n};\nconst Div = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n .title {\\n font-size: 1.2rem;\\n font-weight: bold;\\n margin-bottom: \", \";\\n }\\n\\n @keyframes showDelay {\\n 0% {\\n opacity: 0;\\n }\\n\\n 100% {\\n opacity: 1;\\n }\\n }\\n\\n .component-item {\\n animation: showDelay 0.75s ease 1;\\n }\\n\"])), props => props.theme.spacing(1));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Line;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction Line(_ref) {\n let {\n depth\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: Math.max((depth - 1) * 2, 0),\n sx: {\n borderBottom: 1,\n borderColor: 'rgba(0,0,0,0.12)'\n }\n }, \"group-collapse-box\");\n}\nLine.propTypes = {\n depth: _propTypes.default.number\n};\nLine.defaultProps = {\n depth: 1\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _ahooks = require(\"ahooks\");\nvar _lodash = require(\"lodash\");\nvar _react = require(\"react\");\nvar _react2 = require(\"@iconify/react\");\nvar _material = require(\"@mui/material\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _simpleSelect = _interopRequireDefault(require(\"./simple-select\"));\nvar _locales = _interopRequireDefault(require(\"../../../util/locales\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n/* eslint-disable react/jsx-no-bind */\n\nconst defaultLocale = 'en';\nfunction LocaleTabs(_ref) {\n let {\n sx,\n onChange,\n locales,\n onRemoveLocale\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const inputRef = (0, _react.useRef)();\n const [addLocaleButtonEl, setAddLocaleButtonEl] = (0, _react.useState)(null);\n const state = (0, _ahooks.useReactive)({\n currentLocale: defaultLocale,\n localeList: [],\n inputLocale: '',\n localeError: ''\n });\n const openChooseLocale = (0, _react.useMemo)(() => {\n return !!addLocaleButtonEl;\n }, [addLocaleButtonEl]);\n const localeOptions = (0, _react.useMemo)(() => {\n return Object.keys((0, _lodash.omit)(_locales.default, [...state.localeList, defaultLocale])).map(locale => ({\n title: _locales.default[locale],\n value: locale\n }));\n }, [state.localeList]);\n (0, _react.useEffect)(() => {\n onChange(state.currentLocale);\n }, [onChange, state.currentLocale]);\n (0, _react.useEffect)(() => {\n state.localeList = [...locales];\n }, [locales, state]);\n (0, _ahooks.useKeyPress)('enter', () => {\n // HACK: 必须加一个延时,否则无法正确关闭 chooseLocale 弹窗\n setTimeout(() => {\n handleAddLocale();\n });\n }, {\n target: inputRef\n });\n function checkLocale(locale) {\n if (!locale) {\n return t('common.requiredErrorText', {\n name: 'Locale'\n });\n }\n if (locale === 'en' || state.localeList.includes(locale)) {\n return t('navigation.form.localeExists', {\n value: locale\n });\n }\n return true;\n }\n function checkValidLocale() {\n let locale = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n const value = locale === null || locale === void 0 ? void 0 : locale.trim();\n const checkResult = checkLocale(value);\n if (checkResult !== true) {\n state.localeError = checkResult;\n } else {\n state.localeError = '';\n }\n return checkResult;\n }\n function handleAddLocale() {\n var _state$inputLocale;\n const value = (_state$inputLocale = state.inputLocale) === null || _state$inputLocale === void 0 ? void 0 : _state$inputLocale.trim();\n const checkResult = checkValidLocale(value);\n if (checkResult === true) {\n close();\n state.localeList.push(value);\n state.currentLocale = value;\n }\n }\n function close() {\n setAddLocaleButtonEl(null);\n state.inputLocale = '';\n state.localeError = '';\n }\n function handleRemoveLocale(e, locale) {\n e.preventDefault();\n e.stopPropagation();\n state.localeList = (0, _lodash.without)(state.localeList, locale);\n onRemoveLocale(locale);\n if (locale === state.currentLocale) {\n state.currentLocale = defaultLocale;\n }\n }\n function handleChangeLocale(e) {\n const {\n value\n } = e.target;\n checkValidLocale(value);\n state.inputLocale = value;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Tabs, {\n sx: sx,\n value: state.currentLocale,\n onChange: (e, value) => {\n state.currentLocale = value;\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tab, {\n label: \"Default (\".concat(_locales.default[defaultLocale], \")\"),\n value: \"en\"\n }), state.localeList.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tab, {\n sx: {\n position: 'relative'\n },\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [_locales.default[item], /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n size: \"small\",\n color: \"inherit\",\n sx: {\n position: 'absolute',\n top: 0,\n right: 0\n },\n onClick: e => {\n handleRemoveLocale(e, item);\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"mdi:close\",\n height: 14\n })\n })]\n }),\n value: item\n }, item)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n color: \"primary\",\n disableFocusRipple: true,\n sx: {\n width: '48px'\n },\n onClick: e => {\n setAddLocaleButtonEl(e.currentTarget);\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"mdi:plus\"\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Popover, {\n open: openChooseLocale,\n anchorEl: addLocaleButtonEl,\n onClose: close,\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'left'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n sx: {\n p: 2,\n width: '270px'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"subtitle2\",\n children: t('navigation.form.localePlaceholder')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n mt: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_simpleSelect.default, {\n required: true,\n fullWidth: true,\n label: \"Locale\",\n value: state.inputLocale,\n options: localeOptions,\n onChange: handleChangeLocale,\n error: !!state.localeError,\n helperText: state.localeError || ' '\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n display: \"flex\",\n justifyContent: \"flex-end\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Button, {\n size: \"small\",\n variant: \"contained\",\n onClick: handleAddLocale,\n children: t('common.confirm')\n })\n })]\n })\n })]\n });\n}\nLocaleTabs.propTypes = {\n sx: _propTypes.default.any,\n onChange: _propTypes.default.func,\n onRemoveLocale: _propTypes.default.func,\n locales: _propTypes.default.array\n};\nLocaleTabs.defaultProps = {\n sx: null,\n onChange: () => {},\n onRemoveLocale: () => {},\n locales: []\n};\nvar _default = LocaleTabs;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _react = require(\"@iconify/react\");\nvar _material = require(\"@mui/material\");\nvar _react2 = require(\"react\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction NavigationActions(_ref) {\n let {\n className,\n add,\n edit,\n toggle,\n del,\n data,\n section\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const isDisabled = ['yaml', 'tmpl'].includes(data.from);\n const isUninstalled = /*#__PURE__*/(0, _react2.isValidElement)(data.subtitle);\n function handleClick(e) {\n e.preventDefault();\n e.stopPropagation();\n }\n const handleClickAdd = (0, _react2.useCallback)(e => {\n handleClick(e);\n add(data);\n }, [add, data]);\n const handleClickEdit = (0, _react2.useCallback)(e => {\n handleClick(e);\n edit(data);\n }, [edit, data]);\n const handleClickToggle = (0, _react2.useCallback)(e => {\n handleClick(e);\n toggle(data);\n }, [toggle, data]);\n const handleClickDelete = (0, _react2.useCallback)(e => {\n handleClick(e);\n del(data);\n }, [del, data]);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: className,\n children: [!data.parent && ['header', 'footer', 'dashboard'].includes(section) && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n title: isUninstalled ? t('navigation.action.noAddSub') : t('navigation.action.addSub'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n size: \"small\",\n color: \"success\",\n onClick: handleClickAdd,\n disabled: isUninstalled,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:plus-box-outline\"\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n title: isUninstalled ? t('navigation.action.noEdit') : t('navigation.action.edit'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n size: \"small\",\n color: \"primary\",\n onClick: handleClickEdit,\n disabled: isUninstalled,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:pencil\"\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n title:\n // eslint-disable-next-line no-nested-ternary\n isUninstalled ? t('navigation.action.noEdit') : data.visible ? t('navigation.action.hide') : t('navigation.action.show'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n size: \"small\",\n color: \"warning\",\n onClick: handleClickToggle,\n disabled: isUninstalled,\n children: data.visible === false ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:eye-off-outline\"\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:eye-outline\"\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n title: isDisabled && !isUninstalled ? t('navigation.action.noDel') : t('navigation.action.del'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n disabled: isDisabled && !isUninstalled,\n size: \"small\",\n color: \"error\",\n onClick: handleClickDelete,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Icon, {\n icon: \"mdi:delete\"\n })\n })\n })]\n });\n}\nNavigationActions.propTypes = {\n data: _propTypes.default.object.isRequired,\n className: _propTypes.default.string,\n add: _propTypes.default.func,\n edit: _propTypes.default.func,\n toggle: _propTypes.default.func,\n del: _propTypes.default.func,\n section: _propTypes.default.string\n};\nNavigationActions.defaultProps = {\n className: '',\n add: () => {},\n edit: () => {},\n toggle: () => {},\n del: () => {},\n section: ''\n};\nvar _default = NavigationActions;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _material = require(\"@mui/material\");\nvar _ahooks = require(\"ahooks\");\nvar _omit = _interopRequireDefault(require(\"lodash/omit\"));\nvar _pick = _interopRequireDefault(require(\"lodash/pick\"));\nvar _values = _interopRequireDefault(require(\"lodash/values\"));\nvar _without = _interopRequireDefault(require(\"lodash/without\"));\nvar _isEmpty = _interopRequireDefault(require(\"lodash/isEmpty\"));\nvar _isString = _interopRequireDefault(require(\"lodash/isString\"));\nvar _isObject = _interopRequireDefault(require(\"lodash/isObject\"));\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _react = require(\"react\");\nvar _reactHookForm = require(\"react-hook-form\");\nvar _react2 = require(\"@iconify/react\");\nvar _notistack = require(\"notistack\");\nvar _parseNavigationFromBlocklet = require(\"@blocklet/meta/lib/parse-navigation-from-blocklet\");\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _index = require(\"ufo/dist/index.mjs\");\nvar _isAbsoluteUrl = _interopRequireDefault(require(\"is-absolute-url\"));\nvar _localeTabs = _interopRequireDefault(require(\"./locale-tabs\"));\nvar _simpleSelect = _interopRequireDefault(require(\"./simple-select\"));\nvar _team = require(\"../../../contexts/team\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst MAX_TITLE_LENGTH = 24;\nconst defaultType = 'add';\nconst defaultLocale = 'en';\nconst initialFormState = {\n title: {\n [defaultLocale]: ''\n },\n link: {\n [defaultLocale]: ''\n }\n};\nfunction IconSuffix(_ref) {\n let {\n icon\n } = _ref;\n const [loaded, setLoaded] = (0, _react.useState)(false);\n (0, _ahooks.useAsyncEffect)(async () => {\n setLoaded(false);\n await (0, _react2.loadIcon)(icon);\n setLoaded(true);\n }, [icon]);\n if (icon) {\n if (loaded) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: icon\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n color: \"#f06f6e\",\n icon: \"ic:baseline-error\"\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"codicon:blank\"\n });\n}\nIconSuffix.propTypes = {\n icon: _propTypes.default.string.isRequired\n};\nconst NavigationDialog = /*#__PURE__*/(0, _react.forwardRef)(function NavigationDialog(_ref2, ref) {\n let {\n section,\n components,\n rawNavigations\n } = _ref2;\n const {\n roles\n } = (0, _team.useTeamContext)();\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const saveFn = (0, _react.useRef)(() => {});\n const [show, {\n setFalse,\n setTrue\n }] = (0, _ahooks.useBoolean)(false);\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n const state = (0, _ahooks.useReactive)({\n isRoot: true,\n type: defaultType,\n linkDisabled: false,\n locale: defaultLocale,\n formState: (0, _cloneDeep.default)(initialFormState),\n get localeList() {\n // eslint-disable-next-line react/no-this-in-sfc\n return (0, _without.default)(Object.keys(this.formState.title), defaultLocale);\n }\n });\n const {\n handleSubmit,\n control,\n watch,\n setValue,\n clearErrors,\n formState: {\n errors\n }\n } = (0, _reactHookForm.useForm)({\n mode: 'onChange',\n defaultValues: {\n id: undefined,\n title: undefined,\n icon: undefined,\n link: undefined,\n component: undefined,\n parent: undefined,\n role: []\n }\n });\n (0, _react.useEffect)(() => {\n setValue('title', state.formState.title[state.locale]);\n setValue('link', state.formState.link[state.locale]);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [setValue, state.locale, show]);\n const watchComponent = watch('component');\n const watchTitle = watch('title');\n const watchLink = watch('link');\n const watchIcon = watch('icon');\n const watchParent = watch('parent');\n (0, _react.useEffect)(() => {\n state.formState.title[state.locale] = watchTitle;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [watchTitle]);\n (0, _react.useEffect)(() => {\n state.formState.link[state.locale] = watchLink;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [watchLink]);\n const selectedOption = (0, _react.useMemo)(() => {\n const parentData = rawNavigations.find(item => {\n if (watchComponent) {\n const findComponent = components.find(x => x.name === watchComponent);\n return findComponent.did === item.id;\n }\n return item.id === watchParent;\n });\n return parentData;\n }, [components, rawNavigations, watchComponent, watchParent]);\n const linkPrefix = (0, _react.useMemo)(() => {\n if (selectedOption !== null && selectedOption !== void 0 && selectedOption.component) {\n const findComponent = components.find(item => item.name === selectedOption.component);\n const {\n link\n } = findComponent || {};\n const stringLink = (0, _isObject.default)(link) ? link[state.locale] : link;\n if (watchComponent) {\n return (0, _index.withoutTrailingSlash)(stringLink);\n }\n const selectedLink = (0, _isObject.default)(selectedOption.link) ? selectedOption.link[state.locale] : selectedOption.link;\n return (0, _index.withoutTrailingSlash)((0, _urlJoin.default)(stringLink, selectedLink || '/'));\n }\n return null;\n }, [components, state.locale, selectedOption, watchComponent]);\n const autocompleteOptions = (0, _react.useMemo)(() => {\n const {\n component\n } = selectedOption || {};\n const componentBlocklet = components.find(item => item.name === component);\n const {\n navigation = []\n } = componentBlocklet || {};\n const flatternedNavigation = (0, _parseNavigationFromBlocklet.flatternNavigation)(navigation, {\n transform(item, parent) {\n if (parent !== null && parent !== void 0 && parent.section) {\n item.section = item.section || parent.section;\n }\n return item;\n }\n });\n return flatternedNavigation.filter(item => item.link)\n // 在指定 section 下只展示能够展示的 navigation\n .filter(item => (0, _parseNavigationFromBlocklet.isMatchSection)(item.section, section)).map(item => {\n return {\n label: item.link,\n title: item.title[locale] || item.title\n };\n });\n }, [selectedOption, components, section, locale]);\n const name = (0, _react.useMemo)(() => {\n const typeMap = {\n add: t('common.create'),\n edit: t('common.edit')\n };\n const typeName = typeMap[state.type];\n if (typeName) {\n return \"\".concat(typeName, \" \").concat(t('navigation.navigation'));\n }\n return '--';\n }, [state.type, t]);\n const reset = (0, _react.useCallback)(() => {\n state.type = defaultType;\n state.linkDisabled = false;\n saveFn.current = () => {};\n setValue('id', undefined);\n setValue('icon', undefined);\n setValue('title', undefined);\n setValue('link', undefined);\n setValue('component', undefined);\n setValue('parent', undefined);\n setValue('role', []);\n state.formState = (0, _cloneDeep.default)(initialFormState);\n clearErrors();\n }, [clearErrors, setValue, state]);\n const patchFormValues = (0, _react.useCallback)(function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (state.localeList.length > 0) {\n if (new Set((0, _values.default)(state.formState.title)).size > 1) {\n params.title = state.formState.title;\n }\n if (new Set((0, _values.default)(state.formState.link)).size > 1) {\n params.link = state.formState.link;\n }\n }\n if ((0, _isEmpty.default)(params.role)) {\n params.role = undefined;\n }\n return params;\n }, [state.formState.link, state.formState.title, state.localeList]);\n const close = (0, _react.useCallback)(() => {\n setFalse();\n setTimeout(() => {\n reset();\n });\n }, [reset, setFalse]);\n const add = (0, _react.useCallback)(function () {\n let {\n parent\n } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n let cb = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : () => {};\n state.type = 'add';\n state.isRoot = !parent;\n setValue('parent', parent === null || parent === void 0 ? void 0 : parent.id);\n saveFn.current = params => {\n cb(close, params);\n };\n setTrue();\n }, [close, setTrue, setValue, state]);\n const edit = (0, _react.useCallback)(function () {\n let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n let cb = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : () => {};\n const {\n id,\n title,\n icon,\n link,\n parent,\n component,\n role = []\n } = data;\n setValue('id', id);\n setValue('icon', icon);\n if (data.from === 'tmpl') {\n state.linkDisabled = true;\n }\n if ((0, _isString.default)(title)) {\n state.formState.title = state.localeList.reduce((resData, localeItem) => {\n resData[localeItem] = title;\n return resData;\n }, {\n [defaultLocale]: title\n });\n } else if ((0, _isObject.default)(title)) {\n state.formState.title = (0, _cloneDeep.default)(title);\n } else {\n state.formState.title = {};\n }\n if ((0, _isString.default)(link)) {\n state.formState.link = state.localeList.reduce((resData, localeItem) => {\n resData[localeItem] = link;\n return resData;\n }, {\n [defaultLocale]: link\n });\n } else if ((0, _isObject.default)(link)) {\n state.formState.link = (0, _cloneDeep.default)(link);\n } else {\n state.formState.link = {};\n }\n setValue('component', component);\n setValue('parent', parent);\n setValue('role', role || []);\n setTrue();\n state.type = 'edit';\n state.isRoot = !parent;\n saveFn.current = params => {\n const pickData = (0, _pick.default)(params, ['id', 'title', 'icon', 'link', 'role']);\n cb(close, pickData);\n };\n }, [close, setTrue, setValue, state]);\n (0, _react.useImperativeHandle)(ref, () => {\n return {\n add,\n edit,\n close\n };\n }, [add, close, edit]);\n function validTitle(raw) {\n const value = raw === null || raw === void 0 ? void 0 : raw.trim();\n if (!value) return t('common.requiredErrorText', {\n name: t('navigation.form.title')\n });\n if (value.length > MAX_TITLE_LENGTH) return t('navigation.form.titleTooLong', {\n len: MAX_TITLE_LENGTH\n });\n return true;\n }\n async function validIcon(raw) {\n const value = raw === null || raw === void 0 ? void 0 : raw.trim();\n if (value) {\n try {\n await (0, _react2.loadIcon)(value);\n } catch (_unused) {\n return t('navigation.form.invalidIcon');\n }\n }\n return true;\n }\n function validLink(raw) {\n const value = raw === null || raw === void 0 ? void 0 : raw.trim();\n if (!value) {\n if (!state.isRoot) {\n return t('common.requiredErrorText', {\n name: t('navigation.form.link')\n });\n }\n return true;\n }\n if (!(0, _parseNavigationFromBlocklet.checkLink)(value)) {\n return t('navigation.form.invalidLink');\n }\n return true;\n }\n const handleChangeLocale = (0, _react.useCallback)(currentLocale => {\n state.locale = currentLocale;\n if (!state.formState.title[currentLocale]) {\n state.formState.title[currentLocale] = '';\n }\n if (!state.formState.link[currentLocale]) {\n state.formState.link[currentLocale] = '';\n }\n setTimeout(() => {\n clearErrors();\n });\n }, [clearErrors, state]);\n const checkFormState = (0, _react.useCallback)(() => {\n const {\n title,\n link\n } = state.formState;\n for (const key of Object.keys(title)) {\n const validRes = validTitle(title[key]);\n if (validRes !== true) {\n return validRes;\n }\n }\n for (const key of Object.keys(link)) {\n const validRes = validLink(link[key]);\n if (validRes !== true) {\n return validRes;\n }\n }\n return true;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [state.formState]);\n const handleFormSubmit = (0, _react.useCallback)(params => {\n const checkRes = checkFormState();\n if (checkRes === true) {\n saveFn.current(patchFormValues(params));\n } else {\n enqueueSnackbar(checkRes, {\n variant: 'error'\n });\n }\n }, [checkFormState, enqueueSnackbar, patchFormValues]);\n const handleRemoveLocale = (0, _react.useCallback)(currentLocale => {\n state.formState.title = (0, _omit.default)(state.formState.title, currentLocale);\n state.formState.link = (0, _omit.default)(state.formState.link, currentLocale);\n }, [state.formState]);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n open: show,\n title: name,\n onClose: close,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: handleSubmit(handleFormSubmit),\n color: \"primary\",\n autoFocus: true,\n variant: \"contained\",\n children: t('common.confirm')\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_localeTabs.default, {\n sx: {\n mb: 1\n },\n onChange: handleChangeLocale,\n onRemoveLocale: handleRemoveLocale,\n locales: state.localeList\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"form\", {\n noValidate: true,\n autoComplete: \"off\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"title\",\n control: control,\n rules: {\n validate: validTitle\n },\n render: _ref3 => {\n var _errors$title, _errors$title2;\n let {\n field\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TextField, _objectSpread({\n fullWidth: true,\n variant: \"outlined\",\n margin: \"dense\",\n required: true,\n placeholder: t('navigation.form.titlePlaceholder'),\n label: t('navigation.form.title'),\n disabled: state.isEdit,\n error: !!(errors !== null && errors !== void 0 && (_errors$title = errors.title) !== null && _errors$title !== void 0 && _errors$title.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$title2 = errors.title) === null || _errors$title2 === void 0 ? void 0 : _errors$title2.message) || ' '\n }, field));\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"icon\",\n control: control,\n rules: {\n validate: validIcon\n },\n render: _ref4 => {\n var _errors$icon, _errors$icon2;\n let {\n field\n } = _ref4;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TextField, _objectSpread(_objectSpread({\n fullWidth: true,\n variant: \"outlined\",\n margin: \"dense\",\n placeholder: t('navigation.form.iconPlaceholder'),\n label: t('navigation.form.icon'),\n error: !!(errors !== null && errors !== void 0 && (_errors$icon = errors.icon) !== null && _errors$icon !== void 0 && _errors$icon.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$icon2 = errors.icon) === null || _errors$icon2 === void 0 ? void 0 : _errors$icon2.message) || /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n display: \"flex\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n component: \"a\",\n href: \"https://icones.js.org\",\n target: \"_blank\",\n display: \"flex\",\n alignItems: \"center\",\n children: [t('navigation.form.findMoreIcon'), ' ', /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n style: {\n marginLeft: 4\n },\n icon: \"radix-icons:external-link\"\n })]\n })\n })\n }, field), {}, {\n InputProps: {\n endAdornment: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.InputAdornment, {\n position: \"end\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {\n sx: {\n cursor: 'default'\n },\n disableFocusRipple: true,\n disableRipple: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(IconSuffix, {\n icon: watchIcon\n })\n })\n })\n }\n }));\n }\n }), state.isRoot && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"component\",\n control: control,\n render: _ref5 => {\n var _errors$component, _errors$component2;\n let {\n field\n } = _ref5;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_simpleSelect.default, _objectSpread({\n fullWidth: true,\n margin: \"dense\",\n disabled: state.type === 'edit',\n label: t('navigation.form.component'),\n placeholer: t('navigation.form.componentPlaceholder'),\n options: components.map(item => ({\n title: item.title,\n value: item.name,\n description: item.link\n })),\n error: !!(errors !== null && errors !== void 0 && (_errors$component = errors.component) !== null && _errors$component !== void 0 && _errors$component.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$component2 = errors.component) === null || _errors$component2 === void 0 ? void 0 : _errors$component2.message) || ' '\n }, field));\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"link\",\n control: control,\n rules: {\n validate: validLink\n },\n render: _ref6 => {\n var _errors$link3, _errors$link4;\n let {\n field\n } = _ref6;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.FormControl, {\n fullWidth: true,\n margin: \"dense\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Autocomplete, _objectSpread(_objectSpread({\n disablePortal: true,\n freeSolo: true,\n blurOnSelect: true,\n autoSelect: true,\n fullWidth: true,\n disabled: state.linkDisabled,\n isOptionEqualToValue: option => option.label,\n options: autocompleteOptions,\n renderInput: params => {\n var _errors$link, _errors$link2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TextField, _objectSpread(_objectSpread({}, params), {}, {\n placeholder: t('navigation.form.linkPlaceholder'),\n label: t('navigation.form.link'),\n error: !!(errors !== null && errors !== void 0 && (_errors$link = errors.link) !== null && _errors$link !== void 0 && _errors$link.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$link2 = errors.link) === null || _errors$link2 === void 0 ? void 0 : _errors$link2.message) || '/abc/bcd or /abc or https://arcblock.io'\n // FIXME: 添加了 startAdornment 后,autocomplete 选项无法显示,之后换成 antd 的 autocomplete 可以解决这个问题\n ,\n InputProps: {\n startAdornment: linkPrefix ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.InputAdornment, {\n position: \"start\",\n sx: {\n textDecoration: (0, _isAbsoluteUrl.default)(watchLink || '') ? 'line-through' : ''\n },\n children: linkPrefix\n }) : null\n }\n }));\n },\n renderOption: (props, option) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, _objectSpread(_objectSpread({\n component: \"li\"\n }, props), {}, {\n children: [option.label, /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n marginLeft: 1,\n component: \"span\",\n variant: \"body2\",\n color: \"text.secondary\",\n children: option.title\n })]\n })),\n error: !!(errors !== null && errors !== void 0 && (_errors$link3 = errors.link) !== null && _errors$link3 !== void 0 && _errors$link3.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$link4 = errors.link) === null || _errors$link4 === void 0 ? void 0 : _errors$link4.message) || ' ',\n margin: \"dense\"\n }, field), {}, {\n onChange: () => {},\n onInputChange: (e, value) => {\n field.onChange(value);\n }\n }))\n });\n }\n }), ['dashboard', 'sessionManager'].includes(section) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactHookForm.Controller, {\n name: \"role\",\n control: control,\n render: _ref7 => {\n var _errors$role, _errors$role2;\n let {\n field\n } = _ref7;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_simpleSelect.default, _objectSpread({\n fullWidth: true,\n multiple: true,\n margin: \"dense\",\n label: t('navigation.form.role'),\n placeholer: t('navigation.form.rolePlaceholder'),\n options: roles.map(role => ({\n title: role.title,\n value: role.name\n })),\n error: !!(errors !== null && errors !== void 0 && (_errors$role = errors.role) !== null && _errors$role !== void 0 && _errors$role.message),\n helperText: (errors === null || errors === void 0 ? void 0 : (_errors$role2 = errors.role) === null || _errors$role2 === void 0 ? void 0 : _errors$role2.message) || ' '\n }, field));\n }\n })]\n })]\n });\n});\nNavigationDialog.propTypes = {\n section: _propTypes.default.string,\n components: _propTypes.default.array,\n rawNavigations: _propTypes.default.array\n};\nNavigationDialog.defaultProps = {\n section: '',\n components: [],\n rawNavigations: []\n};\nvar _default = NavigationDialog;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Header = _interopRequireDefault(require(\"@blocklet/ui-react/lib/Header\"));\nvar _Footer = _interopRequireDefault(require(\"@blocklet/ui-react/lib/Footer\"));\nvar _Dashboard = _interopRequireDefault(require(\"@blocklet/ui-react/lib/Dashboard\"));\nvar _linkBlocker = _interopRequireDefault(require(\"@blocklet/ui-react/lib/common/link-blocker\"));\nvar _material = require(\"@mui/material\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _blocklet = require(\"../../../contexts/blocklet\");\nvar _useAppLogo = _interopRequireDefault(require(\"../../../hooks/use-app-logo\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction NavigationPreview(_ref) {\n let {\n className,\n navigation\n } = _ref;\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const {\n logoUrl\n } = (0, _useAppLogo.default)({\n blocklet\n });\n const blockletInfo = {\n appId: blocklet.appDid,\n appLogo: logoUrl,\n appName: blocklet.meta.title,\n enableConnect: true,\n enableLocale: false,\n navigation\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_linkBlocker.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n className: className,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Header.default, {\n meta: blockletInfo\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dashboard.default, {\n meta: blockletInfo,\n invalidPathFallback: () => {},\n headerProps: {\n style: {\n display: 'none'\n }\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Grid, {\n container: true,\n spacing: 2,\n children: new Array(6).fill().map((item, index) => {\n return (\n /*#__PURE__*/\n // eslint-disable-next-line react/no-array-index-key\n (0, _jsxRuntime.jsxs)(_material.Grid, {\n item: true,\n xs: 4,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Skeleton, {\n animation: false,\n variant: \"rectangular\",\n width: \"100%\",\n height: 120\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n sx: {\n pt: 0.5\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Skeleton, {\n animation: false\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Skeleton, {\n width: \"60%\",\n animation: false\n })]\n })]\n }, index)\n );\n })\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Footer.default, {\n meta: blockletInfo\n })]\n })\n });\n}\nNavigationPreview.propTypes = {\n className: _propTypes.default.string,\n navigation: _propTypes.default.array\n};\nNavigationPreview.defaultProps = {\n className: '',\n navigation: []\n};\nconst StyledNavigationPreview = (0, _styled.default)(NavigationPreview)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .dashboard {\\n height: auto !important;\\n }\\n .dashboard-content + div {\\n display: none;\\n }\\n\"])));\nvar _default = StyledNavigationPreview;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _material = require(\"@mui/material\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"fullWidth\", \"multiple\", \"required\", \"label\", \"placeholer\", \"options\", \"helperText\", \"error\", \"margin\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction SimpleSelect(_ref) {\n let {\n fullWidth,\n multiple,\n required,\n label,\n placeholer,\n options,\n helperText,\n error,\n margin\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const defaultOption = options.find(item => item.value === rest.value);\n const defaultValue = defaultOption === null || defaultOption === void 0 ? void 0 : defaultOption.title;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.FormControl, {\n margin: margin,\n fullWidth: fullWidth,\n error: error,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.InputLabel, {\n children: \"\".concat(label).concat(required ? '*' : '')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Select, _objectSpread(_objectSpread({\n multiple: multiple,\n input: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.OutlinedInput, {\n defaultValue: defaultValue,\n sx: {\n flex: 1\n },\n required: required,\n label: label,\n inputProps: {\n margin\n }\n }),\n renderValue: selected => {\n if (multiple) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n sx: {\n display: 'flex',\n flexWrap: 'wrap',\n gap: 0.5\n },\n children: selected.map(value => {\n const option = options.find(item => item.value === value);\n return option && option.title && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Chip, {\n size: \"small\",\n label: option.title\n }, value);\n })\n });\n }\n const option = options.find(item => item.value === selected);\n return option && option.title && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n component: \"span\",\n children: option.title\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n marginLeft: 1,\n component: \"span\",\n variant: \"body2\",\n color: \"text.secondary\",\n children: option.description\n })]\n });\n }\n }, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.MenuItem, {\n disabled: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"em\", {\n children: placeholer\n })\n }), !multiple && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.MenuItem, {\n value: \"\",\n children: \"None\"\n }), options.map(option => option && option.value && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {\n value: option.value,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.ListItemText, {\n children: option.title\n }), option.description && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n children: option.description\n })]\n }, option.value))]\n })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.FormHelperText, {\n children: helperText\n })]\n });\n}\nSimpleSelect.propTypes = {\n error: _propTypes.default.bool,\n required: _propTypes.default.bool,\n multiple: _propTypes.default.bool,\n fullWidth: _propTypes.default.bool,\n label: _propTypes.default.string,\n placeholer: _propTypes.default.string,\n options: _propTypes.default.array,\n helperText: _propTypes.default.string,\n margin: _propTypes.default.string\n};\nSimpleSelect.defaultProps = {\n error: false,\n required: false,\n multiple: false,\n fullWidth: false,\n label: '',\n placeholer: '',\n options: [],\n helperText: '',\n margin: ''\n};\nvar _default = SimpleSelect;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = SelectStore;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _constant = require(\"@abtnode/constant\");\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 const isServerlessMode = nodeInfo.mode === _constant.NODE_MODES.SERVERLESS;\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 }), !isServerlessMode && /*#__PURE__*/(0, _jsxRuntime.jsx)(_add.default, {\n disabled: loading,\n storeList: storeList,\n teamDid: teamDid,\n onAdd: url => {\n setStoreUrl(url);\n }\n })]\n }), children({\n currentRegistry\n })]\n });\n}\nSelectStore.propTypes = {\n onChange: _propTypes.default.func,\n loading: _propTypes.default.bool,\n children: _propTypes.default.any.isRequired,\n extra: _propTypes.default.node\n};\nSelectStore.defaultProps = {\n onChange: () => {},\n loading: false,\n extra: ''\n};\nconst SelectStoreTitle = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 16px;\\n\\n span {\\n font-size: 16px;\\n color: \", \";\\n // font-weight: bold;\\n }\\n\"])), props => props.theme.palette.common.black);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ComponentSettingWithPermission;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _formTextInput = _interopRequireDefault(require(\"../../form/form-text-input\"));\nvar _node = require(\"../../contexts/node\");\nvar _permission = require(\"../../permission\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"ancestors\", \"hasPermission\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ComponentSetting(_ref) {\n let {\n blocklet,\n ancestors,\n hasPermission\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const isRoot = !ancestors.length;\n const isDynamic = blocklet.dynamic;\n const rootDid = isRoot ? blocklet.meta.did : ancestors.map(x => x.meta.did)[0];\n const [loading, setLoading] = (0, _react.useState)('');\n const isDev = (0, _util.isBlockletDev)(blocklet);\n const disabled = isDev || loading || !hasPermission;\n if (!rootDid) {\n return null;\n }\n if (blocklet.status === 'unknown' && (0, _util.isInstalling)(blocklet.status)) {\n return null;\n }\n const onSubmitTitle = async value => {\n setLoading(true);\n try {\n setLoading(false);\n await api.updateComponentTitle({\n input: {\n rootDid,\n did: blocklet.meta.did,\n title: value\n }\n });\n } catch (err) {\n setLoading(false);\n err.message = (0, _util.formatError)(err);\n _toast.default.error(err.message);\n throw err;\n }\n };\n const onSubmitMountPoint = async value => {\n setLoading(true);\n try {\n const input = {\n rootDid,\n mountPoint: value\n };\n if (!isRoot) {\n input.did = blocklet.meta.did;\n }\n await api.updateComponentMountPoint({\n input\n });\n setLoading(false);\n } catch (err) {\n setLoading(false);\n err.message = (0, _util.formatError)(err);\n _toast.default.error(err.message);\n throw err;\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: 3,\n children: [isDynamic && /*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n label: t('common.title'),\n style: {\n marginTop: -24\n },\n disabled: loading || disabled,\n loading: loading,\n required: true,\n initialValue: blocklet.meta.title,\n onSubmit: onSubmitTitle\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n label: t('blocklet.component.mountPoint'),\n style: {\n marginTop: -24\n },\n disabled: loading || disabled,\n loading: loading,\n required: true,\n initialValue: blocklet.mountPoint,\n onSubmit: onSubmitMountPoint\n })]\n })\n }));\n}\nconst ComponentSettingInDaemon = (0, _permission.withPermission)(ComponentSetting, 'mutate_blocklets');\nconst ComponentSettingInService = (0, _permission.withPermission)(ComponentSetting, '', _util.BlockletAdminRoles);\nfunction ComponentSettingWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentSettingInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentSettingInDaemon, _objectSpread({}, props));\n}\nComponentSetting.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array,\n hasPermission: _propTypes.default.bool\n};\nComponentSetting.defaultProps = {\n ancestors: [],\n hasPermission: false\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _reactSortableTree = require(\"react-sortable-tree\");\nvar _reactSortableTreeThemeMaterialUi = _interopRequireDefault(require(\"react-sortable-tree-theme-material-ui\"));\nvar _react2 = require(\"@iconify/react\");\nvar _isObject = _interopRequireDefault(require(\"lodash/isObject\"));\nvar _isEqual = _interopRequireDefault(require(\"lodash/isEqual\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _material = require(\"@mui/material\");\nvar _reactDndHtml5Backend = require(\"react-dnd-html5-backend\");\nvar _reactDnd = require(\"react-dnd\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction checkCanDrop(_ref) {\n let {\n prevPath,\n nextPath\n } = _ref;\n const prevLen = prevPath.length;\n const nextLen = nextPath.length;\n if (prevLen === nextLen) {\n if ((0, _isEqual.default)(prevPath.slice(0, prevLen - 1), nextPath.slice(0, nextLen - 1))) {\n return true;\n }\n }\n return false;\n}\nfunction TreeTitle(_ref2) {\n let {\n treeNode\n } = _ref2;\n const {\n locale\n } = (0, _context.useLocaleContext)();\n function renderTitle() {\n const {\n title,\n subtitle\n } = treeNode;\n let titleShow = title;\n let subtitleShow = subtitle;\n if ((0, _isObject.default)(title)) {\n titleShow = title[locale];\n }\n if (! /*#__PURE__*/(0, _react.isValidElement)(subtitle) && (0, _isObject.default)(subtitle)) {\n subtitleShow = subtitle[locale];\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"subtitle1\",\n fontSize: 16,\n children: titleShow\n }), subtitle && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"body2\",\n color: \"gray\",\n ml: 1.5,\n children: subtitleShow\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [treeNode.icon && /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n style: {\n marginRight: 4\n },\n icon: treeNode.icon\n }), renderTitle()]\n });\n}\nTreeTitle.propTypes = {\n treeNode: _propTypes.default.object.isRequired\n};\nfunction SortableTree(_ref3) {\n let {\n treeData,\n setTreeData,\n renderActions\n } = _ref3;\n const expandedData = treeData.map(item => _objectSpread(_objectSpread({}, item), {}, {\n expanded: true\n }));\n\n // HACK: 兼容 mui-datatables 中的 react-dnd 使用\n const dndProps = {};\n if (typeof window !== 'undefined') {\n dndProps.context = window;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactDnd.DndProvider, _objectSpread(_objectSpread({\n backend: _reactDndHtml5Backend.HTML5Backend\n }, dndProps), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactSortableTree.SortableTreeWithoutDndContext, {\n generateNodeProps: rowInfo => {\n return {\n buttons: renderActions({\n data: rowInfo.node,\n className: 'list-item-actions'\n }),\n icons: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"ic:round-drag-indicator\"\n }),\n title: /*#__PURE__*/(0, _jsxRuntime.jsx)(TreeTitle, {\n treeNode: rowInfo.node\n })\n };\n },\n maxDepth: 2,\n isVirtualized: false,\n treeData: expandedData,\n onChange: setTreeData,\n canDrop: checkCanDrop,\n theme: _reactSortableTreeThemeMaterialUi.default\n })\n }));\n}\nSortableTree.propTypes = {\n treeData: _propTypes.default.object.isRequired,\n setTreeData: _propTypes.default.func,\n renderActions: _propTypes.default.func\n};\nSortableTree.defaultProps = {\n setTreeData: () => {},\n renderActions: () => {}\n};\nvar _default = SortableTree;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletList;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _ErrorBoundary = require(\"@arcblock/ux/lib/ErrorBoundary\");\nvar _reactErrorBoundary = require(\"react-error-boundary\");\nvar _list = _interopRequireDefault(require(\"@blocklet/list\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Blocklet = _interopRequireWildcard(require(\"@arcblock/ux/lib/Blocklet\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _util2 = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"handleButtonClick\", \"handleSearchSelect\", \"storeUrl\", \"handleBlockletRender\", \"extraFilter\"];\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nconst getStoreDetail = (meta, endpoint) => {\n return (0, _urlJoin.default)(endpoint, \"/blocklets/\".concat(meta.did));\n};\nconst displayAttributes = _ref => {\n let {\n blocklet,\n attribute,\n value\n } = _ref;\n if (blocklet._formatted) {\n return blocklet._formatted[attribute];\n }\n return value;\n};\nconst requirePurchase = meta => meta.inStore && (0, _util.isFreeBlocklet)(meta) === false;\nfunction BlockletItem(_ref2) {\n let {\n blocklet,\n blocklets,\n handleButtonClick,\n endpoint\n } = _ref2;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const logoUrl = (0, _urlJoin.default)(endpoint, (0, _util2.formatRegistryLogoPath)(blocklet.did, blocklet.logo || ''));\n const [loading, setLoading] = (0, _react.useState)(false);\n const onClickLink = e => {\n if (!e.currentTarget.contains(e.target)) {\n e.preventDefault();\n return false;\n }\n return true;\n };\n const btnTxt = requirePurchase(blocklet) ? t('common.purchase') : t('blocklet.component.choose');\n const onAction = async e => {\n e.preventDefault();\n e.stopPropagation();\n try {\n setLoading(true);\n await handleButtonClick({\n meta: blocklet,\n registryUrl: endpoint,\n blocklets\n });\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n href: getStoreDetail(blocklet, endpoint),\n style: {\n color: 'initial',\n textDecoration: 'none'\n },\n onClick: onClickLink,\n target: \"_blank\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledBlocklet, {\n title: displayAttributes({\n blocklet,\n attribute: 'title',\n value: blocklet.title || blocklet.name\n }),\n did: blocklet.did,\n description: displayAttributes({\n blocklet,\n attribute: 'description',\n value: blocklet.description\n }),\n cover: blocklet.logo ? logoUrl : '',\n version: blocklet.version,\n button: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n display: 'flex',\n alignItems: 'center'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Blocklet.ActionButton, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onAction,\n size: \"small\",\n disabled: loading,\n variant: \"outlined\",\n color: \"primary\",\n \"data-cy\": \"install-blocklet\",\n children: loading ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10],\n style: {\n marginRight: 3\n }\n }), btnTxt]\n }) : btnTxt\n }, blocklet.did)\n })\n })\n })\n });\n}\nBlockletItem.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n blocklets: _propTypes.default.array,\n handleButtonClick: _propTypes.default.func,\n endpoint: _propTypes.default.string\n};\nBlockletItem.defaultProps = {\n handleButtonClick: null,\n endpoint: '',\n blocklets: []\n};\nfunction BlockletList(_ref3) {\n let {\n handleButtonClick,\n handleSearchSelect,\n storeUrl,\n handleBlockletRender,\n extraFilter\n } = _ref3,\n rest = _objectWithoutProperties(_ref3, _excluded);\n const {\n locale\n } = (0, _context.useLocaleContext)();\n const [filters, setFilters] = (0, _react.useState)({});\n const handleChange = changeData => {\n setFilters(changeData);\n };\n const endpoint = storeUrl;\n (0, _react.useEffect)(() => {\n setFilters({});\n }, [endpoint]);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactErrorBoundary.ErrorBoundary, {\n FallbackComponent: _ErrorBoundary.ErrorFallback,\n resetKeys: [endpoint],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", _objectSpread(_objectSpread({}, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_list.default, {\n blockletRender: blockletRenderProps => {\n const defaultProps = _objectSpread(_objectSpread({}, blockletRenderProps), {}, {\n handleButtonClick,\n endpoint\n });\n return handleBlockletRender(_objectSpread(_objectSpread({}, blockletRenderProps), {}, {\n defaultRender: /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletItem, _objectSpread({}, defaultProps))\n }));\n },\n baseSearch: true,\n endpoint: endpoint,\n locale: locale,\n onFilterChange: handleChange,\n onSearchSelect: handleSearchSelect,\n filters: filters,\n extraFilter: extraFilter\n })\n }))\n });\n}\nBlockletList.propTypes = {\n storeUrl: _propTypes.default.string.isRequired,\n handleButtonClick: _propTypes.default.func,\n handleSearchSelect: _propTypes.default.func,\n handleBlockletRender: _propTypes.default.func,\n extraFilter: _propTypes.default.func\n};\nBlockletList.defaultProps = {\n handleButtonClick: null,\n handleSearchSelect: null,\n handleBlockletRender: null,\n extraFilter: undefined\n};\nconst StyledBlocklet = (0, _styled.default)(_Blocklet.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .ms-highlight {\\n color: \", \";\\n }\\n\"])), props => props.theme.palette.primary.main);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _material = require(\"@mui/material\");\nvar _lab = require(\"@mui/lab\");\nvar _react2 = require(\"@iconify/react\");\nvar _notistack = require(\"notistack\");\nvar _ahooks = require(\"ahooks\");\nvar _Dialog = require(\"@arcblock/ux/lib/Dialog\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Session = require(\"@arcblock/did-connect/lib/Session\");\nvar _sortableTree = _interopRequireDefault(require(\"./component/sortable-tree\"));\nvar _navigationDialog = _interopRequireDefault(require(\"./component/navigation/navigation-dialog\"));\nvar _navigationActions = _interopRequireDefault(require(\"./component/navigation/navigation-actions\"));\nvar _useNavigation = _interopRequireDefault(require(\"../hooks/use-navigation\"));\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _navigationPreview = _interopRequireDefault(require(\"./component/navigation/navigation-preview\"));\nvar _team = require(\"../contexts/team\");\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst mockSession = {\n login: () => {},\n logout: () => {},\n switch: () => {},\n switchDid: () => {},\n switchProfile: () => {},\n switchPassport: () => {}\n};\nconst navigationTypeMap = {\n header: 'Header',\n footer: 'Footer',\n bottom: 'Footer Link',\n social: 'Footer Social',\n dashboard: 'Dashboard',\n sessionManager: 'SessionManager'\n};\nfunction ConfigNavigation() {\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const refNavigationDialog = (0, _react.useRef)(null);\n const {\n roles\n } = (0, _team.useTeamContext)();\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n const pageState = (0, _ahooks.useReactive)({\n saveLoading: false,\n resetLoading: false,\n showResetConfirm: false,\n mockRole: 'owner'\n });\n const {\n state: navigationState,\n navigation,\n getNavigation,\n saveNavigationList,\n resetNavigation,\n updateActiveSection,\n updateNavigationTree,\n updateNavigationItem,\n delNavigationItem,\n addNavigationItem\n } = (0, _useNavigation.default)();\n const handleAddNavigation = (0, _react.useCallback)(params => {\n refNavigationDialog.current.add({\n parent: params\n }, (close, data) => {\n addNavigationItem(data);\n close();\n });\n }, [addNavigationItem]);\n const handleEditNavigation = (0, _react.useCallback)(function (type) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n switch (type) {\n case 'edit':\n refNavigationDialog.current.edit(params, (close, data) => {\n updateNavigationItem(data);\n close();\n });\n break;\n case 'toggle':\n updateNavigationItem({\n id: params.id,\n visible: !params.visible\n });\n break;\n case 'del':\n delNavigationItem(params.id);\n break;\n default:\n }\n }, [delNavigationItem, updateNavigationItem]);\n const handleSaveNavigation = (0, _react.useCallback)(async () => {\n try {\n pageState.saveLoading = true;\n await saveNavigationList(navigationState.rawNavigation);\n enqueueSnackbar('保存成功', {\n variant: 'success'\n });\n } catch (e) {\n enqueueSnackbar( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"subtitle2\",\n children: t('navigation.actionFailed')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"body1\",\n children: (0, _util.formatError)(e) || e.error\n })]\n }), {\n variant: 'error'\n });\n } finally {\n pageState.saveLoading = false;\n }\n }, [enqueueSnackbar, navigationState.rawNavigation, pageState, saveNavigationList, t]);\n const handleResetNavigation = (0, _react.useCallback)(async () => {\n try {\n pageState.resetLoading = true;\n await resetNavigation();\n enqueueSnackbar('重置成功', {\n variant: 'success'\n });\n } catch (e) {\n enqueueSnackbar( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"subtitle2\",\n children: t('navigation.actionFailed')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"body1\",\n children: (0, _util.formatError)(e) || e.error\n })]\n }), {\n variant: 'error'\n });\n } finally {\n pageState.resetLoading = false;\n }\n }, [enqueueSnackbar, pageState, resetNavigation, t]);\n const sessionCtxValue = (0, _react.useMemo)(() => {\n return {\n session: _objectSpread(_objectSpread({}, mockSession), {}, {\n user: {\n did: blocklet.appDid,\n fullName: 'Preview User',\n role: pageState.mockRole\n }\n })\n };\n }, [blocklet.appDid, pageState.mockRole]);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.ButtonGroup, {\n variant: \"outlined\",\n children: Object.keys(navigationTypeMap).map(key => {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Button, {\n variant: navigationState.activeSection === key ? 'contained' : undefined,\n onClick: () => updateActiveSection(key),\n children: [navigationTypeMap[key], \" (\".concat(getNavigation(key).length, \")\")]\n }, key);\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Toolbar, {\n variant: \"dense\",\n sx: {\n paddingLeft: '0px !important',\n paddingRight: '0px !important',\n mt: 2\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"h6\",\n component: \"div\",\n sx: {\n flexGrow: 1\n },\n children: \"Config\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.ButtonGroup, {\n variant: \"outlined\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_lab.LoadingButton, {\n size: \"small\",\n variant: \"outlined\",\n color: \"error\",\n startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"system-uicons:reset\"\n }),\n sx: {\n mr: 2\n },\n loading: pageState.resetLoading,\n loadingPosition: \"start\",\n onClick: () => {\n pageState.showResetConfirm = true;\n },\n children: \"\\u91CD\\u7F6E\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.ButtonGroup, {\n variant: \"outlined\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Button, {\n size: \"small\",\n variant: \"outlined\",\n startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"mdi:plus\"\n }),\n onClick: () => handleAddNavigation(),\n children: \"\\u65B0\\u5EFA\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_lab.LoadingButton, {\n size: \"small\",\n variant: \"contained\",\n startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react2.Icon, {\n icon: \"mdi:content-save\"\n }),\n loading: pageState.saveLoading,\n loadingPosition: \"start\",\n onClick: handleSaveNavigation,\n children: \"\\u4FDD\\u5B58\"\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Paper, {\n variant: \"outlined\",\n sx: {\n display: 'flex',\n height: 280,\n overflow: 'hidden'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Paper, {\n elevation: 0,\n sx: {\n flex: 1,\n overflow: 'auto'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sortableTree.default, {\n treeData: getNavigation(navigationState.activeSection),\n setTreeData: updateNavigationTree,\n renderActions: _ref => {\n let {\n data,\n className\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_navigationActions.default, {\n data: data,\n className: className,\n section: navigationState.activeSection,\n add: function add() {\n return handleAddNavigation(...arguments);\n },\n del: function del() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return handleEditNavigation('del', ...args);\n },\n edit: function edit() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return handleEditNavigation('edit', ...args);\n },\n toggle: function toggle() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return handleEditNavigation('toggle', ...args);\n }\n });\n }\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Toolbar, {\n variant: \"dense\",\n sx: {\n paddingLeft: '0px !important',\n paddingRight: '0px !important',\n mt: 3\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {\n variant: \"h6\",\n component: \"div\",\n sx: {\n flexGrow: 1\n },\n children: \"Preview\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.FormControl, {\n sx: {\n m: 1,\n minWidth: 120\n },\n size: \"small\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.InputLabel, {\n children: \"Role\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Select, {\n value: pageState.mockRole,\n label: \"Role\",\n onChange: e => {\n pageState.mockRole = e.target.value;\n },\n children: roles.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.MenuItem, {\n value: item.name,\n children: item.title\n }, item.name))\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Paper, {\n variant: \"outlined\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Session.SessionContext.Provider, {\n value: sessionCtxValue,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_navigationPreview.default, {\n navigation: navigation\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_navigationDialog.default, {\n ref: refNavigationDialog,\n section: navigationState.activeSection,\n components: navigationState.components,\n rawNavigations: navigationState.rawNavigation\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.Confirm, {\n open: pageState.showResetConfirm,\n title: \"\\u662F\\u5426\\u6E05\\u7A7A\\u6240\\u6709\\u81EA\\u5B9A\\u4E49\\u5BFC\\u822A\",\n onConfirm: async () => {\n await handleResetNavigation();\n pageState.showResetConfirm = false;\n },\n onCancel: () => {\n pageState.showResetConfirm = false;\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: \"\\u6E05\\u7A7A\\u540E\\uFF0C\\u5BFC\\u822A\\u4F1A\\u6062\\u590D\\u5230 Blocklet \\u539F\\u6709\\u9ED8\\u8BA4\\u7684\\u914D\\u7F6E\"\n })\n })]\n });\n}\nvar _default = ConfigNavigation;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletEnvironmentWithPermission;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _omit = _interopRequireDefault(require(\"lodash/omit\"));\nvar _isEqual = _interopRequireDefault(require(\"lodash/isEqual\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _Switch = _interopRequireDefault(require(\"@mui/material/Switch\"));\nvar _Divider = _interopRequireDefault(require(\"@mui/material/Divider\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _LockIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/LockIcon\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _constant2 = require(\"@blocklet/constant\");\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _schemaForm = _interopRequireDefault(require(\"../schema-form\"));\nvar _formTextInput = _interopRequireDefault(require(\"../form/form-text-input\"));\nvar _node = require(\"../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _permission = require(\"../permission\");\nvar _addDomainAlias = _interopRequireDefault(require(\"./router/action/add-domain-alias\"));\nvar _domainStatus = _interopRequireDefault(require(\"./router/domain-status\"));\nvar _domainActions = _interopRequireDefault(require(\"./router/domain-actions\"));\nvar _walletType = _interopRequireDefault(require(\"./preferences/wallet-type\"));\nvar _appSk = _interopRequireDefault(require(\"./preferences/app-sk\"));\nvar _addCert = _interopRequireDefault(require(\"./add-cert\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"onUpdate\", \"hasPermission\"],\n _excluded2 = [\"value\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletEnvironment(_ref) {\n var _blocklet$settings;\n let {\n blocklet,\n onUpdate,\n hasPermission\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const node = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [cpuCores, setCpuCores] = (0, _react.useState)('');\n const [loading, setLoading] = (0, _react.useState)('');\n const whoCanAccess = (0, _util.getWhoCanAccess)(blocklet);\n const publicToStore = blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$settings = blocklet.settings) === null || _blocklet$settings === void 0 ? void 0 : _blocklet$settings.publicToStore;\n const theme = (0, _useTheme.default)();\n const [editingItem, setEditingItem] = (0, _react.useState)(null);\n const disabled = loading || !hasPermission;\n const {\n inService,\n ws: {\n useSubscription\n }\n } = node;\n const {\n did\n } = blocklet.meta;\n const {\n site\n } = blocklet;\n const domains = (0, _util2.sortDomains)(site === null || site === void 0 ? void 0 : site.domainAliases);\n const clusterMode = (0, _get.default)(blocklet.meta, 'capabilities.clusterMode', false);\n useSubscription(_constant.EVENTS.NODE_RUNTIME_INFO, res => {\n if (clusterMode) {\n setCpuCores((0, _get.default)(res, 'cpu.physicalCores', ''));\n }\n });\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n\n // configurable blocklet environment\n const customType = blocklet.environments.find(x => x.key === 'BLOCKLET_WALLET_TYPE');\n const customDelete = blocklet.environments.find(x => x.key === 'BLOCKLET_DELETABLE');\n const deletable = !customDelete || customDelete.value === 'yes';\n const customUrl = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_URL');\n const customLogoSquare = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO_SQUARE');\n const customLogoRect = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO_RECT');\n const customLogoFavicon = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO_FAVICON');\n const customLogoDeprecated = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO');\n const configurableEnvs = [{\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_NAME,\n description: t('blocklet.config.name'),\n value: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_NAME').value\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_DESCRIPTION,\n description: t('blocklet.config.description'),\n value: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_DESCRIPTION').value\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_URL,\n description: t('blocklet.config.appUrl'),\n value: customUrl ? customUrl.value : ''\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO_SQUARE,\n description: t('blocklet.config.logoSquare'),\n value: customLogoSquare ? customLogoSquare.value : ''\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO_RECT,\n description: t('blocklet.config.logoRect'),\n value: customLogoRect ? customLogoRect.value : ''\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO_FAVICON,\n description: t('blocklet.config.logoFavicon'),\n value: customLogoFavicon ? customLogoFavicon.value : ''\n }, {\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO,\n description: t('blocklet.config.logo'),\n value: customLogoDeprecated ? customLogoDeprecated.value : ''\n }];\n if (clusterMode) {\n const exist = blocklet.configs.find(x => x.key === _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE);\n const value = exist ? exist.value : cpuCores;\n configurableEnvs.push({\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE,\n description: t('blocklet.config.clusterSize'),\n value,\n cpuCores\n });\n }\n const defaultValue = {};\n const schemaList = configurableEnvs.map(item => {\n const {\n value\n } = item,\n props = _objectWithoutProperties(item, _excluded2);\n defaultValue[item.key] = value;\n return _objectSpread({}, props);\n });\n const onPublicToStoreChange = async e => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const {\n checked\n } = e.target;\n const {\n blocklet: data\n } = await node.api.configPublicToStore({\n input: {\n did: blocklet.meta.did,\n publicToStore: checked\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n const onSubmitConfig = async value => {\n if (value.key === _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE) {\n const errMessage = (0, _util2.isValidClusterSize)(value);\n if (errMessage) {\n _toast.default.error(errMessage);\n return;\n }\n }\n const params = [_objectSpread(_objectSpread({}, (0, _omit.default)(editingItem, ['childDid', 'componentType', 'componentProps'])), {}, {\n value\n })];\n try {\n setLoading(true);\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: params\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n const onDeletableChange = async e => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const {\n checked\n } = e.target;\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: [{\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_DELETABLE,\n value: checked ? 'no' : 'yes'\n }]\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n const onWalletTypeChange = async value => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: [{\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_WALLET_TYPE,\n value\n }]\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n const onUpdateCors = async value => {\n const oldValue = site.corsAllowedOrigins || [];\n const newValue = value.split(',').map(x => x.trim()).filter(Boolean);\n if ((0, _isEqual.default)(oldValue, newValue)) {\n return false;\n }\n try {\n setLoading(true);\n const corsAllowedOrigins = newValue.length ? newValue : ['__none__'];\n await node.api.updateRoutingSite({\n input: {\n id: site.id,\n corsAllowedOrigins,\n teamDid: blocklet.meta.did\n }\n });\n setLoading(false);\n } catch (err) {\n _toast.default.error(err.message);\n setLoading(false);\n return false;\n }\n return true;\n };\n const onAppSkChange = async value => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: [{\n key: _constant2.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SK,\n value\n }]\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({}, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_schemaForm.default, {\n disabled: disabled,\n style: {\n marginTop: -24\n },\n loading: loading,\n schema: schemaList,\n defaultValue: defaultValue,\n onChange: (changeValue, _ref2) => {\n let {\n action,\n currentItem\n } = _ref2;\n if (action === 'edit') {\n setEditingItem(currentItem);\n } else if (['cancel', 'confirm'].includes(action)) {\n setEditingItem(null);\n }\n if (action === 'confirm') {\n onSubmitConfig(changeValue[currentItem.key]);\n }\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-form\",\n children: [whoCanAccess === 'all' && blocklet.source === 'registry' && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-label\",\n children: [t('blocklet.config.access.publicToStore'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-desc\",\n children: t('blocklet.config.access.publicInstanceTip')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch.default, {\n disabled: disabled,\n checked: publicToStore,\n defaultChecked: true,\n onChange: onPublicToStoreChange\n })]\n }), !inService && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-label\",\n children: [t('blocklet.config.deletable.name'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-desc\",\n children: deletable ? t('blocklet.config.deletable.disable') : t('blocklet.config.deletable.enable')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch.default, {\n disabled: disabled,\n checked: !deletable,\n defaultChecked: true,\n onChange: onDeletableChange\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n component: _Divider.default,\n my: 3\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-form\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"config-label\",\n children: t('common.domain')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_addDomainAlias.default, {\n id: site.id,\n title: t('router.domain.add.title'),\n teamDid: did,\n children: _ref3 => {\n let {\n open\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n style: {\n marginLeft: 16\n },\n variant: \"contained\",\n color: \"primary\",\n \"data-cy\": \"add-domain-alias\",\n onClick: open,\n disabled: (0, _util2.isInProgress)(blocklet.status),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: '1.3em',\n marginRight: 4\n }\n }), t('common.add')]\n });\n }\n })\n })]\n }), domains.map((domain, index) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n mt: index ? 0 : 1,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_domainStatus.default, {\n domain: domain,\n filters: ['domain']\n }, \"\".concat(domain.value, \"-domain\")), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 2,\n mr: 0.5,\n children: domain.value\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_domainStatus.default, {\n domain: domain,\n filters: ['http']\n }, \"\".concat(domain.value, \"-http\")), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n style: {\n marginLeft: 12\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_addCert.default, {\n domain: domain.value,\n domainStatus: domain.domainStatus,\n did: blocklet.meta.did,\n children: _ref4 => {\n let {\n open\n } = _ref4;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n size: \"small\",\n onClick: e => open(e),\n children: t('router.cert.genLetsEncryptCert.title')\n });\n }\n })]\n }), hasPermission && !domain.isProtected ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_domainActions.default, {\n site: site,\n domain: domain,\n blocklet: blocklet\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.router.domainLockTooltip'),\n placement: \"top\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n disabled: true,\n size: \"large\",\n style: {\n pointerEvents: 'auto',\n // padding replace to margin, fix the tooltip position\n paddingTop: 0,\n paddingBottom: 0,\n margin: '12px 0'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LockIcon.default, {\n style: {\n fill: theme.palette.text.disabled\n }\n })\n })\n })]\n }, domain.value)), !domains.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 4,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n component: _Divider.default,\n my: 3\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n mt: 2,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-label\",\n mb: 0,\n children: t('common.security')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-form\",\n mt: 2,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-label\",\n fontSize: 14,\n mb: 0,\n children: t('router.domainSecurity.cors.title')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mb: 1.5,\n className: \"config-desc\",\n children: t('router.domainSecurity.cors.description', {\n name: 'the blocklet'\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n style: {\n marginTop: 0\n },\n disabled: loading || disabled,\n loading: loading,\n initialValue: (site.corsAllowedOrigins || []).join(', '),\n onSubmit: onUpdateCors\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n component: _Divider.default,\n my: 3\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mb: 2,\n className: \"config-label\",\n fontSize: 20,\n children: t('blocklet.config.dangerZone')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n px: 2,\n py: 1,\n sx: {\n border: '1px solid red',\n borderRadius: 2\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-form\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-label\",\n children: [t('blocklet.config.walletType.name'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-desc\",\n children: t('blocklet.config.walletType.description')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_walletType.default, {\n value: (customType === null || customType === void 0 ? void 0 : customType.value) || 'default',\n disabled: disabled,\n onChange: onWalletTypeChange\n })]\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-form\",\n mt: 2,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-label\",\n fontSize: 14,\n mb: 0,\n children: t('blocklet.config.sk')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_appSk.default, {\n disabled: loading || disabled,\n loading: loading,\n initialValue: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_SK').value,\n onChange: onAppSkChange\n })]\n })]\n })]\n }));\n}\nconst BlockletEnvironmentInDaemon = (0, _permission.withPermission)(BlockletEnvironment, 'mutate_blocklets');\nconst BlockletEnvironmentInService = (0, _permission.withPermission)(BlockletEnvironment, '', _util2.BlockletAdminRoles);\nfunction BlockletEnvironmentWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletEnvironmentInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletEnvironmentInDaemon, _objectSpread({}, props));\n}\nBlockletEnvironment.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n onUpdate: _propTypes.default.func,\n hasPermission: _propTypes.default.bool\n};\nBlockletEnvironment.defaultProps = {\n onUpdate: () => {},\n hasPermission: false\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n padding-top: 24px;\\n .config-form {\\n flex-grow: 1;\\n overflow-y: auto;\\n \", \" {\\n width: 100%;\\n flex-shrink: 0;\\n padding: 0 24px;\\n transform: translate(0, 0);\\n max-height: 60vh;\\n }\\n }\\n\\n .config-item {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n margin: 16px 0;\\n }\\n\\n .config-label {\\n font-weight: bold;\\n }\\n\\n .config-desc {\\n font-weight: normal;\\n font-size: 12px;\\n color: #666;\\n }\\n\\n .form-item {\\n margin-top: 0;\\n }\\n\"])), props => props.theme.breakpoints.down('md'));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletDiskInfo;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletDiskInfo(_ref) {\n let {\n blocklet\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n if (!blocklet.diskInfo) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('blocklet.diskInfo.empty')\n });\n }\n const renderDiskInfo = (dir, size, handler) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n children: [handler ?\n /*#__PURE__*/\n /* eslint-disable-next-line no-script-url, jsx-a11y/anchor-is-valid */\n (0, _jsxRuntime.jsx)(_Link.default, {\n style: {\n cursor: 'pointer'\n },\n onClick: handler,\n underline: \"hover\",\n children: dir\n }) : dir, ' ', /*#__PURE__*/(0, _jsxRuntime.jsx)(\"strong\", {\n children: size ? (0, _filesize.default)(size) : 'empty'\n })]\n });\n const env = blocklet.environments.reduce((acc, x) => {\n acc[x.key] = x.value;\n return acc;\n }, {});\n const rows = [{\n key: 'appDir',\n name: t('blocklet.diskInfo.appDir'),\n value: renderDiskInfo(env.BLOCKLET_APP_DIR, blocklet.diskInfo.app)\n }, {\n key: 'dataDir',\n name: t('blocklet.diskInfo.dataDir'),\n value: renderDiskInfo(env.BLOCKLET_DATA_DIR, blocklet.diskInfo.data)\n }, {\n key: 'logDir',\n name: t('blocklet.diskInfo.logDir'),\n value: renderDiskInfo(env.BLOCKLET_LOG_DIR, blocklet.diskInfo.log)\n }, {\n key: 'cacheDir',\n name: t('blocklet.diskInfo.cacheDir'),\n value: renderDiskInfo(env.BLOCKLET_CACHE_DIR, blocklet.diskInfo.cache)\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: rows.map(row => /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n children: row.value\n }, row.key))\n }));\n}\nBlockletDiskInfo.propTypes = {\n blocklet: _propTypes.default.object.isRequired\n};\nBlockletDiskInfo.defaultProps = {};\nconst Div = (0, _styled.default)(_Typography.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _PlayArrow = _interopRequireDefault(require(\"@mui/icons-material/PlayArrow\"));\nvar _Stop = _interopRequireDefault(require(\"@mui/icons-material/Stop\"));\nvar _Replay = _interopRequireDefault(require(\"@mui/icons-material/Replay\"));\nvar _Autorenew = _interopRequireDefault(require(\"@mui/icons-material/Autorenew\"));\nvar _Settings = _interopRequireDefault(require(\"@mui/icons-material/Settings\"));\nvar _Receipt = _interopRequireDefault(require(\"@mui/icons-material/Receipt\"));\nvar _Group = _interopRequireDefault(require(\"@mui/icons-material/Group\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nvar _default = {\n Start: _PlayArrow.default,\n Stop: _Stop.default,\n Restart: _Replay.default,\n Reload: _Autorenew.default,\n Remove: _Delete.default,\n Config: _Settings.default,\n Log: _Receipt.default,\n Group: _Group.default\n};\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = InstallFromUrl;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _semver = _interopRequireDefault(require(\"semver\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Stepper = _interopRequireDefault(require(\"@mui/material/Stepper\"));\nvar _Step = _interopRequireDefault(require(\"@mui/material/Step\"));\nvar _StepLabel = _interopRequireDefault(require(\"@mui/material/StepLabel\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _node = require(\"../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _didAddress = _interopRequireDefault(require(\"../did-address\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction InstallFromUrl(_ref) {\n let {\n defaultUrl,\n onCancel: _onCancel,\n onSuccess,\n onError,\n mode,\n handleText\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const initMeta = {\n dist: {}\n };\n const [url, setUrl] = (0, _react.useState)(defaultUrl);\n const [activeStep, setActiveStep] = (0, _react.useState)(defaultUrl ? 1 : 0);\n const [meta, setMeta] = (0, _react.useState)(initMeta);\n const [existingMeta, setExistingMeta] = (0, _react.useState)(null);\n const [params, setParams] = (0, _react.useState)({});\n const isComponentMode = mode === 'component';\n // if mode is component , we need to always show the step, that means the user can return to the previous step\n const alwayShowSteps = isComponentMode ? true : !defaultUrl;\n const onGetMeta = async () => {\n setMeta(initMeta);\n setError(null);\n setLoading(true);\n try {\n const decoded = decodeURIComponent(url.trim());\n // validate\n try {\n new URL(decoded); // eslint-disable-line no-new\n } catch (_unused) {\n throw new Error('Invalid URL');\n }\n\n // request\n const {\n meta: newer,\n inStore,\n registryUrl\n } = await api.getBlockletMetaFromUrl({\n input: {\n url: decoded\n }\n });\n\n // if mode is component, never check existing blocklet\n if (isComponentMode) {\n setMeta(newer);\n } else {\n const {\n blocklet: existedBlocklet\n } = await api.getBlocklet({\n input: {\n did: newer.did,\n attachRuntimeInfo: false\n }\n });\n if (existedBlocklet && _semver.default.gte(existedBlocklet.meta.version, newer.version)) {\n setExistingMeta(existedBlocklet.meta);\n setMeta(newer);\n } else {\n setMeta(newer);\n }\n }\n setParams({\n inStore,\n registryUrl,\n inputUrl: url.trim()\n });\n } catch (err) {\n console.error(err);\n const errMsg = \"Blocklet Install failed: \".concat((0, _util2.formatError)(err));\n setError(errMsg);\n onError(err);\n } finally {\n setLoading(false);\n }\n };\n const _onConfirm = async () => {\n if (isComponentMode) {\n onSuccess(_objectSpread({\n meta\n }, params));\n _onCancel();\n return;\n }\n await onInstall();\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 _onCancel();\n } catch (err) {\n const errMsg = \"Blocklet Install failed: \".concat((0, _util2.formatError)(err));\n setError(errMsg);\n } finally {\n setLoading(false);\n }\n };\n (0, _react.useEffect)(() => {\n if (defaultUrl) {\n onGetMeta();\n }\n }, [defaultUrl]); // eslint-disable-line\n\n const rows = [{\n name: t('common.name'),\n value: (0, _util.getDisplayName)({\n meta\n }, true)\n }, {\n name: t('common.version'),\n value: meta.version\n }, {\n name: t('common.did'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: meta.did\n })\n }, {\n name: t('common.author'),\n value: (0, _util2.formatPerson)(meta.author)\n }, {\n name: t('blocklet.dist.downloadLink'),\n value: meta.dist.tarball\n }];\n const getStep1Body = () => {\n if (loading) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n height: 200,\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexDirection: 'column'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n });\n }\n if (meta.did) {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n style: {\n paddingLeft: '10%'\n },\n children: [rows.map(row => {\n if (row.name === t('common.did')) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n nameFormatter: () => t('common.did'),\n children: row.value\n }, row.name);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n children: row.value\n }, row.name);\n }), existingMeta && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n style: {\n margin: '15px 0 0 -16px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [t('blocklet.fromUrl.existTipPrefix'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n content: existingMeta.version,\n style: {\n margin: '0 5px'\n }\n }), t('blocklet.fromUrl.existTipSuffix')]\n })\n })]\n });\n }\n return null;\n };\n const steps = [{\n label: t('blocklet.fromUrl.step0'),\n body: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('blocklet.fromUrl.label'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"url\",\n \"data-cy\": \"blocklet-url-input\",\n fullWidth: true,\n autoFocus: true,\n style: {\n marginBottom: 32\n },\n margin: \"dense\",\n helperText: t('blocklet.fromUrl.description'),\n value: url,\n onChange: e => {\n setError(null);\n setUrl(e.target.value);\n },\n disabled: loading,\n onKeyPress: e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n onGetMeta();\n setActiveStep(1);\n }\n }\n })\n }),\n cancel: t('common.cancel'),\n confirm: t('common.next'),\n onCancel: _onCancel,\n onConfirm: () => {\n onGetMeta();\n setActiveStep(1);\n }\n }, {\n label: t('blocklet.fromUrl.step1'),\n body: getStep1Body(),\n cancel: alwayShowSteps ? t('common.pre') : t('common.cancel'),\n confirm: (handleText === null || handleText === void 0 ? void 0 : handleText.confirm) || (existingMeta ? t('common.confirm') : t('blocklet.fromUrl.confirm')),\n onCancel: () => {\n if (alwayShowSteps) {\n setActiveStep(s => s - 1);\n } else {\n _onCancel();\n }\n },\n onConfirm: () => {\n if (existingMeta) {\n _onCancel();\n } else {\n _onConfirm();\n }\n }\n }];\n const step = steps[activeStep];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: (handleText === null || handleText === void 0 ? void 0 : handleText.title) || t('blocklet.fromUrl.title'),\n fullWidth: true,\n maxWidth: \"md\",\n onClose: () => step.onCancel(),\n showCloseButton: activeStep === 0,\n disableEscapeKeyDown: true,\n open: true,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [step.cancel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n setError(null);\n step.onCancel();\n },\n color: \"inherit\",\n children: step.cancel || t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n step.onConfirm();\n },\n color: \"primary\",\n \"data-cy\": \"install-blocklet-next-step\",\n disabled: loading || !url || error,\n variant: \"contained\",\n autoFocus: true,\n style: {\n marginLeft: 8\n },\n children: [loading && activeStep === 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), step.confirm]\n })]\n }),\n children: [alwayShowSteps && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Stepper.default, {\n alternativeLabel: true,\n activeStep: activeStep,\n children: steps.map(_ref2 => {\n let {\n label\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Step.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_StepLabel.default, {\n children: label\n })\n }, label);\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n style: {\n marginTop: 24\n },\n children: step.body\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n style: {\n width: '100%',\n marginTop: 8\n },\n children: error\n })]\n });\n}\nInstallFromUrl.propTypes = {\n defaultUrl: _propTypes.default.string,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onError: _propTypes.default.func,\n mode: _propTypes.default.oneOf(['install', 'component']),\n handleText: _propTypes.default.object\n};\nInstallFromUrl.defaultProps = {\n onError: () => {},\n defaultUrl: '',\n mode: 'install',\n handleText: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletLog;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _logTerminal = require(\"../logs/log-terminal\");\nvar _download = _interopRequireDefault(require(\"../logs/download\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/**\n * - heights:\n * - header: 64\n * - footer:\n * - xs: 57 + 64\n * - sm: 109 + 64\n * - main content top:\n * - xs: 211 + 32 + 16\n * - md: 160 + 32 + 16\n * - content height:\n * - xs (Mobile) = 100vh - 444\n * - sm (Mobile) = 100vh - 508\n * - md (PC) = 100vh - 445\n */\nfunction BlockletLog(_ref) {\n let {\n blocklet\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const initialData = ['Tip: this tab will only show runtime logs. Please go to \"Blocklet Server\" to view other lifecycle logs of the blocklet (install/start/stop...)', '\\r\\n\\r\\n'];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, _objectSpread(_objectSpread({\n height: {\n xs: 'calc(100vh - 444px)',\n sm: 'calc(100vh - 508px)',\n md: 'calc(100vh - 445px)'\n }\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_logTerminal.LogTerminalGroup, {\n name: (0, _util.getDisplayName)(blocklet),\n logId: \"blocklet-\".concat(blocklet.meta.did),\n initialData: initialData,\n postpend: /*#__PURE__*/(0, _jsxRuntime.jsx)(_download.default, {\n id: blocklet.meta.did,\n name: blocklet.meta.name\n })\n })\n }));\n}\nBlockletLog.propTypes = {\n blocklet: _propTypes.default.object.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletMode;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _tag = _interopRequireDefault(require(\"../tag\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"mode\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletMode(_ref) {\n let {\n mode\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n if (mode === 'development') {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, _objectSpread(_objectSpread({\n type: \"primary\"\n }, rest), {}, {\n children: \"DEV\"\n }));\n }\n return null;\n}\nBlockletMode.propTypes = {\n mode: _propTypes.default.string.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletMonitor;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\nvar _prettyMsI18n = _interopRequireDefault(require(\"pretty-ms-i18n\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Datatable = _interopRequireDefault(require(\"@arcblock/ux/lib/Datatable\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _util2 = require(\"../util\");\nvar _runtimeInfo = _interopRequireDefault(require(\"./runtime-info\"));\nvar _diskInfo = _interopRequireDefault(require(\"./disk-info\"));\nvar _bundleAvatar = _interopRequireDefault(require(\"./bundle-avatar\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction BlockletMonitor() {\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n blocklet,\n runtimeHistory,\n actions: {\n refreshBlocklet\n }\n } = (0, _blocklet.useBlockletContext)();\n const monitList = (0, _react.useMemo)(() => {\n const arr = [];\n (0, _util.forEachBlockletSync)(blocklet, (component, _ref) => {\n let {\n ancestors,\n id,\n level\n } = _ref;\n if (component.runtimeInfo) {\n arr.push({\n type: 'blocklet',\n groupId: blocklet.meta.did,\n groupName: (0, _util.getDisplayName)(blocklet),\n id,\n name: (0, _util.getDisplayName)(component, true),\n blocklet,\n component,\n level: level - 1 >= 0 ? level - 1 : 0,\n runtimeInfo: component.runtimeInfo,\n ancestors\n });\n }\n });\n return arr;\n }, [blocklet]); // eslint-disable-line react-hooks/exhaustive-deps\n\n (0, _react.useEffect)(() => {\n const interval = setInterval(() => {\n refreshBlocklet();\n }, 1000 * 10);\n return () => {\n clearInterval(interval);\n };\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n const formatUptime = uptime => {\n return (0, _prettyMsI18n.default)(Number(uptime || 0), {\n locale: (0, _util2.formatLocale)(locale)\n });\n };\n const monitorColumns = [{\n label: t('common.name'),\n name: 'name',\n options: {\n // eslint-disable-next-line react/no-unstable-nested-components\n customBodyRenderLite(rawIndex) {\n const {\n name,\n component,\n level,\n ancestors\n } = monitList[rawIndex];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n pl: level * 2,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_bundleAvatar.default, {\n size: 14,\n blocklet: component,\n ancestors: ancestors\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 1,\n children: name\n })]\n });\n }\n }\n }, {\n label: t('common.uptime'),\n name: 'runtimeInfo.uptime',\n options: {\n customBodyRenderLite(rawIndex) {\n const {\n runtimeInfo\n } = monitList[rawIndex];\n return formatUptime(runtimeInfo.uptime);\n }\n }\n }, {\n label: t('blocklet.runtimeInfo.memoryUsage'),\n name: 'runtimeInfo.memoryUsage',\n options: {\n customBodyRenderLite(rawIndex) {\n const {\n runtimeInfo\n } = monitList[rawIndex];\n return (0, _filesize.default)((runtimeInfo === null || runtimeInfo === void 0 ? void 0 : runtimeInfo.memoryUsage) || 0);\n }\n }\n }, {\n label: t('blocklet.runtimeInfo.cpuUsage'),\n name: 'runtimeInfo.cpuUsage',\n options: {\n customBodyRenderLite(rawIndex) {\n const {\n runtimeInfo\n } = monitList[rawIndex];\n return \"\".concat((runtimeInfo.cpuUsage || 0).toFixed(1), \"%\");\n }\n }\n }, {\n label: t('blocklet.runtimeInfo.processId'),\n name: 'runtimeInfo.pid'\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 0,\n display: \"flex\",\n alignItems: \"center\",\n className: \"title\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: t('common.runtimeInfo')\n })\n }), blocklet.status === 'running' ? [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_runtimeInfo.default, {\n blocklet: blocklet,\n cpuHistory: runtimeHistory.cpu,\n memoryHistory: runtimeHistory.memory\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 3,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Datatable.default, {\n className: \"monitor-table\",\n locale: locale,\n data: monitList,\n columns: monitorColumns,\n title: \"\",\n options: {\n search: false,\n download: false,\n filter: false,\n print: false,\n viewColumns: false,\n pagination: false,\n rowsPerPage: 100\n }\n })\n })] : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('blocklet.runtimeInfo.noRunning')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: t('common.dataStorage')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_diskInfo.default, {\n blocklet: blocklet\n })]\n });\n}\nBlockletMonitor.propTypes = {};\nconst Div = (0, _styled.default)(_Typography.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .title {\\n font-size: 1.2rem;\\n font-weight: bold;\\n margin-top: \", \";\\n margin-bottom: \", \";\\n &.first {\\n margin-top: 0;\\n }\\n }\\n\"])), props => props.theme.spacing(5), props => props.theme.spacing(3));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletOverview;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _node = require(\"../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _didAddress = _interopRequireDefault(require(\"../did-address\"));\nvar _blockletSource = _interopRequireDefault(require(\"./blocklet-source\"));\nvar _status = _interopRequireDefault(require(\"./status\"));\nvar _version = _interopRequireDefault(require(\"./version\"));\nvar _domainStatus = _interopRequireDefault(require(\"./router/domain-status\"));\nvar _types = require(\"./types\");\nvar _expiration = _interopRequireDefault(require(\"./component/expiration\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction DomainLink(_ref) {\n let {\n domain,\n children\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n href,\n accessibility\n } = domain;\n if (!accessibility || accessibility.loading) {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(LinkDiv, {\n children: [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.router.checkUrlAccessible'),\n placement: \"top-end\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: \"status\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: 12\n })\n })\n })]\n });\n }\n if (!accessibility.accessible) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(LinkDiv, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.router.urlInaccessible'),\n placement: \"top-end\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: children\n })\n })\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(LinkDiv, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n href: href,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n children: children\n })\n });\n}\nDomainLink.propTypes = {\n domain: _types.DomainType.isRequired,\n children: _propTypes.default.any.isRequired\n};\nconst LinkDiv = _styled.default.span(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n &,\\n & > * {\\n color: #222;\\n font-size: 18px;\\n }\\n\\n .status {\\n margin-left: 8px;\\n }\\n\"])));\nconst getEngineRows = (engine, t) => {\n if (!engine) {\n return [];\n }\n return [{\n name: t('common.name'),\n value: engine.displayName\n }, {\n name: t('common.description'),\n value: engine.description\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n children: engine.version\n })\n }];\n};\nfunction BlockletOverview() {\n var _blocklet$settings, _blocklet$site;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n info: nodeInfo,\n inService\n } = (0, _node.useNodeContext)();\n const {\n blocklet,\n loadingRuntimeInfo\n } = (0, _blocklet.useBlockletContext)();\n const {\n value: appDid\n } = (blocklet.environments || []).find(x => x.key === 'BLOCKLET_APP_ID') || {};\n const infoRows = [appDid ? {\n name: t('blocklet.appId'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: appDid\n })\n } : null, {\n name: t('common.name'),\n value: (0, _util.getDisplayName)(blocklet, true)\n }, {\n name: t('common.status'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_status.default, {\n status: blocklet.status,\n source: blocklet.source\n })\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_version.default, {\n blocklet: blocklet\n })\n }, {\n name: t('common.group'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n type: \"success\",\n children: blocklet.meta.group\n })\n }, {\n name: t('common.author'),\n value: (0, _util2.formatPerson)(blocklet.meta.author)\n }, blocklet.controller ? {\n name: t('common.expires'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_expiration.default, {\n controller: blocklet.controller,\n locale: locale\n })\n } : null, {\n name: t('blocklet.installedAt'),\n value: (0, _util2.formatToDatetime)(blocklet.installedAt)\n }, blocklet.status === 'running' ? {\n name: t('blocklet.startedAt'),\n value: (0, _util2.formatToDatetime)(blocklet.startedAt)\n } : null, blocklet.status !== 'running' ? {\n name: t('blocklet.stoppedAt'),\n value: (0, _util2.formatToDatetime)(blocklet.stoppedAt)\n } : null, {\n name: t('blocklet.overview.source'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockletSource.default, {\n sourceInfo: {\n source: blocklet.source,\n deployedFrom: blocklet.deployedFrom\n },\n blocklet: blocklet\n })\n }, {\n name: t('blocklet.overview.deployedFrom'),\n value: blocklet.deployedFrom || '-'\n }, {\n name: t('blocklet.overview.accessControl'),\n value: t(\"team.whoCanAccess.\".concat((0, _util.getWhoCanAccess)(blocklet), \".title\"))\n }, {\n name: t('common.did'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: blocklet.meta.did\n })\n }, {\n name: t('common.owner'),\n value: (_blocklet$settings = blocklet.settings) !== null && _blocklet$settings !== void 0 && _blocklet$settings.owner ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: blocklet.settings.owner.did\n }) : '--'\n }].filter(Boolean);\n if (inService) {\n infoRows.push({\n name: t('common.serverDid'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: nodeInfo.did\n })\n }, {\n name: t('common.serverVersion'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n children: nodeInfo.version\n })\n });\n }\n const engineRows = getEngineRows(blocklet.engine, t);\n const renderRows = rows => rows.map(row => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n nameFormatter: () => row.name,\n children: row.value\n }, row.name);\n });\n const domains = (0, _util2.sortDomains)((_blocklet$site = blocklet.site) === null || _blocklet$site === void 0 ? void 0 : _blocklet$site.domainAliases);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"title first\",\n mb: 0,\n children: t('common.domain')\n })\n }), blocklet.status !== 'running' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: -2,\n mb: 1.5,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"warning\",\n children: t('blocklet.router.noRunning')\n })\n }), domains.map((domain, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n mt: index ? 3 : 0,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_domainStatus.default, {\n domain: domain,\n filters: ['domain']\n }, \"\".concat(domain.value, \"-domain\")), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 2,\n mr: 0.5,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DomainLink, {\n domain: domain,\n target: \"_blank\",\n children: domain.value\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_domainStatus.default, {\n domain: domain,\n filters: ['http']\n }, \"\".concat(domain.value, \"-http\")), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n style: {\n marginLeft: 12\n }\n })]\n })\n }, domain.value)), !domains.length && (loadingRuntimeInfo ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: 16\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: t('common.basicInfo')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"basicInfo\",\n children: renderRows(infoRows)\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: t('common.engine')\n }), engineRows.map(_ref2 => {\n let {\n name,\n value\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n nameWidth: 120,\n name: name,\n children: value\n }, name);\n })]\n })]\n });\n}\nBlockletOverview.propTypes = {};\nconst Div = (0, _styled.default)(_Typography.default)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n .title {\\n font-size: 1.2rem;\\n font-weight: bold;\\n margin-top: \", \";\\n margin-bottom: \", \";\\n &.first {\\n margin-top: 0;\\n }\\n }\\n\"])), props => props.theme.spacing(5), props => props.theme.spacing(3));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AppSk;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _formTextInput = _interopRequireDefault(require(\"../../form/form-text-input\"));\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction AppSk(_ref) {\n let {\n initialValue,\n onChange,\n disabled,\n loading\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [confirmAppSk, setConfirmAppSk] = (0, _react.useState)(null);\n const onAppSkChange = value => {\n setConfirmAppSk({\n value\n });\n return false;\n };\n const _onConfirm = async v => {\n try {\n await onChange(v);\n } finally {\n setConfirmAppSk(null);\n }\n };\n return [/*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n disabled: disabled,\n loading: loading,\n initialValue: initialValue,\n onSubmit: onAppSkChange,\n secure: true\n }), confirmAppSk && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: t('blocklet.config.appSkTitle'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: t('blocklet.config.appSkChangeTip')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n fontWeight: \"bold\",\n mt: 2,\n children: t('blocklet.config.appDidChangeTip')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(UL, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"li\", {\n children: t('blocklet.config.appDidChangeTipL1')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"li\", {\n children: t('blocklet.config.appDidChangeTipL2')\n })]\n })]\n }),\n confirm: t('confirm'),\n cancel: t('cancel'),\n onConfirm: () => _onConfirm(confirmAppSk.value),\n onCancel: () => setConfirmAppSk(null)\n })];\n}\nAppSk.propTypes = {\n initialValue: _propTypes.default.string,\n onChange: _propTypes.default.func,\n disabled: _propTypes.default.bool,\n loading: _propTypes.default.bool\n};\nAppSk.defaultProps = {\n initialValue: 'default',\n onChange: () => {},\n disabled: false,\n loading: false\n};\nconst UL = (0, _styled.default)('ul')(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n padding-left: 16px;\\n li {\\n margin-top: 8px;\\n list-style: disk;\\n font-weight: bold;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletPreferences;\nvar _react = _interopRequireWildcard(require(\"react\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _reactIframe = _interopRequireDefault(require(\"react-iframe\"));\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _material = require(\"@mui/material\");\nvar _TuneRounded = _interopRequireDefault(require(\"@mui/icons-material/TuneRounded\"));\nvar _Key = _interopRequireDefault(require(\"@mui/icons-material/Key\"));\nvar _SettingsOutlined = _interopRequireDefault(require(\"@mui/icons-material/SettingsOutlined\"));\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\nvar _ExpandMore = _interopRequireDefault(require(\"@mui/icons-material/ExpandMore\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Tabs = _interopRequireDefault(require(\"@arcblock/ux/lib/Tabs\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _bundleAvatar = _interopRequireDefault(require(\"../bundle-avatar\"));\nvar _configuration = _interopRequireDefault(require(\"../configuration\"));\nvar _index = _interopRequireDefault(require(\"../access/index\"));\nvar _node = require(\"../../contexts/node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"onUpdate\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nconst addComponentTabs = function addComponentTabs(tabs, blocklet) {\n let ancestors = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n let depth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;\n const key = [...ancestors.map(x => x.meta.did), blocklet.meta.did].join('/');\n tabs.push({\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n pl: Math.max(1, depth - 1) * 2,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_bundleAvatar.default, {\n size: 24,\n blocklet: blocklet,\n ancestors: ancestors\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n color: '#222'\n },\n children: (0, _util.getDisplayName)(blocklet, true)\n })\n })]\n }, key),\n value: key\n });\n if (blocklet.children.length > 0) {\n blocklet.children.forEach(x => {\n addComponentTabs(tabs, x, [...ancestors, blocklet], depth + 1);\n });\n }\n};\nfunction BlockletPreferences(_ref) {\n let {\n blocklet,\n onUpdate\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const {\n info,\n inService\n } = (0, _node.useNodeContext)();\n const [current, setCurrent] = (0, _react.useState)('general');\n const [expandPref, setExpandPref] = (0, _react.useState)(true);\n const tabs = [{\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n display: \"flex\",\n alignItems: \"center\",\n \"data-cy\": \"configuration-tab-general\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TuneRounded.default, {\n sx: {\n fontSize: 24\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n color: '#222'\n },\n children: t('common.general')\n })\n })]\n }, \"general\"),\n value: 'general'\n }, {\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n display: \"flex\",\n alignItems: \"center\",\n \"data-cy\": \"configuration-tab-access\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Key.default, {\n sx: {\n fontSize: 24\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n color: '#222'\n },\n children: t('common.access')\n })\n })]\n }, \"access\"),\n value: 'access'\n }, {\n label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {\n display: \"flex\",\n alignItems: \"center\",\n \"data-cy\": \"configuration-tab-preference\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: -2,\n style: {\n transform: 'translateY(2px)'\n },\n children: expandPref ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {\n fontSize: \"inherit\"\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChevronRight.default, {\n fontSize: \"inherit\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsOutlined.default, {\n sx: {\n fontSize: 24\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n ml: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n color: '#222'\n },\n children: t('common.preferences')\n })\n })]\n }, \"preference\"),\n value: 'preference'\n }];\n if (expandPref) {\n addComponentTabs(tabs, blocklet);\n }\n const onTabChange = x => {\n if (x === 'preference') {\n setExpandPref(!expandPref);\n } else {\n setCurrent(x);\n }\n };\n let content = null;\n if (current === 'general') {\n content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_configuration.default, {\n blocklet: blocklet,\n onUpdate: onUpdate\n });\n } else if (current === 'access') {\n content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.default, {});\n } else {\n // eslint-disable-next-line no-nested-ternary\n const pathPrefix = inService ? _constant.WELLKNOWN_SERVICE_PATH_PREFIX : process.env.NODE_ENV === 'production' ? info.routing.adminPath : '';\n const searchParams = new URLSearchParams();\n if (!inService) {\n searchParams.set('authKey', '__sst');\n }\n searchParams.set('schemaKey', (0, _urlJoin.default)(window.location.origin, pathPrefix, \"/api/preferences?id=\".concat(encodeURIComponent(current))));\n content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIframe.default, {\n url: \"\".concat((0, _urlJoin.default)(window.location.origin, pathPrefix, '/hosted/form-collector/'), \"?\").concat(searchParams.toString()),\n width: \"100%\",\n height: \"100%\",\n frameBorder: 0,\n styles: {\n border: 0\n }\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({}, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Grid, {\n container: true,\n spacing: 4,\n columns: 24,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Grid, {\n item: true,\n sm: 7,\n md: 5,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tabs.default, {\n tabs: tabs,\n current: current,\n orientation: \"vertical\",\n onChange: onTabChange,\n sx: {\n borderRight: 1,\n height: '100%',\n borderColor: 'divider'\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Grid, {\n item: true,\n sm: 17,\n md: 19,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {\n style: {\n minHeight: '66vh',\n height: '100%',\n position: 'relative',\n overflow: 'hidden'\n },\n children: content\n })\n })]\n })\n }));\n}\nBlockletPreferences.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n onUpdate: _propTypes.default.func\n};\nBlockletPreferences.defaultProps = {\n onUpdate: () => {}\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiTab-root {\\n text-align: left;\\n align-items: flex-start;\\n font-weight: normal;\\n }\\n .Mui-selected {\\n font-weight: bold;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = WalletType;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction WalletType(_ref) {\n let {\n value,\n onChange,\n disabled\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [confirmCustomType, setConfirmCustomType] = (0, _react.useState)(null);\n const WalletTypes = [{\n label: 'DID',\n value: 'default'\n }, {\n label: 'ETH',\n value: 'eth'\n }];\n const onWalletTypeChange = async e => {\n setConfirmCustomType({\n value: e.target.value\n });\n };\n const _onConfirm = async v => {\n try {\n await onChange(v);\n } finally {\n setConfirmCustomType(null);\n }\n };\n return [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n disabled: disabled,\n select: true,\n size: \"small\",\n value: value || 'default',\n onChange: onWalletTypeChange,\n children: WalletTypes.map(type => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledMenuItem, {\n value: type.value,\n sx: {\n display: 'block'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: type.label\n })\n })\n });\n })\n }), confirmCustomType && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: t('blocklet.config.walletTypeTitle'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n dangerouslySetInnerHTML: {\n __html: t('blocklet.config.blockletTypeChangeTip', {\n value: WalletTypes.find(x => x.value === confirmCustomType.value).label\n })\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n fontWeight: \"bold\",\n mt: 2,\n children: t('blocklet.config.appDidChangeTip')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(UL, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"li\", {\n children: t('blocklet.config.appDidChangeTipL1')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"li\", {\n children: t('blocklet.config.appDidChangeTipL2')\n })]\n })]\n }),\n confirm: t('confirm'),\n cancel: t('cancel'),\n onConfirm: () => _onConfirm(confirmCustomType.value),\n onCancel: () => setConfirmCustomType(null)\n })];\n}\nWalletType.propTypes = {\n value: _propTypes.default.string,\n onChange: _propTypes.default.func,\n disabled: _propTypes.default.bool\n};\nWalletType.defaultProps = {\n value: 'default',\n onChange: () => {},\n disabled: false\n};\nconst StyledMenuItem = (0, _styled.default)(_MenuItem.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .tip {\\n font-size: 12px;\\n color: \", \";\\n }\\n\"])), props => props.theme.palette.text.secondary);\nconst UL = (0, _styled.default)('ul')(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n padding-left: 16px;\\n li {\\n margin-top: 8px;\\n list-style: disk;\\n font-weight: bold;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CustomSelect = CustomSelect;\nexports.useStyles = exports.commonProps = void 0;\nvar _styles = require(\"@mui/styles\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _List = _interopRequireDefault(require(\"@mui/material/List\"));\nvar _ListItem = _interopRequireDefault(require(\"@mui/material/ListItem\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ShoppingCart = _interopRequireDefault(require(\"@mui/icons-material/ShoppingCart\"));\nvar _VerifiedUser = _interopRequireDefault(require(\"@mui/icons-material/VerifiedUser\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Colors = _interopRequireDefault(require(\"@arcblock/ux/lib/Colors\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst commonProps = {\n meta: _propTypes.default.object.isRequired,\n onCancel: _propTypes.default.func.isRequired\n};\nexports.commonProps = commonProps;\nconst useStyles = (0, _styles.makeStyles)(() => ({\n dialogAuth: {\n padding: '0 0 24px !important',\n '& .auth-title': {\n textAlign: 'center !important',\n marginBottom: '4px !important'\n },\n '& .auth-tip--scan': {\n textAlign: 'center !important'\n }\n },\n iconRoot: {\n minWidth: 48\n }\n}));\nexports.useStyles = useStyles;\nfunction CustomSelect(_ref) {\n let {\n action,\n onSelect,\n onNext\n } = _ref;\n const classes = useStyles();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const options = [{\n action: 'purchase',\n title: t('store.purchase.purchase.title'),\n description: t('store.purchase.purchase.description')\n }, {\n action: 'verify',\n title: t('store.purchase.verify.title'),\n description: t('store.purchase.verify.description')\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_List.default, {\n className: classes.tabPanel,\n children: options.map(x => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ListItem.default, {\n button: true,\n selected: action === x.action,\n onClick: () => onSelect(x.action),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n className: classes.iconRoot,\n children: x.action === 'purchase' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ShoppingCart.default, {\n style: {\n color: action === 'purchase' ? _Colors.default.primary.main : '#AAA',\n fontSize: 32\n }\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_VerifiedUser.default, {\n style: {\n color: action === 'verify' ? _Colors.default.primary.main : '#AAA',\n fontSize: 32\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: x.title,\n secondary: x.description\n })]\n }, x.action))\n }), onNext && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n fullWidth: true,\n disabled: !action,\n variant: \"contained\",\n color: \"primary\",\n style: {\n marginTop: 16\n },\n onClick: onNext,\n children: t('common.next')\n })]\n });\n}\nCustomSelect.propTypes = {\n action: _propTypes.default.oneOf(['both', 'purchase', 'verify']).isRequired,\n onSelect: _propTypes.default.func.isRequired,\n onNext: _propTypes.default.func.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ComponentPurchase = ComponentPurchase;\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Connect = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Connect\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _pWaitFor = _interopRequireDefault(require(\"p-wait-for\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _util2 = require(\"../../util\");\nvar _api = require(\"../../util/api\");\nvar _common = require(\"./common\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"mode\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction ComponentPurchase(_ref) {\n let {\n meta,\n onCancel,\n mode,\n handlePaySuccess\n } = _ref;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const {\n info\n } = (0, _node.useNodeContext)();\n const webWalletUrl = (0, _util2.getWebWalletUrl)(info);\n const [nw, setNw] = (0, _react.useState)(null);\n const baseUrl = new URL(meta === null || meta === void 0 ? void 0 : meta.registryUrl).origin;\n const name = (0, _util.getDisplayName)({\n meta\n });\n const handleConnectSuccess = async (result, decrypt) => {\n const success = async _ref2 => {\n let {\n downloadTokenList\n } = _ref2;\n handlePaySuccess({\n downloadTokenList\n });\n };\n const failure = async errorMessage => {\n _toast.default.error(errorMessage);\n onCancel(errorMessage);\n };\n async function handleConnectSessionStatus(url) {\n return (0, _pWaitFor.default)(() => {\n return _api.api.get(url).then(async _ref3 => {\n let {\n data\n } = _ref3;\n const downloadTokenList = data === null || data === void 0 ? void 0 : data.downloadTokenList;\n if (data.status === 'succeed') {\n if (downloadTokenList && downloadTokenList.length) {\n await success({\n downloadTokenList\n });\n } else {\n await failure(t('blocklet.component.missDownloadTokenTip'));\n return true;\n }\n return true;\n }\n if (data.status === 'error') {\n console.error('vc error: ', data);\n await failure(data === null || data === void 0 ? void 0 : data.error);\n return true;\n }\n return false;\n });\n }, {\n interval: 1000\n });\n }\n if (mode === 'purchase' && nw) {\n const {\n statusUrl\n } = (0, _util2.extractStatusUrlFromNextWorkflow)(nw);\n // poll status url, to get download token\n await handleConnectSessionStatus(statusUrl);\n } else {\n await success({\n downloadTokenList: result.downloadTokenList && decrypt(result.downloadTokenList)\n });\n }\n };\n (0, _react.useEffect)(() => {\n // only purchase mode has nw\n if (mode === 'purchase') {\n const nextWorkflowUrl = new URL(baseUrl);\n nextWorkflowUrl.pathname = '/api/did/verify-purchase-blocklet/token';\n nextWorkflowUrl.searchParams.set('serverDid', info.did);\n nextWorkflowUrl.searchParams.set('blockletDid', meta === null || meta === void 0 ? void 0 : meta.did);\n try {\n _api.api.get(nextWorkflowUrl.href).then(_ref4 => {\n let {\n data\n } = _ref4;\n const url = \"\".concat(data.url);\n setNw(url);\n });\n } catch (error) {\n console.error('get next workflow url error: ', error);\n }\n }\n return () => {\n setNw(null);\n };\n }, [mode]); // eslint-disable-line\n\n // If nw does not exist, then connect should not be render\n if (mode === 'purchase' && !nw) {\n return '';\n }\n const modePropsMap = {\n verify: {\n action: 'verify-purchase-blocklet',\n checkFn: _api.axios.create({\n baseURL: baseUrl\n }).get,\n extraParams: {\n serverDid: info.did,\n blockletDid: meta === null || meta === void 0 ? void 0 : meta.did\n },\n messages: {\n title: t('store.purchase.verify.auth.title', {\n name\n }),\n scan: t('store.purchase.verify.auth.scan'),\n confirm: t('store.purchase.verify.auth.confirm'),\n success: t('store.purchase.verify.auth.success')\n }\n },\n purchase: {\n action: 'acquire-asset',\n checkFn: _api.axios.create({\n baseURL: (0, _urlJoin.default)(baseUrl, '/store')\n }).get,\n extraParams: {\n factory: meta.nftFactory,\n nw\n },\n messages: {\n title: t('store.purchase.auth.title', {\n name\n }),\n scan: t('store.purchase.auth.scan'),\n confirm: t('store.purchase.auth.confirm'),\n success: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: t('store.purchase.auth.success')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"p\", {\n children: t('blocklet.component.purchaseComponentSecondCheckTip')\n })]\n })\n }\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Connect.default, _objectSpread({\n open: true,\n locale: locale,\n popup: false,\n saveConnect: false,\n className: \"connect\",\n baseUrl: baseUrl,\n onSuccess: handleConnectSuccess,\n cancelWhenScanned: onCancel,\n onClose: onCancel,\n checkTimeout: 60 * 5000,\n webWalletUrl: webWalletUrl,\n disableClose: true,\n showDownload: false\n }, modePropsMap[mode]));\n}\nComponentPurchase.propTypes = _objectSpread(_objectSpread({}, _common.commonProps), {}, {\n handlePaySuccess: _propTypes.default.func,\n mode: _propTypes.default.oneOf(['verify', 'purchase']).isRequired\n});\nComponentPurchase.defaultProps = {\n handlePaySuccess: () => {}\n};\nconst ComponentPurchaseSelect = /*#__PURE__*/(0, _react.forwardRef)((_ref5, ref) => {\n let {\n mode\n } = _ref5,\n rest = _objectWithoutProperties(_ref5, _excluded);\n const [action, setAction] = (0, _react.useState)(mode !== 'both' ? mode : 'verify');\n const [step, setStep] = (0, _react.useState)(mode !== 'both' ? 2 : 1);\n const onSelect = async act => {\n if (act === action) {\n return;\n }\n setAction(act);\n };\n const onNext = async () => {\n if (!action) {\n return;\n }\n if (step === 2) {\n return;\n }\n setStep(2);\n };\n\n // expose the func and activeStep\n (0, _react.useImperativeHandle)(ref, () => ({\n onNext,\n getCurrentStep: () => {\n return step;\n }\n }));\n if (step === 1) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n maxWidth: 520\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_common.CustomSelect, {\n action: action,\n onNext: null,\n onSelect: onSelect\n })\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentPurchase, _objectSpread(_objectSpread({}, rest), {}, {\n mode: action\n }));\n});\nComponentPurchaseSelect.propTypes = {\n mode: _propTypes.default.oneOf(['both', 'verify', 'purchase']).isRequired,\n ref: _propTypes.default.any\n};\nComponentPurchaseSelect.defaultProps = {\n ref: {}\n};\nvar _default = ComponentPurchaseSelect;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"ComponentPurchaseSelect\", {\n enumerable: true,\n get: function get() {\n return _componentPurchase.default;\n }\n});\nvar _componentPurchase = _interopRequireDefault(require(\"./component-purchase\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddDomainAlias;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _CallMerge = _interopRequireDefault(require(\"@mui/icons-material/CallMerge\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _confirm = _interopRequireDefault(require(\"../../../confirm\"));\nvar _util = require(\"../../../util\");\nvar _node = require(\"../../../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction AddDomainAlias(_ref) {\n let {\n id,\n children,\n title,\n teamDid\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async params => {\n setLoading(true);\n try {\n await api.addDomainAlias({\n input: {\n id,\n domainAlias: params.domain.trim(),\n teamDid\n }\n });\n await (0, _util.sleep)(2000);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setConfirmSetting(null);\n setLoading(false);\n }\n };\n const onEnter = async (params, confirm, setError) => {\n try {\n await confirm(params);\n } catch (err) {\n setError((0, _util.formatError)(err));\n } finally {\n setLoading(false);\n }\n };\n const setting = {\n title: title || t('router.domainAlias.add.title'),\n // eslint-disable-next-line react/no-unstable-nested-components\n description: (params, setParams, setError) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('router.domainAlias.add.domainDescription'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"domain\",\n \"data-cy\": \"add-domain\",\n fullWidth: true,\n autoFocus: true,\n inputProps: {\n 'data-cy': 'domain-name-input'\n },\n value: params.domain,\n style: {\n marginBottom: 8\n },\n margin: \"dense\",\n onChange: e => {\n const domain = e.target.value.trim();\n const errMsg = (0, _util2.validateDomain)(domain, t);\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n domain,\n __disableConfirm: !!errMsg\n }));\n if (errMsg) {\n setError(errMsg);\n } else {\n setError('');\n }\n },\n onKeyPress: e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n const domain = e.target.value.trim();\n const errMsg = (0, _util2.validateDomain)(domain, t);\n if (errMsg) {\n setError(errMsg);\n } else {\n onEnter(params, onConfirm, setError);\n }\n }\n }\n })\n }),\n confirm: t('common.confirm'),\n cancel: t('common.cancel'),\n params: {\n domain: '',\n __disableConfirm: true\n },\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"rule-action\",\n \"data-cy\": \"action-add-domain-alias\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_CallMerge.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('router.domainAlias.add.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel,\n color: \"primary\"\n })]\n });\n}\nAddDomainAlias.propTypes = {\n id: _propTypes.default.string.isRequired,\n children: _propTypes.default.any,\n title: _propTypes.default.string,\n teamDid: _propTypes.default.string\n};\nAddDomainAlias.defaultProps = {\n children: null,\n title: '',\n teamDid: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddRule;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Link = _interopRequireDefault(require(\"@mui/icons-material/Link\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@abtnode/constant\");\nvar _node = require(\"../../../contexts/node\");\nvar _blocklet = require(\"../../../contexts/blocklet\");\nvar _confirm = _interopRequireDefault(require(\"../../../confirm\"));\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _util = require(\"../util\");\nvar _configRoutingRule = _interopRequireDefault(require(\"./config-routing-rule\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction AddRule(_ref) {\n let {\n children\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const teamDid = blocklet.meta.did;\n const siteId = blocklet.site.id;\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async params => {\n try {\n const err = await (0, _util.validateRule)(params, t);\n if (err) {\n throw err;\n }\n setLoading(true);\n const rule = {\n from: {\n pathPrefix: params.pathPrefix.trim()\n },\n to: {\n type: params.type\n }\n };\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT) {\n rule.to.url = params.url.trim();\n rule.to.redirectCode = params.redirectCode;\n }\n await api.addRoutingRule({\n input: {\n id: siteId,\n rule,\n teamDid\n }\n });\n } catch (error) {\n _toast.default.error(error.message);\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n title: t('router.rule.add.title'),\n // eslint-disable-next-line react/no-unstable-nested-components\n description: (params, setParams, setError) => {\n const setValue = value => {\n setError(null);\n const validateResult = (0, _util.validateRule)(value, t);\n if (validateResult) {\n setParams(_objectSpread(_objectSpread({}, value), {}, {\n __disableConfirm: true\n }));\n return;\n }\n setParams(_objectSpread({}, value));\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('router.rule.add.pathPrefix'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"pathPrefix\",\n \"data-cy\": \"path-prefix-input\",\n fullWidth: true,\n autoFocus: true,\n helperText: t('router.rule.add.pathPrefixTip'),\n style: {\n marginBottom: 32\n },\n margin: \"dense\",\n value: params.pathPrefix,\n onChange: e => {\n let disable = false;\n const validateResult = (0, _util.validatePathPrefix)({\n params: _objectSpread(_objectSpread({}, params), {}, {\n pathPrefix: e.target.value\n }),\n blocklets: [blocklet]\n });\n setError(validateResult);\n if (params.type === _constant.ROUTING_RULE_TYPES.BLOCKLET && validateResult) {\n disable = true;\n }\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT && !params.url) {\n disable = true;\n }\n if (!e.target.value.trim()) {\n disable = true;\n setError(t('router.validation.pathPrefixRequired'));\n }\n if (!disable) {\n setError('');\n }\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n pathPrefix: e.target.value,\n __disableConfirm: disable\n }));\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_configRoutingRule.default, {\n params: params,\n setParams: setValue,\n setError: setError\n })]\n });\n },\n confirm: t('router.rule.add.confirm'),\n cancel: t('common.cancel'),\n params: {\n pathPrefix: '',\n type: _constant.ROUTING_RULE_TYPES.REDIRECT,\n interfaceName: '',\n redirectCode: 302,\n __disableConfirm: true\n },\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"rule-action\",\n \"data-cy\": \"action-add-rule\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('router.rule.add.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel,\n color: \"primary\"\n })]\n });\n}\nAddRule.propTypes = {\n children: _propTypes.default.any\n};\nAddRule.defaultProps = {\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ConfigRoutingRule;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@abtnode/constant\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction ConfigRoutingRule(_ref) {\n let {\n params,\n setParams,\n setError,\n serviceTypes\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const redirectCodesMap = {\n 301: t('common.redirectPermanently'),\n 302: t('common.redirectTemporary'),\n 307: t('common.redirectTemporary'),\n 308: t('common.redirectPermanently')\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n select: true,\n label: t('router.domain.add.type'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"type\",\n \"data-cy\": \"domain-add-type\",\n fullWidth: true,\n value: params.type,\n onChange: e => {\n setError('');\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n type: e.target.value,\n __disableConfirm: false\n }));\n },\n style: {\n marginBottom: 32\n },\n SelectProps: {},\n children: serviceTypes.map(_ref2 => {\n let {\n name,\n value\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: value,\n children: name\n }, value);\n })\n }), params.type === _constant.ROUTING_RULE_TYPES.REDIRECT && [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n select: true,\n label: t('router.domain.add.redirect'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"type\",\n fullWidth: true,\n value: params.redirectCode,\n onChange: e => setParams(_objectSpread(_objectSpread({}, params), {}, {\n redirectCode: e.target.value\n })),\n style: {\n marginBottom: 32\n },\n SelectProps: {},\n children: Object.keys(redirectCodesMap).map(code => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: code,\n children: \"\".concat(redirectCodesMap[code], \" - \").concat(code)\n }, code))\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.redirectUrl'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"url\",\n \"data-cy\": \"redirect-url-input\",\n fullWidth: true,\n autoFocus: true,\n value: params.url,\n helperText: t('router.urlHelperText'),\n style: {\n marginBottom: 32\n },\n onChange: e => {\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n url: e.target.value,\n __disableConfirm: !e.target.value.trim()\n }));\n if (!e.target.value.trim()) {\n setError(t('router.validation.redirectUrlRequired'));\n } else {\n setError('');\n }\n }\n })]]\n });\n}\nConfigRoutingRule.propTypes = {\n params: _propTypes.default.object,\n serviceTypes: _propTypes.default.array,\n setParams: _propTypes.default.func,\n setError: _propTypes.default.func\n};\nConfigRoutingRule.defaultProps = {\n params: {},\n serviceTypes: [{\n name: 'Redirect',\n value: _constant.ROUTING_RULE_TYPES.REDIRECT\n }, {\n name: 'Default - User will see the 404 page',\n value: _constant.ROUTING_RULE_TYPES.NONE\n }],\n setParams: () => {},\n setError: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DeleteDomainAlias;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _confirm = _interopRequireDefault(require(\"../../../confirm\"));\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _node = require(\"../../../contexts/node\");\nvar _util = require(\"../../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DeleteDomainAlias(props) {\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const {\n id,\n domain,\n children,\n teamDid\n } = props;\n const {\n api\n } = (0, _node.useNodeContext)();\n if (domain === window.location.hostname) {\n return '';\n }\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n setLoading(true);\n try {\n await api.deleteDomainAlias({\n input: {\n id,\n domainAlias: domain,\n teamDid\n }\n });\n await (0, _util.sleep)(2000);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setConfirmSetting(null);\n setLoading(false);\n }\n };\n const setting = {\n title: t('router.domainAlias.delete.title'),\n description: t('router.domainAlias.delete.description'),\n confirm: t('common.confirm'),\n onConfirm,\n onCancel\n };\n const onClick = e => {\n e.stopPropagation();\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n edge: \"end\",\n onClick: onClick,\n size: \"small\",\n className: \"rule-action\",\n color: \"error\",\n \"data-cy\": \"action-delete-domain-alias\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {\n style: {\n fontSize: 16\n }\n }), t('router.domainAlias.delete.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nDeleteDomainAlias.propTypes = {\n id: _propTypes.default.string.isRequired,\n domain: _propTypes.default.string.isRequired,\n children: _propTypes.default.any,\n teamDid: _propTypes.default.string\n};\nDeleteDomainAlias.defaultProps = {\n children: null,\n teamDid: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DeleteRule;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _node = require(\"../../../contexts/node\");\nvar _blocklet = require(\"../../../contexts/blocklet\");\nvar _deleteConfirm = _interopRequireDefault(require(\"../../../delete-confirm\"));\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DeleteRule(_ref) {\n let {\n id: ruleId,\n from,\n children\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const teamDid = blocklet.meta.did;\n const siteId = blocklet.site.id;\n const name = from.pathPrefix;\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n setLoading(true);\n try {\n await api.deleteRoutingRule({\n input: {\n id: siteId,\n ruleId,\n teamDid\n }\n });\n } catch (error) {\n _toast.default.error(error.message);\n } finally {\n setConfirmSetting(null);\n setLoading(false);\n }\n };\n const setting = {\n keyName: name,\n title: t('router.rule.delete.title'),\n description: t('router.rule.delete.description', {\n name: \"<b>\".concat(name, \"</b>\")\n }),\n confirmPlaceholder: t('router.rule.delete.confirm_desc', {\n name\n }),\n confirm: t('common.delConfirm'),\n cancel: t('router.rule.delete.cancel'),\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"rule-action\",\n \"data-cy\": \"action-delete-rule\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('router.rule.delete.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_deleteConfirm.default, {\n keyName: confirmSetting.keyName,\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirmPlaceholder: confirmSetting.confirmPlaceholder,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nDeleteRule.propTypes = {\n id: _propTypes.default.string.isRequired,\n from: _propTypes.default.object.isRequired,\n children: _propTypes.default.any\n};\nDeleteRule.defaultProps = {\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = UpdateRule;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _node = require(\"../../../contexts/node\");\nvar _blocklet = require(\"../../../contexts/blocklet\");\nvar _confirm = _interopRequireDefault(require(\"../../../confirm\"));\nvar _toast = _interopRequireDefault(require(\"../../../toast\"));\nvar _util = require(\"../util\");\nvar _configRoutingRule = _interopRequireDefault(require(\"./config-routing-rule\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction UpdateRule(_ref) {\n let {\n id: ruleId,\n from,\n to,\n children\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const teamDid = blocklet.meta.did;\n const siteId = blocklet.site.id;\n const name = from.pathPrefix;\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async params => {\n try {\n const err = await (0, _util.validateRule)(params, t);\n if (err) {\n throw err;\n }\n setLoading(true);\n const rule = {\n id: ruleId,\n from: {\n pathPrefix: params.pathPrefix.trim()\n },\n to: {\n type: params.type\n }\n };\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT) {\n rule.to.url = params.url;\n rule.to.redirectCode = params.redirectCode;\n }\n await api.updateRoutingRule({\n input: {\n id: siteId,\n rule,\n teamDid\n }\n });\n } catch (error) {\n _toast.default.error(error.message);\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n title: t('router.rule.update.title'),\n // eslint-disable-next-line react/no-unstable-nested-components\n description: (params, setParams, setError) => {\n const setValue = value => {\n const validateResult = (0, _util.validateRule)(value, t);\n if (validateResult) {\n setParams(_objectSpread(_objectSpread({}, value), {}, {\n __disableConfirm: true\n }));\n return;\n }\n setParams(_objectSpread({}, value));\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('router.rule.add.pathPrefix'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"pathPrefix\",\n \"data-cy\": \"path-prefix-input\",\n fullWidth: true,\n autoFocus: true,\n helperText: t('router.rule.add.pathPrefixTip'),\n style: {\n marginBottom: 32\n },\n margin: \"dense\",\n value: params.pathPrefix,\n onChange: e => {\n let disable = false;\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT && !params.url) {\n disable = true;\n }\n if (!e.target.value.trim()) {\n disable = true;\n setError(t('router.validation.pathPrefixRequired'));\n }\n if (!disable) {\n setError('');\n }\n setParams(_objectSpread(_objectSpread({}, params), {}, {\n pathPrefix: e.target.value,\n __disableConfirm: disable\n }));\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_configRoutingRule.default, {\n params: params,\n setParams: setValue,\n setError: setError\n })]\n });\n },\n confirm: t('router.rule.update.confirm'),\n cancel: t('router.rule.update.cancel'),\n color: 'primary',\n params: {\n pathPrefix: name === '/' ? name : name.replace(/^\\/+/, '').replace(/\\/+$/, ''),\n type: to.type || _constant.ROUTING_RULE_TYPES.BLOCKLET,\n interfaceName: to.interfaceName || '',\n redirectCode: to.redirectCode || 302,\n url: to.url || '',\n __disableConfirm: false\n },\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n // eslint-disable-next-line no-unused-expressions\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n loading,\n open: onMenuItemClick\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n onClick: onMenuItemClick,\n className: \"rule-action\",\n \"data-cy\": \"action-update-rule\",\n children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Edit.default, {\n style: {\n fontSize: 18,\n marginRight: 5\n }\n }), t('router.rule.update.title')]\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n color: confirmSetting.color,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nUpdateRule.propTypes = {\n id: _propTypes.default.string.isRequired,\n from: _propTypes.default.object.isRequired,\n to: _propTypes.default.object.isRequired,\n children: _propTypes.default.any\n};\nUpdateRule.defaultProps = {\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DomainActions;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _actions = _interopRequireDefault(require(\"../../actions\"));\nvar _deleteDomainAlias = _interopRequireDefault(require(\"./action/delete-domain-alias\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DomainActions(_ref) {\n let {\n site,\n domain,\n blocklet\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_actions.default, {\n \"data-cy\": \"domain-actions\",\n actions: [\n // eslint-disable-next-line react/no-unstable-nested-components\n _ref2 => {\n var _blocklet$meta;\n let {\n close\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_deleteDomainAlias.default, {\n id: site.id,\n domain: domain.value,\n teamDid: blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.did,\n children: _ref3 => {\n let {\n open\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n disabled: domain.isProtected,\n dense: true,\n onClick: e => {\n close();\n open(e);\n },\n \"data-cy\": \"action-toggle-block\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n style: {\n minWidth: 24,\n marginRight: 8\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: t('common.delete')\n })]\n }, \"remove\");\n }\n });\n }]\n });\n}\nDomainActions.propTypes = {\n site: _propTypes.default.object.isRequired,\n domain: _propTypes.default.object.isRequired,\n blocklet: _propTypes.default.object.isRequired\n};\nDomainActions.defaultProps = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DomainStatus;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Https = _interopRequireDefault(require(\"@mui/icons-material/Https\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _dot = _interopRequireDefault(require(\"../../dot\"));\nvar _types = require(\"../types\");\nvar _util = require(\"../../util\");\nvar _certificate = _interopRequireDefault(require(\"../../certificate\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DomainStatus(_ref) {\n let {\n domain,\n filters\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n value: name,\n domainStatus\n } = domain;\n if (!(0, _util.shouldCheckDomainStatus)(name)) {\n return null;\n }\n let domainIcon = null;\n let httpsIcon = null;\n const {\n isHttps,\n matchedCert\n } = domainStatus;\n if (!(0, _util.checkIsWildcardDomain)(name)) {\n const {\n dns: {\n resolved,\n ip\n } = {}\n } = domainStatus;\n if (resolved || ip === '127.0.0.1') {\n domainIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('router.domain.verify.ok'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_dot.default, {\n color: \"success\"\n })\n });\n } else {\n domainIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('router.domain.verify.notResolved'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_dot.default, {\n color: \"error\"\n })\n });\n }\n }\n if (isHttps) {\n httpsIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_certificate.default, {\n certificate: matchedCert\n });\n } else {\n httpsIcon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('router.domain.https.bad'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Https.default, {\n style: {\n color: '#D0021B',\n fontSize: 20,\n marginLeft: 8,\n cursor: 'pointer'\n }\n })\n });\n }\n const items = filters.map(x => {\n if (x === 'domain') {\n return domainIcon;\n }\n if (x === 'http') {\n return httpsIcon;\n }\n return null;\n });\n return /*#__PURE__*/(0, _react.createElement)(_react.Fragment, null, ...items);\n}\nDomainStatus.propTypes = {\n domain: _types.DomainType.isRequired,\n filters: _propTypes.default.array\n};\nDomainStatus.defaultProps = {\n filters: ['domain', 'http']\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = RuleActions;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _Launch = _interopRequireDefault(require(\"@mui/icons-material/Launch\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _SettingsOutlined = _interopRequireDefault(require(\"@mui/icons-material/SettingsOutlined\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _blocklet = require(\"../../contexts/blocklet\");\nvar _deleteRule = _interopRequireDefault(require(\"./action/delete-rule\"));\nvar _updateRule = _interopRequireDefault(require(\"./action/update-rule\"));\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction RuleActions(rule) {\n const {\n locale\n } = (0, _context.useLocaleContext)();\n const {\n blocklet,\n recommendedDomain: domain\n } = (0, _blocklet.useBlockletContext)();\n const href = (0, _util.getAccessUrl)(domain, rule.from.pathPrefix, (0, _util.getBlockletUrlParams)(blocklet, locale));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n title: href,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Launch.default, {})\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_updateRule.default, _objectSpread(_objectSpread({}, rule), {}, {\n children: _ref => {\n let {\n open: o\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: o,\n disabled: rule.isProtected,\n \"data-cy\": \"action-update-rule\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsOutlined.default, {})\n });\n }\n })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_deleteRule.default, _objectSpread(_objectSpread({}, rule), {}, {\n children: _ref2 => {\n let {\n open\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: open,\n disabled: rule.isProtected,\n \"data-cy\": \"action-delete-rule\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Delete.default, {})\n });\n }\n }))]\n });\n}\nRuleActions.propTypes = {\n isProtected: _propTypes.default.bool\n};\nRuleActions.defaultProps = {\n isProtected: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = RuleListWithPermission;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _isUrl = _interopRequireDefault(require(\"is-url\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\nvar _LockIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/LockIcon\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@abtnode/constant\");\nvar _util = require(\"../../util\");\nvar _blocklet = require(\"../../contexts/blocklet\");\nvar _node = require(\"../../contexts/node\");\nvar _permission = require(\"../../permission\");\nvar _line = _interopRequireDefault(require(\"../component/line\"));\nvar _ruleActions = _interopRequireDefault(require(\"./rule-actions\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction RedirectRule(_ref) {\n let {\n domain,\n isHttps,\n toUrl\n } = _ref;\n const scheme = isHttps ? 'https' : 'http';\n let tmpToUrl = toUrl;\n if (!(0, _isUrl.default)(tmpToUrl)) {\n tmpToUrl = \"\".concat(scheme, \"://\").concat(domain).concat(toUrl);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n href: tmpToUrl,\n target: \"_blank\",\n style: {\n fontSize: 14\n },\n underline: \"hover\",\n children: toUrl\n }, tmpToUrl);\n}\nRedirectRule.propTypes = {\n domain: _propTypes.default.string.isRequired,\n toUrl: _propTypes.default.string.isRequired,\n isHttps: _propTypes.default.bool\n};\nRedirectRule.defaultProps = {\n isHttps: false\n};\nfunction RuleList(_ref2) {\n let {\n hasPermission\n } = _ref2;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n const theme = (0, _useTheme.default)();\n const {\n blocklet,\n recommendedDomain: domain\n } = (0, _blocklet.useBlockletContext)();\n const rules = blocklet.site.rules.filter(rule => rule.to.did !== blocklet.meta.did).filter(rule => rule.to.type !== _constant.ROUTING_RULE_TYPES.BLOCKLET);\n return rules.map(rule => {\n let avatarName = '';\n if (rule.to.type === _constant.ROUTING_RULE_TYPES.NONE) {\n avatarName = '404';\n } else if (rule.to.type === _constant.ROUTING_RULE_TYPES.REDIRECT) {\n avatarName = rule.to.redirectCode;\n }\n const action = rule.isProtected ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.router.urlLockTooltip'),\n placement: \"top\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n disabled: true,\n size: \"large\",\n style: {\n pointerEvents: 'auto',\n // padding replace to margin, fix the tooltip position\n paddingTop: 0,\n paddingBottom: 0,\n margin: '12px 0'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LockIcon.default, {\n style: {\n fill: theme.palette.text.disabled\n }\n })\n })\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ruleActions.default, _objectSpread({}, rule));\n return [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n py: 2,\n className: \"component-item\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n width: {\n xs: 300,\n md: 400\n },\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n width: 28\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n children: avatarName\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n ml: \"16px\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n style: {\n color: '#222',\n fontSize: 18\n },\n children: [rule.to.type === _constant.ROUTING_RULE_TYPES.NONE && t('common.page404'), rule.to.type === _constant.ROUTING_RULE_TYPES.REDIRECT && t('common.redirect')]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: rule.to.type === _constant.ROUTING_RULE_TYPES.REDIRECT && /*#__PURE__*/(0, _jsxRuntime.jsx)(RedirectRule, {\n domain: domain,\n toUrl: rule.to.url\n })\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n px: 2,\n sx: {\n display: {\n xs: 'none',\n md: 'flex'\n }\n },\n alignItems: \"center\",\n flexGrow: \"1\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n href: (0, _util.getAccessUrl)(domain, rule.from.pathPrefix, (0, _util.getBlockletUrlParams)(blocklet, locale)),\n target: \"_blank\",\n style: {\n fontSize: 18\n },\n underline: \"hover\",\n children: rule.from.pathPrefix\n })\n }, rule.from.pathPrefix), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: hasPermission && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n textAlign: 'right'\n },\n children: action\n })\n }, \"actions\")]\n }, \"group-not-gateway-box\"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_line.default, {})];\n });\n}\nRuleList.propTypes = {\n hasPermission: _propTypes.default.bool\n};\nRuleList.defaultProps = {\n hasPermission: false\n};\nconst RuleListInDaemon = (0, _permission.withPermission)(RuleList, 'mutate_blocklets');\nconst RuleListInService = (0, _permission.withPermission)(RuleList, '', _util.BlockletAdminRoles);\nfunction RuleListWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(RuleListInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(RuleListInDaemon, _objectSpread({}, props));\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.validateSite = exports.validateRule = exports.validatePathPrefix = exports.validateDomain = exports.isSpecialDomain = exports.getInitialBlockletDid = void 0;\nvar _constant = require(\"@abtnode/constant\");\nvar _isPathPrefixEqual = _interopRequireDefault(require(\"@abtnode/util/lib/is-path-prefix-equal\"));\nvar _constant2 = require(\"@blocklet/constant\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n/* eslint-disable import/prefer-default-export */\n\nconst validateRuleByServiceType = (params, localeContext) => {\n if (params.type === _constant.ROUTING_RULE_TYPES.REDIRECT) {\n if (!params.url) {\n return new Error(\"\".concat(localeContext('router.validation.redirectUrlRequired')));\n }\n if (!params.redirectCode) {\n return new Error(\"redirect \".concat(localeContext('router.validation.redirectCodeRequired')));\n }\n } else if (params.type === _constant.ROUTING_RULE_TYPES.BLOCKLET) {\n if (!params.did) {\n return new Error(localeContext('router.validation.didRequired'));\n }\n }\n return null;\n};\nconst validateDomain = (domain, localeContext) => {\n if (!domain) {\n return localeContext('router.domain.validate.emptyTip');\n }\n if (domain.endsWith(_constant.DEFAULT_IP_DOMAIN_SUFFIX)) {\n return localeContext('router.domain.validate.suffixTip', {\n suffix: _constant.DEFAULT_IP_DOMAIN_SUFFIX\n });\n }\n return null;\n};\n\n/**\n * form validator of add site(add domain)\n * @param {Object} params form params\n * @param {Function} localeContext error message\n */\nexports.validateDomain = validateDomain;\nconst validateSite = (params, localeContext) => {\n const validateResult = validateRuleByServiceType(params, localeContext);\n if (validateResult) {\n return validateResult;\n }\n const errMsg = validateDomain(params.domain, localeContext);\n if (errMsg) {\n return new Error(errMsg);\n }\n return null;\n};\n\n/**\n * form validator of add_rule and update_rule\n * @param {Object} params form params\n * @param {Function} localeContext error message\n */\nexports.validateSite = validateSite;\nconst validateRule = (params, localeContext) => {\n const validateResult = validateRuleByServiceType(params, localeContext);\n if (validateResult) {\n return validateResult;\n }\n if (!params.pathPrefix.length) {\n return new Error(localeContext('router.validation.pathPrefixCannotBeEmpty'));\n }\n if (params.pathPrefix.length > 150) {\n return new Error(localeContext('router.validation.pathPrefixTooLong', {\n length: 150\n }));\n }\n return null;\n};\nexports.validateRule = validateRule;\nconst validatePathPrefix = _ref => {\n let {\n params,\n blocklets,\n blocklet: curBlocklet,\n locale = 'en'\n } = _ref;\n // validate children\n if (curBlocklet) {\n let exist = (curBlocklet.children || []).find(x => (0, _isPathPrefixEqual.default)(x.mountPoint, params.pathPrefix));\n if (curBlocklet.meta.group !== 'gateway' && params.pathPrefix === '/') {\n exist = '/';\n }\n if (exist) {\n return {\n zh: \"\\u6302\\u8F7D\\u70B9 \".concat(params.pathPrefix, \" \\u5DF2\\u5B58\\u5728\\uFF0C\\u8BF7\\u4F7F\\u7528\\u5176\\u4ED6\\u6302\\u8F7D\\u70B9\"),\n en: \"The mount point \".concat(params.pathPrefix, \" already exist, please use another mount point\")\n }[locale];\n }\n }\n const blocklet = blocklets.find(item => item.meta.did === params.did);\n if (!blocklet) {\n return '';\n }\n const selected = blocklet.meta.interfaces.find(x => x.type === 'web');\n if (!selected) {\n return '';\n }\n if (selected.prefix !== _constant2.BLOCKLET_DYNAMIC_PATH_PREFIX && params.pathPrefix !== selected.prefix) {\n return {\n zh: \"\\u8BE5 blocklet \\u53EA\\u80FD\\u6302\\u8F7D\\u5728 \".concat(selected.prefix),\n en: \"This blocklet can only be mounted on \".concat(selected.prefix)\n }[locale];\n }\n return '';\n};\n\n/**\n * get initial blocklet did when add rule / update rule / add domain\n * @param {array} blocklets\n */\nexports.validatePathPrefix = validatePathPrefix;\nconst getInitialBlockletDid = blocklets => {\n if (blocklets.length === 0) {\n return '';\n }\n const {\n searchParams\n } = new URL(window.location.href);\n const fromDid = searchParams.get('fromDid');\n if (fromDid) {\n const blocklet = blocklets.find(x => x.meta.did === fromDid);\n if (blocklet) {\n return blocklet.meta.did;\n }\n }\n return blocklets[0].meta.did;\n};\nexports.getInitialBlockletDid = getInitialBlockletDid;\nconst isSpecialDomain = name => {\n const specialDomains = [_constant.DOMAIN_FOR_IP_SITE_REGEXP, _constant.DOMAIN_FOR_DEFAULT_SITE, _constant.DOMAIN_FOR_IP_SITE];\n if (typeof window !== 'undefined' && typeof window.location !== 'undefined') {\n specialDomains.push(window.location.hostname);\n }\n return specialDomains.includes(name);\n};\nexports.isSpecialDomain = isSpecialDomain;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletRuntimeInfo;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Grid = _interopRequireDefault(require(\"@mui/material/Grid\"));\nvar _cpu = _interopRequireDefault(require(\"../monitor/cpu\"));\nvar _memory = _interopRequireDefault(require(\"../monitor/memory\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"blocklet\", \"cpuHistory\", \"memoryHistory\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction BlockletRuntimeInfo(_ref) {\n let {\n blocklet,\n cpuHistory,\n memoryHistory\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const runtimeInfo = blocklet.appRuntimeInfo || {};\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Grid.default, {\n className: \"page-metrics\",\n container: true,\n spacing: 5,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n lg: 4,\n md: 6,\n sm: 6,\n xs: 12,\n children: !!cpuHistory.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_cpu.default, {\n currentLoad: runtimeInfo.cpuUsage || 0,\n history: cpuHistory,\n style: {\n height: 150\n },\n hideDescription: true\n })\n }, \"cpu\"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n lg: 4,\n md: 6,\n sm: 6,\n xs: 12,\n children: !!memoryHistory.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_memory.default, {\n used: runtimeInfo.memoryUsage || 0,\n history: memoryHistory,\n style: {\n height: 150\n },\n hideDescription: true\n })\n }, \"memory\")]\n })\n }));\n}\nBlockletRuntimeInfo.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n cpuHistory: _propTypes.default.arrayOf(_propTypes.default.shape({\n date: _propTypes.default.number,\n value: _propTypes.default.number\n })),\n memoryHistory: _propTypes.default.arrayOf(_propTypes.default.shape({\n date: _propTypes.default.number,\n value: _propTypes.default.number\n }))\n};\nBlockletRuntimeInfo.defaultProps = {\n cpuHistory: [],\n memoryHistory: []\n};\nconst Div = (0, _styled.default)(_Typography.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletStatus;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _dot = _interopRequireDefault(require(\"../dot\"));\nvar _tag = _interopRequireDefault(require(\"../tag\"));\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"status\", \"variant\", \"source\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nconst colors = {\n yellow: '#FFCF71',\n grey: '#888888'\n};\nfunction BlockletStatus(_ref) {\n let {\n status,\n variant,\n source\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const map = {\n added: 'primary',\n waiting: 'warning',\n downloading: 'warning',\n downloaded: 'primary',\n installing: 'warning',\n installed: 'primary',\n starting: 'warning',\n running: 'success',\n stopping: 'warning',\n stopped: 'reverse',\n error: 'error',\n upgrading: 'warning',\n restarting: 'warning',\n corrupted: 'error',\n deleting: 'warning'\n };\n const colorMap = {\n added: colors.grey,\n waiting: colors.yellow,\n downloading: colors.yellow,\n downloaded: colors.grey,\n installing: colors.yellow,\n installed: colors.grey,\n starting: colors.yellow,\n running: 'success',\n stopping: colors.yellow,\n stopped: colors.grey,\n error: 'error',\n upgrading: colors.yellow,\n restarting: colors.yellow,\n corrupted: 'error',\n deleting: colors.yellow\n };\n const inProgress = (0, _util.isInProgress)(status);\n const statusTxt = t(\"blocklet.status.\".concat(source === 'custom' && status === 'installed' ? 'created' : status));\n if (variant === 'dot') {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('blocklet.statusTip', {\n status: statusTxt\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_dot.default, _objectSpread({\n color: colorMap[status]\n }, rest))\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_tag.default, _objectSpread(_objectSpread({\n type: map[status]\n }, rest), {}, {\n children: [inProgress && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [12, 6],\n color: \"inherit\",\n style: {\n marginRight: 5\n }\n }), statusTxt]\n }));\n}\nBlockletStatus.propTypes = {\n status: _propTypes.default.string.isRequired,\n variant: _propTypes.default.oneOf(['dot', 'tag']),\n source: _propTypes.default.string\n};\nBlockletStatus.defaultProps = {\n variant: 'tag',\n source: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Storage;\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Connect = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Connect\"));\nvar _react = require(\"react\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@blocklet/constant\");\nvar _axios = _interopRequireDefault(require(\"axios\"));\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _lodash = require(\"lodash\");\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _material = require(\"@mui/material\");\nvar _blocklet = require(\"../../lib/contexts/blocklet\");\nvar _node = require(\"../contexts/node\");\nvar _toast = _interopRequireDefault(require(\"../../lib/toast\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction Storage() {\n var _localStorage$getItem, _blocklet$environment, _blocklet$environment2, _blocklet$environment3;\n const options = [\n // TODO: 测试用,上线后才需删除\n {\n value: (_localStorage$getItem = localStorage.getItem('test-spaces')) !== null && _localStorage$getItem !== void 0 && _localStorage$getItem.startsWith('http') ? localStorage.getItem('test-spaces') : 'https://bbqazi2fhuczchrlggs4njj2bucbvnwjjm2xlq6yk6i.did.abtnet.io',\n label: 'test spaces'\n }, {\n value: 'https://storage.staging.abtnet.io/app',\n label: 'staging spaces'\n }, {\n value: 'https://service.didspaces.com/app',\n label: 'prod spaces'\n }];\n\n /** @type {{ api: import('@abtnode/client').ABTNodeClient }} */\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n t,\n locale\n } = (0, _react.useContext)(_context.LocaleContext);\n const [errorMessage, setErrorMessage] = (0, _react.useState)(false);\n /** @type {{ blocklet: import('@abtnode/client').BlockletState }} */\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const [endpoint, setEndpoint] = (0, _react.useState)(((_blocklet$environment = blocklet.environments.find(e => e.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SPACE_ENDPOINT)) === null || _blocklet$environment === void 0 ? void 0 : _blocklet$environment.value) || '');\n const [didSpacesUrl, setDidSpacesUrl] = (0, _react.useState)((_blocklet$environment2 = (_blocklet$environment3 = blocklet.environments.find(e => e.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SPACES_URL)) === null || _blocklet$environment3 === void 0 ? void 0 : _blocklet$environment3.value) !== null && _blocklet$environment2 !== void 0 ? _blocklet$environment2 : options[0].value);\n const [isLoading, setIsLoading] = (0, _react.useState)(false);\n const {\n appDid\n } = blocklet;\n const {\n title: appName,\n description: appDescription\n } = blocklet.meta;\n\n /**\n *\n * @param {string} did\n * @param {string} storageEndpoint\n */\n async function saveStorageEndpoint(did, storageEndpoint) {\n await api.configBlocklet({\n input: {\n did: [did],\n configs: [{\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SPACES_URL,\n value: didSpacesUrl\n }, {\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SPACE_ENDPOINT,\n value: storageEndpoint\n }]\n }\n }).then(() => {\n _toast.default.success(t('storage.didSpaces.getSpacesAuthorizeSuccessfully', locale));\n }).catch(error => {\n console.error(error);\n _toast.default.error(error.message);\n });\n }\n const onAuthorizeConnectSuccess = async (response, decrypt) => {\n setEndpoint(decrypt(response.endpoint));\n await saveStorageEndpoint(blocklet.meta.did, decrypt(response.endpoint));\n setTimeout(() => {\n setAuthorizeConnect(preValue => _objectSpread(_objectSpread({}, preValue), {}, {\n open: false\n }));\n }, 3000);\n };\n const [authorizeConnect, setAuthorizeConnect] = (0, _react.useState)({\n open: false,\n action: 'one-click-authorization',\n checkTimeout: 1000 * 300,\n checkFn: _axios.default.create({\n baseURL: (0, _urlJoin.default)(didSpacesUrl, 'space')\n }).get,\n onClose: () => {\n setAuthorizeConnect(preValue => _objectSpread(_objectSpread({}, preValue), {}, {\n open: false\n }));\n }\n });\n const handleOnClickAuthorize = async () => {\n if ((0, _lodash.isEmpty)(didSpacesUrl)) {\n _toast.default.error(t('storage.didSpaces.addressCannotEmpty', locale));\n return;\n }\n setAuthorizeConnect(preValue => _objectSpread(_objectSpread({}, preValue), {}, {\n prefix: (0, _urlJoin.default)(didSpacesUrl, 'space/api/did'),\n baseUrl: new URL(didSpacesUrl).origin,\n checkFn: _axios.default.create({\n baseURL: (0, _urlJoin.default)(didSpacesUrl, 'space')\n }).get,\n extraParams: {\n appDid,\n appName,\n appDescription,\n scopes: 'list:object read:object write:object'\n },\n open: true\n }));\n };\n const onDidSpacesUrlChange = event => {\n const {\n value\n } = event.target;\n if ((0, _lodash.isEmpty)(value)) {\n setErrorMessage(t('storage.didSpaces.addressCannotEmpty', locale));\n return;\n }\n setErrorMessage(null);\n setDidSpacesUrl(value);\n };\n const onBackup = async () => {\n try {\n if (isLoading) {\n return;\n }\n setIsLoading(true);\n await api.backupToSpaces({\n input: {\n did: blocklet.appDid\n }\n });\n _toast.default.success(t('storage.didSpaces.backupSuccessfully'));\n } catch (error) {\n _toast.default.error(error.message);\n console.error(error);\n } finally {\n setIsLoading(false);\n }\n };\n (0, _react.useEffect)(() => {\n setAuthorizeConnect(preValue => _objectSpread(_objectSpread({}, preValue), {}, {\n messages: {\n title: t('storage.didSpaces.authorize.title', {\n appName\n }),\n scan: t('storage.didSpaces.authorize.scan', {\n appName\n }),\n confirm: '',\n success: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n gutterBottom: true,\n children: t('storage.didSpaces.authorize.success')\n })\n }\n }));\n }, [appName, locale, t]);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Container, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(StorageUrlTextField, {\n select: true,\n sx: {\n marginTop: '20px'\n },\n label: t('storage.didSpaces.label'),\n value: didSpacesUrl,\n onChange: onDidSpacesUrlChange,\n autoFocus: true,\n size: \"small\",\n error: !!errorMessage,\n helperText: errorMessage,\n InputProps: {\n endAdornment: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n variant: \"contained\",\n onClick: handleOnClickAuthorize,\n size: \"small\",\n sx: {\n position: 'absolute',\n right: 0,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n width: '140px',\n height: '100%'\n },\n children: endpoint ? t('storage.didSpaces.reAuthorization') : t('storage.didSpaces.goToAuthorization')\n })\n },\n children: options.map(option => /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.MenuItem, {\n value: option.value,\n children: option.label\n }, option.value))\n }), endpoint && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n color: \"text.secondary\",\n sx: {\n marginTop: '20px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"inline\",\n children: [t('storage.didSpaces.tips'), \": \\xA0\", ' ', /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"inline\",\n color: \"primary.main\",\n fontWeight: \"fontWeightBold\",\n children: t('storage.didSpaces.getSpacesAuthorizeSuccessfully')\n })]\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n justifyContent: \"center\",\n sx: {\n maxWidth: '580px',\n marginTop: '20px',\n padding: '0px 0px'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onBackup,\n loading: isLoading,\n variant: \"contained\",\n color: \"primary\",\n \"data-cy\": \"add-domain-alias\",\n disabled: !endpoint || isLoading,\n children: t('storage.didSpaces.backup')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Connect.default, {\n prefix: authorizeConnect.prefix,\n open: authorizeConnect.open,\n popup: true,\n action: authorizeConnect.action,\n baseUrl: authorizeConnect.baseUrl,\n checkFn: authorizeConnect.checkFn,\n onSuccess: onAuthorizeConnectSuccess,\n onClose: authorizeConnect.onClose,\n checkTimeout: authorizeConnect.checkTimeout,\n extraParams: authorizeConnect.extraParams,\n messages: authorizeConnect.messages,\n locale: locale\n })]\n });\n}\nconst Container = (0, _styled.default)('div')(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n height: 100%;\\n overflow-y: auto;\\n\"])));\nconst StorageUrlTextField = (0, _styled.default)(_material.TextField)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n height: 56px;\\n width: 580px;\\n \", \" {\\n width: 75%;\\n }\\n input.MuiInputBase-input {\\n width: calc(100% - 144px);\\n }\\n\"])), props => props.theme.breakpoints.down('md'));\nStorage.propTypes = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.DomainType = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n// eslint-disable-next-line import/prefer-default-export\nconst DomainType = _propTypes.default.shape({\n href: _propTypes.default.string,\n accessibility: _propTypes.default.shape({\n loading: _propTypes.default.bool,\n accessible: _propTypes.default.bool\n }),\n domainStatus: _propTypes.default.shape({\n isHttps: _propTypes.default.bool,\n matchedCert: _propTypes.default.object\n }),\n dns: _propTypes.default.shape({\n resolved: _propTypes.default.bool,\n ip: _propTypes.default.string\n })\n});\nexports.DomainType = DomainType;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletVersion;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _semver = _interopRequireDefault(require(\"semver\"));\nvar _notistack = require(\"notistack\");\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _ArrowUpward = _interopRequireDefault(require(\"@mui/icons-material/ArrowUpward\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Toast = _interopRequireDefault(require(\"@arcblock/ux/lib/Toast\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _constant = require(\"@blocklet/constant\");\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _tag = _interopRequireDefault(require(\"../tag\"));\nvar _confirm = _interopRequireDefault(require(\"../confirm\"));\nvar _node = require(\"../contexts/node\");\nvar _util2 = require(\"../util\");\nvar _permission = require(\"../permission\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"blocklet\", \"checkUpgrade\", \"hasPermission\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction Version(_ref) {\n let {\n blocklet,\n checkUpgrade,\n hasPermission\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const [newVersionBlocklet, setNewVersionBlocklet] = (0, _react.useState)(null);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n (0, _react.useEffect)(() => {\n setNewVersionBlocklet(null);\n if (checkUpgrade && blocklet.mode !== _constant.BLOCKLET_MODES.DEVELOPMENT) {\n api.getLatestBlockletVersion({\n input: {\n did: blocklet.meta.did,\n version: blocklet.meta.version\n }\n }).then(_ref2 => {\n let {\n data\n } = _ref2;\n if (data) {\n const {\n version,\n registryUrl\n } = data;\n if (version && _semver.default.gt(version, blocklet.meta.version)) {\n setNewVersionBlocklet({\n version,\n registryUrl\n });\n }\n }\n })\n // eslint-disable-next-line max-len\n .catch(err => console.error(\"Failed to fetch latest version: \".concat(blocklet.meta.name, \", error: \").concat((0, _util2.formatError)(err)))); // prettier-ignore\n }\n }, [blocklet, checkUpgrade]); // eslint-disable-line\n\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n setLoading(true);\n try {\n const input = {\n did: blocklet.meta.did,\n version: newVersionBlocklet.version,\n storeUrl: newVersionBlocklet.registryUrl || ''\n };\n await (0, _util2.sleep)(2000);\n await api.upgradeBlocklet({\n input\n });\n } catch (err) {\n enqueueSnackbar(\"Blocklet upgrade failed: \".concat((0, _util2.formatError)(err)), {\n autoHideDuration: 5000,\n variant: 'error'\n });\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n title: \"\".concat(t('common.upgrade'), \" \").concat(t('common.blocklet'), \" \").concat((0, _util.getDisplayName)(blocklet)),\n description: t('blocklet.action.upgradeDescription'),\n confirm: t('blocklet.action.confirmUpgrade'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n };\n if (hasPermission && newVersionBlocklet && !(0, _util2.isInProgress)(blocklet.status)) {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, _objectSpread(_objectSpread({}, rest), {}, {\n children: blocklet.meta.version\n })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.updateAvailable', {\n version: newVersionBlocklet.version\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n size: \"small\",\n style: {\n marginLeft: 8\n },\n disabled: loading,\n onClick: () => setConfirmSetting(setting),\n children: loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ArrowUpward.default, {\n style: {\n fontSize: 16,\n color: 'red'\n }\n })\n })\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Toast.default, {\n variant: \"error\",\n message: error,\n onClose: () => setError('')\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, _objectSpread(_objectSpread({}, rest), {}, {\n children: blocklet.meta.version\n }));\n}\nVersion.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n checkUpgrade: _propTypes.default.bool,\n hasPermission: _propTypes.default.bool\n};\nVersion.defaultProps = {\n checkUpgrade: true,\n hasPermission: false\n};\nconst BlockletVersionInDaemon = (0, _permission.withPermission)(Version, 'mutate_blocklets');\nconst BlockletVersionInService = (0, _permission.withPermission)(Version, '', _util2.BlockletAdminRoles);\nfunction BlockletVersion(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletVersionInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletVersionInDaemon, _objectSpread({}, props));\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Certificate;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _Https = _interopRequireDefault(require(\"@mui/icons-material/Https\"));\nvar _Popover = _interopRequireDefault(require(\"@mui/material/Popover\"));\nvar _Card = _interopRequireDefault(require(\"@mui/material/Card\"));\nvar _CardContent = _interopRequireDefault(require(\"@mui/material/CardContent\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _util = require(\"./util\");\nvar _node = require(\"./contexts/node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction Certificate(_ref) {\n let {\n certificate\n } = _ref;\n const [anchorEl, setAnchorEl] = (0, _react.useState)(null);\n const node = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const handlePopoverOpen = event => {\n setAnchorEl(event.currentTarget);\n };\n const handlePopoverClose = () => {\n setAnchorEl(null);\n };\n const open = Boolean(anchorEl);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Https.default, {\n \"aria-owns\": open ? 'mouse-over-popover' : undefined,\n onMouseEnter: handlePopoverOpen,\n onMouseLeave: handlePopoverClose,\n style: {\n color: '#44cdc6',\n fontSize: 20,\n marginLeft: 8,\n cursor: 'pointer'\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Popover.default, {\n id: \"mouse-over-popover\",\n style: {\n pointerEvents: 'none'\n },\n open: open,\n anchorEl: anchorEl,\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'left'\n },\n transformOrigin: {\n vertical: 'top',\n horizontal: 'left'\n },\n onClose: handlePopoverClose,\n disableRestoreFocus: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Card.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_CardContent.default, {\n style: {\n display: 'flex'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n src: \"\".concat(node.imgPrefix, \"/https-certificate-icon.png\"),\n alt: \"certificate icon\",\n style: {\n maxHeight: '100%',\n maxWidth: '100%'\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n style: {\n marginLeft: '16px'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n style: {\n fontWeight: 'bold'\n },\n children: certificate.domain\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: \"\".concat(t('common.issuer'), \": \").concat((0, _get.default)(certificate, 'issuer.commonName', ''))\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: \"\".concat(t('router.cert.issuedOn'), \": \").concat((0, _util.formatToDate)(certificate.validFrom))\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: \"\".concat(t('router.cert.expiryOn'), \": \").concat((0, _util.formatToDate)(certificate.validTo))\n })]\n })]\n })\n })\n })]\n });\n}\nCertificate.propTypes = {\n certificate: _propTypes.default.object\n};\nCertificate.defaultProps = {\n certificate: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ClickToCopy;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _ClickToCopy = _interopRequireDefault(require(\"@arcblock/ux/lib/ClickToCopy\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"children\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ClickToCopy(_ref) {\n let {\n children\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ClickToCopy.default, _objectSpread(_objectSpread({\n tip: t('common.copyTip'),\n copiedTip: t('common.copiedTip')\n }, rest), {}, {\n children: children\n }));\n}\nClickToCopy.propTypes = {\n children: _propTypes.default.any.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ConfirmDialog;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Dialog = _interopRequireDefault(require(\"@mui/material/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogActions = _interopRequireDefault(require(\"@mui/material/DialogActions\"));\nvar _DialogContent = _interopRequireDefault(require(\"@mui/material/DialogContent\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _DialogTitle = _interopRequireDefault(require(\"@mui/material/DialogTitle\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _util = require(\"./util\");\nvar _mobileWidth = _interopRequireDefault(require(\"./hooks/mobile-width\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ConfirmDialog(_ref) {\n let {\n title,\n description,\n showCancel,\n cancel,\n confirm,\n color,\n params: initialParams,\n onCancel,\n onConfirm\n } = _ref;\n const [params, setParams] = (0, _react.useState)(initialParams);\n const [open, setOpen] = (0, _react.useState)(true);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const {\n t: changeLocale\n } = (0, _context.useLocaleContext)();\n const theme = (0, _useTheme.default)();\n const onCallback = async cb => {\n if (typeof cb === 'function') {\n setLoading(true);\n try {\n await cb(params);\n setOpen(false);\n } catch (err) {\n setError((0, _util.formatError)(err));\n console.error(err);\n } finally {\n setLoading(false);\n }\n } else {\n setOpen(false);\n }\n };\n const t = typeof title === 'function' ? title() : title;\n const d = typeof description === 'function' ? description(params, setParams, setError) : description;\n const isBreakpointsDownSm = (0, _useMediaQuery.default)(theme.breakpoints.down('md'));\n const handleClick = e => {\n e.stopPropagation();\n };\n const {\n minWidth\n } = (0, _mobileWidth.default)();\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(StyledDialog, {\n onClick: handleClick,\n fullScreen: isBreakpointsDownSm,\n open: open,\n style: {\n minWidth\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogTitle.default, {\n children: t\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_DialogContent.default, {\n style: {\n minWidth\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: d\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"error\",\n style: {\n width: '100%',\n marginTop: 8\n },\n children: error\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_DialogActions.default, {\n className: \"delete-actions\",\n style: {\n padding: '8px 24px 24px'\n },\n children: [showCancel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n onCallback(onCancel);\n },\n color: \"inherit\",\n \"data-cy\": \"cancel-confirm-dialog\",\n children: cancel || changeLocale('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n onCallback(onConfirm);\n },\n color: color\n // eslint-disable-next-line no-underscore-dangle\n ,\n disabled: params.__disableConfirm || loading,\n variant: \"contained\",\n \"data-cy\": \"submit-confirm-dialog\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), confirm]\n })]\n })]\n });\n}\nConfirmDialog.propTypes = {\n title: _propTypes.default.any.isRequired,\n description: _propTypes.default.any.isRequired,\n // can be a function that renders different content based on params\n showCancel: _propTypes.default.bool,\n cancel: _propTypes.default.string,\n color: _propTypes.default.string,\n confirm: _propTypes.default.string,\n params: _propTypes.default.object,\n // This object holds states managed in the dialog\n onCancel: _propTypes.default.func,\n onConfirm: _propTypes.default.func.isRequired\n};\nConfirmDialog.defaultProps = {\n onCancel: () => {},\n showCancel: true,\n cancel: '',\n confirm: 'Confirm',\n color: 'error',\n params: {}\n};\nconst StyledDialog = (0, _styled.default)(_Dialog.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .delete-actions .Mui-disabled {\\n color: rgba(0, 0, 0, 0.26) !important;\\n box-shadow: none;\\n background-color: rgba(0, 0, 0, 0.12) !important;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.AuditLogContext = exports.AuditLogConsumer = void 0;\nexports.AuditLogProvider = AuditLogProvider;\nexports.useAuditLogContext = useAuditLogContext;\nvar _react = require(\"react\");\nvar _useLocalStorage = _interopRequireDefault(require(\"react-use/lib/useLocalStorage\"));\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _node = require(\"./node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst AuditLogContext = /*#__PURE__*/(0, _react.createContext)({});\nexports.AuditLogContext = AuditLogContext;\nconst {\n Provider,\n Consumer\n} = AuditLogContext;\n\n// eslint-disable-next-line react/prop-types\nexports.AuditLogConsumer = Consumer;\nfunction AuditLogProvider(_ref) {\n let {\n children,\n scope = ''\n } = _ref;\n const {\n api: client\n } = (0, _node.useNodeContext)();\n const [auditLogs, setAuditLogs] = (0, _react.useState)([]);\n const [paging, setPaging] = (0, _react.useState)({\n total: 0,\n pageSize: 20,\n pageCount: 0,\n page: 1\n });\n const [loading, setLoading] = (0, _react.useState)(false);\n const [category, setCategory] = (0, _useLocalStorage.default)(\"audit-log-category-\".concat(scope), 'all');\n const fetchLogs = async function fetchLogs() {\n let {\n page = 1,\n silent = true\n } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (loading) {\n return;\n }\n if (!silent) {\n setLoading(true);\n }\n try {\n // eslint-disable-next-line no-shadow\n const res = await client.getAuditLogs({\n input: {\n paging: {\n page\n },\n category: category === 'all' ? '' : category,\n scope\n }\n });\n setAuditLogs(res.list);\n setPaging(res.paging);\n setLoading(false);\n } catch (err) {\n _toast.default.error(err.message);\n setLoading(false);\n }\n };\n (0, _react.useEffect)(() => {\n fetchLogs({\n page: 1,\n silent: false\n });\n }, []); // eslint-disable-line\n\n (0, _react.useEffect)(() => {\n fetchLogs({\n page: 1,\n silent: false\n });\n }, [category]); // eslint-disable-line\n\n const value = {\n loading,\n fetch: fetchLogs,\n filter: {\n category,\n scope\n },\n categories: [{\n value: 'all',\n label: 'All',\n description: ''\n }, {\n value: 'blocklet',\n label: 'Blocklet Management',\n description: ''\n }, {\n value: 'server',\n label: 'Server Management',\n description: ''\n }, {\n value: 'team',\n label: 'Team Management',\n description: ''\n }, {\n value: 'security',\n label: 'Security',\n description: ''\n }, {\n value: 'certificates',\n label: 'Certificate Management',\n description: ''\n }, {\n value: 'integrations',\n label: 'Integration Management',\n description: ''\n }, {\n value: 'gateway',\n label: 'Gateway',\n description: ''\n }],\n setCategory,\n data: auditLogs,\n paging\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Provider, {\n value: {\n auditLogs: value\n },\n children: children\n });\n}\nfunction useAuditLogContext() {\n const {\n auditLogs\n } = (0, _react.useContext)(AuditLogContext);\n return auditLogs;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.DeletingBlockletProvider = DeletingBlockletProvider;\nexports.useDeletingBlockletContext = useDeletingBlockletContext;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _xorWith = _interopRequireDefault(require(\"lodash/xorWith\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst DeletingBlockletContext = /*#__PURE__*/(0, _react.createContext)({});\nfunction DeletingBlockletProvider(_ref) {\n let {\n children,\n type\n } = _ref;\n const [deletingBlocklets, setDeletingBlocklets] = (0, _react.useState)([]);\n const deletingBlockletsDid = (0, _react.useRef)([]); // use in onActionComplete\n\n /**\n * 添加删除中的 blocklet did\n * @param {String} did 删除中的did\n */\n const addDeletingDid = did => {\n if (!deletingBlockletsDid.current.includes(did)) {\n const reDeleteings = [...deletingBlockletsDid.current, did];\n setDeletingBlocklets(reDeleteings);\n deletingBlockletsDid.current = reDeleteings;\n }\n };\n\n /**\n * 去除删除中的 blocklet did\n * @param {String} did 删除中的did\n */\n const removeDeletingDid = did => {\n if (deletingBlockletsDid.current.includes(did)) {\n const reDeleteings = deletingBlockletsDid.current.filter(d => {\n return d !== did;\n });\n setDeletingBlocklets(reDeleteings);\n deletingBlockletsDid.current = reDeleteings;\n }\n };\n\n /**\n * 将不在的 blocklet id 移出 deleting 数组\n * @param {Array} existDids 已存在的 blocklet did 数组集\n */\n const matchDeletingDid = existDids => {\n const inDeleting = deletingBlocklets.filter(did => existDids.find(e => e === did));\n const needMoveoutDeleting = (0, _xorWith.default)(inDeleting, deletingBlocklets);\n needMoveoutDeleting.forEach(did => removeDeletingDid(did));\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(DeletingBlockletContext.Provider, {\n // eslint-disable-next-line react/jsx-no-constructed-context-values\n value: {\n type,\n deletingBlocklets,\n addDeletingDid,\n removeDeletingDid,\n matchDeletingDid\n },\n children: children\n });\n}\nDeletingBlockletProvider.propTypes = {\n type: _propTypes.default.string,\n children: _propTypes.default.node.isRequired\n};\nDeletingBlockletProvider.defaultProps = {\n type: 'blocklets'\n};\nfunction useDeletingBlockletContext() {\n return (0, _react.useContext)(DeletingBlockletContext);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.NodeProvider = exports.NodeContext = exports.NodeConsumer = void 0;\nexports.useNodeContext = useNodeContext;\nvar _react = require(\"react\");\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst NodeContext = /*#__PURE__*/(0, _react.createContext)({});\nexports.NodeContext = NodeContext;\nconst {\n Provider,\n Consumer\n} = NodeContext;\nexports.NodeConsumer = Consumer;\nexports.NodeProvider = Provider;\nfunction useNodeContext() {\n const {\n node\n } = (0, _react.useContext)(NodeContext);\n return _objectSpread(_objectSpread({}, node), {}, {\n inService: node.type === 'service',\n inDaemon: node.type === 'daemon'\n });\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"SessionContext\", {\n enumerable: true,\n get: function get() {\n return _Session.SessionContext;\n }\n});\nexports.useSessionContext = useSessionContext;\nvar _react = require(\"react\");\nvar _Session = require(\"@arcblock/did-connect/lib/Session\");\n/* eslint-disable object-curly-newline */\n\nfunction useSessionContext() {\n const info = (0, _react.useContext)(_Session.SessionContext);\n return info;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.TeamProvider = exports.TeamContext = exports.TeamConsumer = void 0;\nexports.useTeamContext = useTeamContext;\nvar _react = require(\"react\");\nconst TeamContext = /*#__PURE__*/(0, _react.createContext)({});\nexports.TeamContext = TeamContext;\nconst {\n Provider,\n Consumer\n} = TeamContext;\nexports.TeamConsumer = Consumer;\nexports.TeamProvider = Provider;\nfunction useTeamContext() {\n return (0, _react.useContext)(TeamContext);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = CancelConfirm;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _clickToCopy = _interopRequireDefault(require(\"./click-to-copy\"));\nvar _confirm = _interopRequireDefault(require(\"./confirm\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction CancelConfirm(_ref) {\n let {\n title: _title,\n description: _description,\n confirmPlaceholder,\n cancel,\n confirm,\n params: initialParams,\n onCancel,\n onConfirm,\n keyName\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const confirmSetting = {\n title: () => /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [_title, \" (\".concat(keyName, \")\")]\n }),\n description: (params, setParams) => {\n const setValue = value => {\n // eslint-disable-next-line no-underscore-dangle\n setParams(_objectSpread(_objectSpread({}, value), {}, {\n __disableConfirm: value.__disableConfirm\n }));\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n severity: \"warning\",\n style: {\n width: '100%'\n },\n children: t('common.notice')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 24,\n marginBottom: 24\n },\n dangerouslySetInnerHTML: {\n __html: _description\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n style: {\n marginBottom: 24\n },\n children: [t('common.click'), \"\\uFF1A\", /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n \"data-cy\": \"click-copy\",\n children: keyName\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: confirmPlaceholder,\n autoComplete: \"off\",\n \"data-cy\": \"delete-confirm-input\",\n variant: \"outlined\",\n fullWidth: true,\n autoFocus: true,\n value: params.inputVal,\n onChange: e => {\n setValue(_objectSpread(_objectSpread({}, params), {}, {\n inputVal: e.target.value,\n __disableConfirm: keyName !== e.target.value\n }));\n }\n })\n })]\n });\n },\n confirm,\n cancel,\n onConfirm,\n onCancel,\n params: _objectSpread({\n inputVal: '',\n __disableConfirm: true\n }, initialParams)\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n });\n}\nCancelConfirm.propTypes = {\n title: _propTypes.default.any.isRequired,\n keyName: _propTypes.default.any.isRequired,\n description: _propTypes.default.any.isRequired,\n // can be a function that renders different content based on params\n confirmPlaceholder: _propTypes.default.any.isRequired,\n cancel: _propTypes.default.string,\n confirm: _propTypes.default.string,\n params: _propTypes.default.object,\n // This object holds states managed in the dialog\n onCancel: _propTypes.default.func,\n onConfirm: _propTypes.default.func.isRequired\n};\nCancelConfirm.defaultProps = {\n onCancel: () => {},\n cancel: '',\n confirm: 'Confirm',\n params: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _reactRouterDom = require(\"react-router-dom\");\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"did\", \"href\", \"external\", \"avatarProps\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction WrappedDidAddress(_ref) {\n let {\n did,\n href,\n external,\n avatarProps\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n // eslint-disable-next-line react/no-unstable-nested-components\n function Content() {\n if (href) {\n if (external) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {\n target: \"_blank\",\n href: href,\n underline: \"hover\",\n children: did\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRouterDom.Link, {\n to: href,\n children: did\n });\n }\n return did;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, _objectSpread(_objectSpread({\n prepend: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n component: \"span\",\n display: \"flex\",\n mr: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, _objectSpread({\n did: did,\n size: 18\n }, avatarProps))\n })\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Content, {})\n }));\n}\nWrappedDidAddress.propTypes = {\n did: _propTypes.default.string.isRequired,\n to: _propTypes.default.string,\n href: _propTypes.default.string,\n avatarProps: _propTypes.default.object,\n external: _propTypes.default.bool\n};\nWrappedDidAddress.defaultProps = {\n to: '',\n href: '',\n avatarProps: {},\n external: false\n};\nvar _default = WrappedDidAddress;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst color = {\n success: '#3ab39d',\n error: '#D0021B'\n};\nconst defaultSize = '10px';\nconst Dot = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: inline-block;\\n width: \", \";\\n height: \", \";\\n background: \", \";\\n border-radius: 100%;\\n\"])), props => props.size || defaultSize, props => props.size || defaultSize, props => color[props.color] || props.color || color.success);\nvar _default = Dot;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = FormTextInput;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _CircularProgress = _interopRequireDefault(require(\"@mui/material/CircularProgress\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _Close = _interopRequireDefault(require(\"@mui/icons-material/Close\"));\nvar _Done = _interopRequireDefault(require(\"@mui/icons-material/Done\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _required = _interopRequireDefault(require(\"./required\"));\nvar _formWrapper = _interopRequireDefault(require(\"./form-wrapper\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"label\", \"disabled\", \"required\", \"initialValue\", \"onChange\", \"placeholder\", \"style\", \"onSubmit\", \"secure\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction FormTextInput(_ref) {\n let {\n label,\n disabled,\n required,\n initialValue,\n onChange,\n placeholder,\n style,\n onSubmit,\n secure\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const [editing, setEditing] = (0, _react.useState)(false);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [defaultValue, setDefaultValue] = (0, _react.useState)(secure && initialValue === '__encrypted__' ? '' : initialValue);\n const [value, setValue] = (0, _react.useState)(defaultValue);\n const handleSubmit = async () => {\n setLoading(true);\n try {\n const shouldUpdate = await onSubmit(value);\n if (shouldUpdate === false) {\n setValue(defaultValue);\n } else {\n setDefaultValue(value);\n }\n } catch (err) {\n setValue(defaultValue);\n } finally {\n setLoading(false);\n setEditing(false);\n }\n };\n const onInputChange = changeValue => {\n setValue(changeValue);\n onChange(changeValue);\n };\n\n // enter keydown\n const handleKeydown = e => {\n if (e.key === 'Enter') {\n handleSubmit();\n }\n };\n const input = editing ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, _objectSpread({\n style: {\n flex: 1\n },\n fullWidth: true,\n value: value,\n onChange: e => {\n onInputChange(e.target.value);\n },\n autoFocus: true,\n size: \"small\",\n variant: \"outlined\",\n placeholder: placeholder,\n onKeyDown: handleKeydown,\n disabled: disabled,\n type: secure ? 'password' : 'text'\n }, rest)) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n px: 1,\n className: \"form-item-input slot\",\n style: {\n whiteSpace: 'pre-wrap'\n },\n children: secure ? '******' : value\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_formWrapper.default, {\n className: \"form\",\n style: style,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"form-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"form-item-label\",\n children: [label, required && /*#__PURE__*/(0, _jsxRuntime.jsx)(_required.default, {})]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"form-item-body\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"form-item-input\",\n children: input\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"form-item-action\",\n children: editing ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"schema-form-item-confirm\",\n onClick: handleSubmit,\n disabled: disabled || loading,\n size: \"large\",\n children: loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {\n size: 24\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Done.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"schema-form-item-cancel\",\n onClick: () => {\n setValue(defaultValue);\n setEditing(false);\n },\n disabled: disabled || loading,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Close.default, {})\n })]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"schema-form-item-edit\",\n onClick: () => setEditing(true),\n disabled: disabled,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {})\n })\n })]\n })]\n })\n });\n}\nFormTextInput.propTypes = {\n style: _propTypes.default.object,\n onSubmit: _propTypes.default.func,\n onChange: _propTypes.default.func,\n label: _propTypes.default.string,\n initialValue: _propTypes.default.string,\n placeholder: _propTypes.default.string,\n required: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n secure: _propTypes.default.bool\n};\nFormTextInput.defaultProps = {\n style: {},\n onSubmit: () => {},\n onChange: () => {},\n label: '',\n initialValue: '',\n placeholder: '',\n required: false,\n disabled: false,\n secure: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styles = require(\"@mui/styles\");\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction useMobileWidth() {\n const theme = (0, _styles.useTheme)();\n const isBreakpointsDownSm = (0, _useMediaQuery.default)(theme.breakpoints.down('md'));\n const minWidth = isBreakpointsDownSm ? 300 : theme.breakpoints.values.sm;\n return {\n minWidth\n };\n}\nvar _default = useMobileWidth;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useAppLogo;\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _node = require(\"../contexts/node\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction useAppLogo(_ref) {\n var _window$env, _blocklet$meta;\n let {\n blocklet\n } = _ref;\n const {\n inService\n } = (0, _node.useNodeContext)();\n const prefix = ((_window$env = window.env) === null || _window$env === void 0 ? void 0 : _window$env.apiPrefix) || '/';\n const search = \"?v=\".concat(blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.version);\n const logoUrl = (0, _urlJoin.default)(prefix, \"/blocklet/logo/\".concat(inService ? '' : blocklet.meta.did), search);\n return {\n logoUrl\n };\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useAvatar;\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _node = require(\"../contexts/node\");\nvar _util = require(\"../util\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction useAvatar(_ref) {\n var _blocklet$meta;\n let {\n blocklet,\n ancestors = []\n } = _ref;\n const node = (0, _node.useNodeContext)();\n const {\n inService\n } = node;\n const search = \"?v=\".concat(blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.version).concat((0, _util.isDownloading)(blocklet === null || blocklet === void 0 ? void 0 : blocklet.status) ? '~' : '');\n let logoUrl = inService ? (0, _urlJoin.default)(_util.APP_PREFIX, _constant.WELLKNOWN_SERVICE_PATH_PREFIX, '/blocklet/logo-bundle', search) : (0, _urlJoin.default)(node.imgPrefix, 'blocklet.png');\n if (blocklet.source === 'registry' && blocklet.deployedFrom && blocklet.meta.logo) {\n logoUrl = (0, _urlJoin.default)(blocklet.deployedFrom, (0, _util.formatRegistryLogoPath)(blocklet.meta.bundleDid, blocklet.meta.logo), search);\n } else {\n const prefix = window.env.apiPrefix || '/';\n const components = ancestors.concat(blocklet);\n const list = inService ? components.slice(1) : components;\n logoUrl = (0, _urlJoin.default)(prefix, \"/blocklet/logo-bundle\".concat(list.map(x => \"/\".concat(x.meta.did)).join('')), search);\n }\n return {\n logoUrl,\n inService\n };\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = useNavigation;\nvar _ahooks = require(\"ahooks\");\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _isNil = _interopRequireDefault(require(\"lodash/isNil\"));\nvar _omit = _interopRequireDefault(require(\"lodash/omit\"));\nvar _omitBy = _interopRequireDefault(require(\"lodash/omitBy\"));\nvar _react = require(\"react\");\nvar _nanoid = require(\"nanoid\");\nvar _material = require(\"@mui/material\");\nvar _parseNavigationFromBlocklet = require(\"@blocklet/meta/lib/parse-navigation-from-blocklet\");\nvar _constant = require(\"@abtnode/constant\");\nvar _blocklet = require(\"../contexts/blocklet\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst BASE_LINK = '/';\nconst DEFAULT_SECTION = 'header';\n// 默认注入的数据\n// 需要指定一些内置的 id\nconst injectNavigationData = {\n sessionManager: [{\n id: '/sessionManager',\n title: {\n en: 'Manage',\n zh: '管理'\n },\n section: ['sessionManager'],\n icon: 'ion:settings-outline',\n link: \"\".concat(_constant.WELLKNOWN_SERVICE_PATH_PREFIX, \"/admin\"),\n role: ['owner', 'admin'],\n from: 'tmpl'\n }],\n dashboard: [{\n id: '/access',\n title: {\n en: 'Access',\n zh: '访问控制'\n },\n role: ['owner', 'admin', 'member'],\n section: ['dashboard'],\n link: '',\n from: 'tmpl',\n items: [{\n id: 'member',\n title: {\n en: 'Members',\n zh: '成员'\n },\n icon: 'ant-design:user-outlined',\n link: \"\".concat(_constant.WELLKNOWN_SERVICE_PATH_PREFIX, \"/admin/members\"),\n from: 'tmpl'\n }, {\n id: 'passport',\n title: {\n en: 'Passport',\n zh: '通行证'\n },\n icon: 'icon-park-outline:passport',\n link: \"\".concat(_constant.WELLKNOWN_SERVICE_PATH_PREFIX, \"/admin/passports\"),\n from: 'tmpl'\n }]\n }, {\n id: '/dashboard',\n title: 'Blocklet',\n role: ['owner', 'admin'],\n section: ['dashboard'],\n link: '',\n from: 'tmpl',\n items: [{\n id: 'dashboard',\n title: {\n en: 'Dashboard',\n zh: '仪表盘'\n },\n icon: 'ant-design:dashboard-outlined',\n link: \"\".concat(_constant.WELLKNOWN_SERVICE_PATH_PREFIX, \"/admin\"),\n from: 'tmpl'\n }]\n }]\n};\nfunction isSameNavigation(a, b) {\n if (a.section && b.section) {\n return a.section === b.section && a.id === b.id;\n }\n return a.id === b.id;\n}\nfunction useNavigation() {\n const {\n blocklet,\n actions\n } = (0, _blocklet.useBlockletContext)();\n const {\n navigationList,\n components,\n builtinList\n } = (0, _parseNavigationFromBlocklet.parseNavigation)(blocklet, {\n beforeProcess(rawList) {\n const copyList = (0, _cloneDeep.default)(rawList);\n // 注入默认的 dashboard 菜单\n injectNavigationData.dashboard.forEach(item => {\n if (!copyList.some(x => x.id === item.id)) {\n copyList.push(item);\n }\n });\n // 注入默认的 sessionManager 菜单\n if (!copyList.some(x => x.id && (x.section || []).includes('sessionManager'))) {\n copyList.push(...injectNavigationData.sessionManager);\n }\n return copyList;\n }\n });\n const state = (0, _ahooks.useReactive)({\n rawNavigation: (0, _cloneDeep.default)(navigationList),\n activeSection: DEFAULT_SECTION,\n components\n });\n const navigation = (0, _react.useMemo)(() => {\n return (0, _parseNavigationFromBlocklet.nestNavigationList)(state.rawNavigation);\n }, [state.rawNavigation]);\n const treeNavigation = (0, _react.useMemo)(() => {\n const rawData = (0, _parseNavigationFromBlocklet.filterNavigation)(state.rawNavigation, components);\n const navigationWithLink = (0, _parseNavigationFromBlocklet.joinLink)(rawData, components);\n return (0, _parseNavigationFromBlocklet.cleanOrphanNavigation)(navigationWithLink);\n }, [components, state.rawNavigation]);\n function getNavigationFullLink(navigationItem) {\n if (!navigationItem.id) return '';\n const fullList = (0, _parseNavigationFromBlocklet.flatternNavigation)((0, _parseNavigationFromBlocklet.joinLink)(navigation, components));\n const findItem = fullList.find(item => item.id === navigationItem.id);\n // eslint-disable-next-line react/prop-types\n function Uninstalled(_ref) {\n let {\n name\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Chip, {\n label: \"Uninstalled: \".concat(name),\n color: \"error\",\n size: \"small\",\n variant: \"outlined\",\n sx: {\n fontSize: 10,\n height: 20\n }\n });\n }\n if (findItem !== null && findItem !== void 0 && findItem.component) {\n if (!components.some(x => x.name === findItem.component)) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Uninstalled, {\n name: findItem.component\n });\n }\n } else if (findItem.parent) {\n const parent = fullList.find(x => x.id === findItem.parent);\n if (parent !== null && parent !== void 0 && parent.component) {\n if (!components.some(x => x.name === parent.component)) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Uninstalled, {\n name: parent.component\n });\n }\n }\n }\n return findItem === null || findItem === void 0 ? void 0 : findItem.link;\n }\n function updateActiveSection(activeSection) {\n state.activeSection = activeSection;\n }\n function updateNavigationTree(tree) {\n const list = [];\n (0, _parseNavigationFromBlocklet.deepWalk)(tree, (treeItem, parent) => {\n const tmpData = _objectSpread(_objectSpread({}, (0, _omit.default)(treeItem, ['children', 'expand'])), {}, {\n parent: parent === null || parent === void 0 ? void 0 : parent.id\n });\n list.push(tmpData);\n });\n const unchangedNavigation = state.rawNavigation.filter(item => {\n if (!state.activeSection) {\n return false;\n }\n const findItem = list.find(v => isSameNavigation(v, item));\n if (findItem) {\n return !(0, _parseNavigationFromBlocklet.isMatchSection)(findItem.section, state.activeSection);\n }\n return true;\n });\n state.rawNavigation = [...unchangedNavigation, ...list];\n }\n /**\n * 更新导航的一个节点\n * @param {object} itemData 更新的数据\n */\n function updateNavigationItem(itemData) {\n _saveNavigationChange([itemData]);\n }\n function _saveNavigationChange() {\n let changed = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n const updatedNavigation = state.rawNavigation.map(item => {\n const findChanged = changed.find(changeItem => isSameNavigation(_objectSpread(_objectSpread({}, changeItem), {}, {\n section: state.activeSection\n }), item));\n if (findChanged) {\n return _objectSpread(_objectSpread({}, item), findChanged);\n }\n return item;\n });\n state.rawNavigation = updatedNavigation;\n }\n /**\n * 删除一个导航节点\n * @param {string} id 导航的 ID\n */\n function delNavigationItem(id) {\n const relatedNavigationId = state.rawNavigation.filter(item => item.id === id || item.parent === id).map(item => item.id);\n state.rawNavigation = state.rawNavigation.filter(item => !relatedNavigationId.includes(item.id));\n }\n /**\n * 增加一个导航节点\n * @param {object} params 导航数据\n */\n function addNavigationItem() {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const data = _objectSpread(_objectSpread({}, params), {}, {\n // 新增的数据使用随机生成的 nanoid (A-Za-z0-9_-)\n id: (0, _nanoid.nanoid)(),\n section: state.activeSection,\n visible: true\n });\n state.rawNavigation = [...state.rawNavigation, data];\n }\n\n /**\n * 将树状结构转换为数据库存储的导航结构\n * @param {array} tree 树状结构\n * @returns array\n */\n // eslint-disable-next-line no-unused-vars\n function tree2navigation(tree) {\n const list = tree.map(item => {\n const items = item.children || [];\n return {\n title: item.title,\n icon: item.icon,\n link: item.link,\n items: tree2navigation(items),\n section: item.section,\n visible: item.visible,\n parent: item.parent,\n component: item.component,\n role: item.role,\n from: item.from,\n id: item.id\n };\n });\n return list;\n }\n /**\n * 将数据库中的导航数据转换为树状结构\n * @param {array} list 数据库中导航的结构\n * @param {string} baseLink 当前 tree 的 base\n * @returns 树状结构\n */\n function navigation2tree(list) {\n let baseLink = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : BASE_LINK;\n const tree = list.map(item => {\n const findComponent = components.find(componentItem => componentItem.name === item.component);\n const base = (findComponent === null || findComponent === void 0 ? void 0 : findComponent.link) || baseLink;\n const children = item.items || [];\n const {\n link\n } = item;\n return {\n title: item.title,\n subtitle: getNavigationFullLink(item),\n link,\n icon: item.icon,\n children: navigation2tree(children, link || BASE_LINK),\n section: item.section,\n visible: item.visible,\n parent: item.parent,\n component: item.component,\n id: item.id,\n role: item.role,\n from: item.from,\n __base: base\n };\n });\n return tree;\n }\n\n /**\n * 获取指定区块的导航数据\n * @param {string} section 导航所属区块\n * @returns 在指定导航区块内的导航数据\n */\n function getNavigation(section) {\n const copyNavigation = (0, _cloneDeep.default)(navigation);\n const filteredSectionNavigation = copyNavigation.filter(item => {\n return (0, _parseNavigationFromBlocklet.isMatchSection)(item.section, section);\n });\n return navigation2tree(filteredSectionNavigation);\n }\n\n /**\n * 将导航数据保存到后端\n * @param {array} list 需要保存的导航数据\n */\n async function saveNavigationList(list) {\n const data = list.map(item => {\n return (0, _omitBy.default)(item, _isNil.default);\n });\n const formartedData = data.map(item => {\n const tempData = _objectSpread({}, item);\n if (tempData.role && Array.isArray(tempData.role)) {\n tempData.role = JSON.stringify(tempData.role);\n }\n if (tempData.section && Array.isArray(tempData.section)) {\n tempData.section = JSON.stringify(tempData.section);\n }\n if (tempData.title && tempData.title instanceof Object) {\n tempData.title = JSON.stringify(tempData.title);\n }\n if (tempData.link && tempData.link instanceof Object) {\n tempData.link = JSON.stringify(tempData.link);\n }\n return tempData;\n });\n // .filter((item) => item.from !== ' tmpl');\n await actions.configNavigations(formartedData);\n }\n async function resetNavigation() {\n await saveNavigationList([]);\n state.rawNavigation = (0, _cloneDeep.default)(builtinList);\n }\n return {\n state,\n navigation: treeNavigation,\n components,\n getNavigationFullLink,\n updateActiveSection,\n updateNavigationItem,\n delNavigationItem,\n addNavigationItem,\n updateNavigationTree,\n getNavigation,\n saveNavigationList,\n resetNavigation\n };\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Feedback;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _material = require(\"@mui/material\");\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _jsxRuntime = require(\"@emotion/react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n/** @jsxImportSource @emotion/react */\n\nfunction Feedback(_ref) {\n let {\n infos\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const infoStr = infos.map(x => \"* \".concat(x.label, \": \").concat(x.value)).join('\\n');\n const feedbackUrl = new URL('https://github.com/blocklet/blocklet-site/issues/new');\n feedbackUrl.searchParams.set('title', '[Feedback]');\n feedbackUrl.searchParams.set('body', \"<!-- [Enter feedback here] -->\\n\\n\\n\\n<!--\\nDocument Details\\n\".concat(infoStr, \"\\n* Page: \").concat(window.location.href, \"\\n-->\\n\"));\n return (0, _jsxRuntime.jsx)(_material.Box, {\n sx: {\n mx: {\n xs: 0,\n md: 2\n }\n },\n children: (0, _jsxRuntime.jsx)(_Link.default, {\n sx: {\n color: 'text.primary'\n },\n target: \"_blank\",\n href: feedbackUrl.href,\n rel: \"noreferrer\",\n style: {\n textDecoration: 'underline'\n },\n children: t('common.reportIssue')\n })\n });\n}\nFeedback.propTypes = {\n infos: _propTypes.default.arrayOf(_propTypes.default.shape({\n label: _propTypes.default.string,\n value: _propTypes.default.string\n }))\n};\nFeedback.defaultProps = {\n infos: []\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _useInterval = _interopRequireDefault(require(\"react-use/lib/useInterval\"));\nvar _util = require(\"../util\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction Clock() {\n const [currentTime, setCurrentTime] = (0, _react.useState)(+new Date());\n (0, _useInterval.default)(() => {\n setCurrentTime(+new Date());\n }, 1000);\n return (0, _util.formatTime)(currentTime, 'MMMM Do YYYY, h:mm:ss a');\n}\nvar _default = Clock;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DownloadLog;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _dayjs = _interopRequireDefault(require(\"dayjs\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Download = _interopRequireDefault(require(\"@mui/icons-material/Download\"));\nvar _FormControl = _interopRequireDefault(require(\"@mui/material/FormControl\"));\nvar _Select = _interopRequireDefault(require(\"@mui/material/Select\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _formatName = _interopRequireDefault(require(\"@abtnode/util/lib/format-name\"));\nvar _node = require(\"../contexts/node\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst DAYS = [1, 7];\nfunction DownloadLog(_ref) {\n let {\n id,\n name\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n restApi,\n inService\n } = (0, _node.useNodeContext)();\n const [showDialog, setShowDialog] = (0, _react.useState)(false);\n const [isDownloading, setIsDownloading] = (0, _react.useState)(false);\n const [days, setDays] = (0, _react.useState)(1);\n const onDownload = async () => {\n if (isDownloading) {\n return;\n }\n try {\n setIsDownloading(true);\n const logId = inService ? '' : \"/\".concat(id);\n const res = await restApi.get(\"/download/log\".concat(logId, \"?days=\").concat(days), {\n responseType: 'blob'\n });\n const href = URL.createObjectURL(res.data);\n const link = document.createElement('a');\n link.href = href;\n link.setAttribute('download', \"\".concat((0, _formatName.default)(name || id), \".\").concat((0, _dayjs.default)().format('YYYYMMDDHHmmss'), \".log.zip\"));\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(href);\n setIsDownloading(false);\n } catch (error) {\n setIsDownloading(false);\n _toast.default.error(error.message);\n }\n };\n const onDaysChange = e => {\n setDays(e.target.value);\n };\n return [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n style: {\n gap: 16\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n \"data-cy\": \"download-logs\",\n variant: \"outlined\",\n onClick: () => setShowDialog(true),\n disabled: isDownloading,\n children: [isDownloading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Download.default, {\n fontSize: \"small\",\n style: {\n transform: 'translateY(2px)'\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 0.5,\n children: t('common.download')\n })]\n })\n }), showDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n open: true,\n onClose: () => {\n setShowDialog(false);\n },\n disableEscapeKeyDown: true,\n title: t('common.download'),\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n \"data-cy\": \"download-logs\",\n variant: \"outlined\",\n onClick: () => onDownload(),\n disabled: isDownloading,\n children: [isDownloading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 0.5,\n children: t('common.confirm')\n })]\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mb: 2,\n display: \"flex\",\n justifyContent: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControl.default, {\n size: \"small\",\n fullWidth: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Select.default, {\n value: days,\n onChange: onDaysChange,\n children: DAYS.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: x,\n children: t(\"log.lastDays.\".concat(x))\n }, x))\n })\n })\n })\n })];\n}\nDownloadLog.propTypes = {\n id: _propTypes.default.string.isRequired,\n name: _propTypes.default.string\n};\nDownloadLog.defaultProps = {\n name: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.LogTerminal = void 0;\nexports.LogTerminalGroup = LogTerminalGroup;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Button = _interopRequireDefault(require(\"@mui/material/Button\"));\nvar _ButtonGroup = _interopRequireDefault(require(\"@mui/material/ButtonGroup\"));\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\nvar _Terminal = _interopRequireDefault(require(\"@arcblock/terminal/lib/Terminal\"));\nvar _clock = _interopRequireDefault(require(\"./clock\"));\nvar _node = require(\"../contexts/node\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nconst _excluded = [\"name\", \"logId\", \"types\", \"initialData\", \"prepend\", \"postpend\"],\n _excluded2 = [\"logFile\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/**\n * 按 level/destination 分类的一组 terminal\n */\nfunction LogTerminalGroup(_ref) {\n let {\n name,\n logId,\n types,\n initialData,\n prepend,\n postpend\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n const {\n ws: {\n useSubscription\n }\n } = (0, _node.useNodeContext)();\n const logTypeLabels = {\n info: 'Info',\n error: 'Error',\n access: 'Access',\n stdout: 'stdout',\n stderr: 'stderr'\n };\n const isMobile = (0, _useMediaQuery.default)(theme => theme.breakpoints.down('md'));\n const [currentType, setCurrentType] = (0, _react.useState)(types[0]);\n const [logFiles, setLogFiles] = (0, _react.useState)();\n const terminalRefs = (0, _react.useRef)({});\n\n // 组件挂载时, 写入初始数据\n (0, _react.useEffect)(() => {\n types.forEach(type => {\n const terminal = terminalRefs.current[type];\n if (terminal) {\n terminal.write(\"Collecting \".concat(type, \" logs for \").concat(name, \"...\"));\n terminal.write('\\r\\n\\r\\n');\n initialData.forEach(item => terminal.write(item));\n }\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // 监听 log 数据, 写入 terminal\n useSubscription(\"log.\".concat(logId), log => {\n if (!logFiles) {\n setLogFiles(log.logFiles || {});\n }\n const terminal = terminalRefs.current[log.level];\n if (terminal) {\n terminal.write(log.data.replace(/.\\n/g, p => p === '\\r\\n' ? p : \"\".concat(p[0], \"\\r\\n\\r\\n\")));\n terminal.write('\\r\\n\\r\\n');\n }\n }, []);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(LogTerminalGroupRoot, _objectSpread(_objectSpread({}, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"log-terminal-group-head\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"log-terminal-group-head-start\",\n children: [prepend, /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonGroup.default, {\n variant: \"outlined\",\n size: isMobile ? 'small' : 'medium',\n children: types.map(type => {\n const props = type === currentType ? {\n variant: 'contained'\n } : {};\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, _objectSpread(_objectSpread({}, props), {}, {\n onClick: () => setCurrentType(type),\n children: logTypeLabels[type]\n }), type);\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"log-terminal-group-head-end\",\n children: postpend\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"log-terminal-group-terminals\",\n children: types.map(type => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(LogTerminal, {\n ref: _ref2 => {\n terminalRefs.current[type] = _ref2;\n },\n logFile: logFiles === null || logFiles === void 0 ? void 0 : logFiles[type],\n style: {\n visibility: type === currentType ? 'visible' : 'hidden'\n }\n }, type);\n })\n })]\n }));\n}\nLogTerminalGroup.propTypes = {\n // log name, 比如: blocklet display name\n name: _propTypes.default.string.isRequired,\n // 比如: abtnode | blocklet-services | blocklet-<did>\n logId: _propTypes.default.string.isRequired,\n // 日志类型, info/error 或 stdin/stdout/access\n types: _propTypes.default.arrayOf(_propTypes.default.string),\n // 写入 terminal 的初始数据\n initialData: _propTypes.default.arrayOf(_propTypes.default.string),\n prepend: _propTypes.default.node,\n postpend: _propTypes.default.node\n};\nLogTerminalGroup.defaultProps = {\n types: ['error', 'info', 'access', 'stdout', 'stderr'],\n initialData: [],\n prepend: null,\n postpend: null\n};\nconst LogTerminalGroupRoot = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n .log-terminal-group-head {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding-bottom: 16px;\\n }\\n\\n .log-terminal-group-head-start {\\n flex: 0 0 auto;\\n display: flex;\\n align-items: center;\\n gap: 16px;\\n \", \" {\\n flex-direction: column;\\n align-items: start;\\n }\\n }\\n\\n .log-terminal-group-head-end {\\n flex: 0 0 auto;\\n display: flex;\\n align-items: center;\\n gap: 16px;\\n \", \" {\\n flex-direction: column;\\n align-items: start;\\n }\\n }\\n .log-terminal-group-terminals {\\n flex: 1;\\n position: relative;\\n overflow: hidden;\\n > * {\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n }\\n }\\n\"])), props => props.theme.breakpoints.down('md'), props => props.theme.breakpoints.down('md'));\nconst LogTerminal = /*#__PURE__*/(0, _react.forwardRef)((_ref3, ref) => {\n let {\n logFile\n } = _ref3,\n rest = _objectWithoutProperties(_ref3, _excluded2);\n const terminalStyle = {\n width: '100%',\n boxSizing: 'border-box',\n height: '100%'\n };\n const terminalOptions = {\n theme: {\n background: '#2C313C',\n foreground: '#EEEEEE'\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(LogTerminalRoot, _objectSpread(_objectSpread({}, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"log-terminal-top\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_clock.default, {}), logFile && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: logFile\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"log-terminal-container\",\n style: {\n position: 'relative'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Terminal.default, {\n ref: ref,\n style: terminalStyle,\n options: terminalOptions\n })\n })]\n }));\n});\nexports.LogTerminal = LogTerminal;\nLogTerminal.propTypes = {\n logFile: _propTypes.default.string\n};\nLogTerminal.defaultProps = {\n logFile: ''\n};\nconst LogTerminalRoot = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n .log-terminal-top {\\n flex: 0 0 auto;\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n flex-wrap: wrap;\\n padding: 8px;\\n font-size: 14px;\\n color: aquamarine;\\n background: darkgray;\\n word-break: break-word;\\n }\\n .log-terminal-container {\\n flex: 1;\\n height: 100%;\\n padding: 8px;\\n overflow: hidden;\\n background: #2c313c;\\n }\\n\\n .xterm-viewport::-webkit-scrollbar {\\n width: 10px;\\n }\\n .xterm-viewport::-webkit-scrollbar-track {\\n opacity: 0;\\n }\\n .xterm-viewport::-webkit-scrollbar-thumb {\\n min-height: 20px;\\n background-color: #ffffff20;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MonitCard;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Card = _interopRequireDefault(require(\"@mui/material/Card\"));\nvar _CardContent = _interopRequireDefault(require(\"@mui/material/CardContent\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction MonitCard(_ref) {\n let {\n style,\n title,\n value,\n graph,\n description,\n hideDescription\n } = _ref;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledCard, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_CardContent.default, {\n style: _objectSpread({}, style),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n sx: {\n fontSize: 14\n },\n color: \"text.secondary\",\n children: title\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n variant: \"h5\",\n component: \"div\",\n mt: 1,\n children: value\n }), graph, !hideDescription && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n sx: {\n fontSize: 12,\n marginTop: 3\n },\n color: \"text.secondary\",\n children: description\n })]\n })\n });\n}\nMonitCard.propTypes = {\n style: _propTypes.default.object,\n title: _propTypes.default.node,\n value: _propTypes.default.node,\n graph: _propTypes.default.node,\n description: _propTypes.default.node,\n hideDescription: _propTypes.default.bool\n};\nMonitCard.defaultProps = {\n style: {},\n title: null,\n value: null,\n graph: null,\n description: null,\n hideDescription: false\n};\nconst StyledCard = (0, _styled.default)(_Card.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .card-content {\\n height: 150px;\\n }\\n\\n .card-sparkline {\\n flex: 2;\\n display: flex;\\n position: relative;\\n *[hidden] {\\n display: none;\\n }\\n }\\n .sparkline {\\n stroke: \", \";\\n fill: \", \"1A;\\n }\\n .tooltip {\\n position: absolute;\\n background: rgba(0, 0, 0, 0.7);\\n color: #fff;\\n padding: 2px 5px;\\n font-size: 12px;\\n white-space: nowrap;\\n z-index: 9999;\\n }\\n .sparkline--cursor {\\n stroke: orange;\\n }\\n\\n .sparkline--spot {\\n fill: red;\\n stroke: red;\\n }\\n\"])), props => props.theme.palette.primary.main, props => props.theme.palette.primary.main);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = CpuMonitor;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _ahooks = require(\"ahooks\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Sparkline = _interopRequireDefault(require(\"@arcblock/ux/lib/Sparkline\"));\nvar _card = _interopRequireDefault(require(\"./card\"));\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst formatNumber = x => \"\".concat(x, \"%\");\nfunction CpuMonitor(_ref) {\n let {\n cpus,\n currentLoad,\n history,\n hideDescription\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const svgRef = (0, _react.useRef)(null);\n const tooltipRef = (0, _react.useRef)(null);\n const tooltipState = (0, _ahooks.useReactive)({\n style: {\n top: 0,\n left: 0\n },\n hidden: true,\n textContent: ''\n });\n const [cpuDom, setCpuDom] = (0, _react.useState)();\n const size = (0, _ahooks.useSize)(cpuDom) || {};\n const sparklineOptions = {\n onmousemove(event, dataPoint) {\n const date = (0, _util.formatTime)(dataPoint.date, 'HH:mm');\n const left = '80px';\n tooltipState.textContent = \"\".concat(date, \": \").concat(formatNumber(dataPoint.value));\n tooltipState.style.top = '-30px';\n tooltipState.style.left = left;\n tooltipState.hidden = false;\n },\n onmouseout() {\n tooltipState.hidden = true;\n }\n };\n (0, _react.useEffect)(() => {\n // if (!loading) {\n // // see: https://github.com/alibaba/hooks/issues/838\n // }\n setTimeout(() => {\n setCpuDom(document.querySelector('.cpu-sparkline'));\n setTimeout(() => {\n if (svgRef.current) {\n // sparkline(svgRef.current, downloads, sparklineOptions);\n (0, _Sparkline.default)(svgRef.current, history || [], sparklineOptions);\n }\n }, 400);\n });\n }, [history]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_card.default, {\n title: t('common.cpu'),\n value: \"\".concat(Math.floor(currentLoad || 0), \"%\"),\n graph: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"card-sparkline cpu-sparkline\",\n style: {\n marginTop: 16\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"svg\", {\n ref: svgRef,\n className: \"sparkline\",\n width: size.width || 100,\n height: 30,\n strokeWidth: \"2\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: \"tooltip\",\n ref: tooltipRef,\n hidden: tooltipState.hidden,\n style: _objectSpread({}, tooltipState.style),\n children: tooltipState.textContent\n })]\n }),\n description: \"\".concat(t('system.cores'), \": \").concat((cpus === null || cpus === void 0 ? void 0 : cpus.length) || 0),\n hideDescription: hideDescription\n });\n}\nCpuMonitor.propTypes = {\n cpus: _propTypes.default.array,\n currentLoad: _propTypes.default.number,\n history: _propTypes.default.array,\n hideDescription: _propTypes.default.bool\n};\nCpuMonitor.defaultProps = {\n cpus: [],\n currentLoad: 0,\n history: [],\n hideDescription: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MemoryMonitor;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\nvar _ahooks = require(\"ahooks\");\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Sparkline = _interopRequireDefault(require(\"@arcblock/ux/lib/Sparkline\"));\nvar _card = _interopRequireDefault(require(\"./card\"));\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst formatNumber = x => (0, _filesize.default)(x);\nfunction MemoryMonitor(_ref) {\n let {\n instanceCount,\n title,\n total,\n used,\n history,\n hideDescription\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const svgRef = (0, _react.useRef)(null);\n const tooltipRef = (0, _react.useRef)(null);\n const tooltipState = (0, _ahooks.useReactive)({\n style: {\n top: 0,\n left: 0\n },\n hidden: true,\n textContent: ''\n });\n const [dom, setDom] = (0, _react.useState)();\n const size = (0, _ahooks.useSize)(dom) || {};\n const showPercent = !!total;\n const available = total - used;\n const memoryPercent = showPercent ? \"(\".concat(Math.floor(used / total * 100), \"%)\") : '';\n const memoryList = [];\n if (instanceCount) {\n memoryList.push({\n title: t('system.instances'),\n metric: instanceCount\n });\n }\n memoryList.push({\n title: t('system.used'),\n metric: (0, _filesize.default)(used)\n });\n if (showPercent) {\n memoryList.push({\n title: t('system.free'),\n metric: (0, _filesize.default)(available)\n }, {\n title: t('system.total'),\n metric: (0, _filesize.default)(total)\n });\n }\n const sparklineOptions = {\n onmousemove(event, dataPoint) {\n const date = (0, _util.formatTime)(dataPoint.date, 'HH:mm');\n const left = '80px';\n tooltipState.textContent = \"\".concat(date, \": \").concat(formatNumber(dataPoint.value));\n tooltipState.style.top = '-30px';\n tooltipState.style.left = left;\n tooltipState.hidden = false;\n },\n onmouseout() {\n tooltipState.hidden = true;\n }\n };\n (0, _react.useEffect)(() => {\n // if (!loading) {\n // // see: https://github.com/alibaba/hooks/issues/838\n // }\n setTimeout(() => {\n setDom(document.querySelector('.mem-sparkline'));\n setTimeout(() => {\n if (svgRef.current) {\n (0, _Sparkline.default)(svgRef.current, history, sparklineOptions);\n }\n }, 400);\n });\n }, [history]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_card.default, {\n title: title || t('common.memory'),\n value: \"\".concat((0, _filesize.default)(Math.floor(used || 0)), \" \").concat(memoryPercent),\n graph: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"card-sparkline mem-sparkline\",\n style: {\n marginTop: 16\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"svg\", {\n ref: svgRef,\n className: \"sparkline\",\n width: size.width || 100,\n height: 30,\n strokeWidth: \"2\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n className: \"tooltip\",\n ref: tooltipRef,\n hidden: tooltipState.hidden,\n style: _objectSpread({}, tooltipState.style),\n children: tooltipState.textContent\n })]\n }),\n description: memoryList.map((x, index) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n sx: {\n marginLeft: index === 0 ? 0 : 2\n },\n children: [x.title, \": \", x.metric]\n }, x.title)),\n hideDescription: hideDescription\n });\n}\nMemoryMonitor.propTypes = {\n title: _propTypes.default.string,\n instanceCount: _propTypes.default.number,\n total: _propTypes.default.number,\n used: _propTypes.default.number,\n history: _propTypes.default.array,\n hideDescription: _propTypes.default.bool\n};\nMemoryMonitor.defaultProps = {\n title: '',\n instanceCount: null,\n total: null,\n used: null,\n history: [],\n hideDescription: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportTag;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Close = _interopRequireDefault(require(\"@mui/icons-material/Close\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nconst _excluded = [\"passport\", \"onDelete\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction PassportTag(props) {\n const {\n passport,\n onDelete\n } = props,\n rest = _objectWithoutProperties(props, _excluded);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Tag, _objectSpread(_objectSpread({}, rest), {}, {\n children: [passport.title || passport.name, ' ', !!onDelete && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Close.default, {\n \"data-cy\": \"delete-issuance\",\n className: \"delete\",\n onClick: onDelete\n })]\n }));\n}\nPassportTag.propTypes = {\n passport: _propTypes.default.object.isRequired,\n onDelete: _propTypes.default.func\n};\nPassportTag.defaultProps = {\n onDelete: null\n};\nconst Tag = _styled.default.span(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: inline-flex;\\n padding: 2px 8px;\\n background: \", \";\\n border-radius: 100vw;\\n font-weight: 400;\\n font-size: 12px;\\n line-height: 22px;\\n color: #fff;\\n align-items: center;\\n .delete {\\n font-size: 1em;\\n margin-left: 6px;\\n cursor: pointer;\\n }\\n\"])), props => props.theme.palette.primary.main);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Permission;\nexports.withPermission = withPermission;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _session = require(\"./contexts/session\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction Permission(_ref) {\n let {\n permission,\n role,\n component,\n children\n } = _ref;\n const {\n session\n } = (0, _session.useSessionContext)();\n let can = true;\n const permissions = [].concat(permission).filter(Boolean);\n const roles = [].concat(role).filter(Boolean);\n if (permissions.length) {\n const userPermissions = session.user && session.user.permissions || [];\n can = permissions.some(p => userPermissions.includes(p));\n }\n if (can && roles.length) {\n can = roles.includes(session.user.role);\n }\n if (typeof component === 'function') {\n return component(can);\n }\n if (typeof children === 'function') {\n return children(can);\n }\n if (can) {\n return component || children || null;\n }\n return null;\n}\nfunction withPermission(Component, permissionName, role) {\n return function WithPermission(props) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Permission, {\n permission: permissionName,\n role: role,\n children: hasPermission => /*#__PURE__*/(0, _jsxRuntime.jsx)(Component, _objectSpread(_objectSpread({}, props), {}, {\n hasPermission: hasPermission\n }))\n });\n };\n}\nPermission.propTypes = {\n permission: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),\n role: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),\n component: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.node]),\n children: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.node])\n};\nPermission.defaultProps = {\n permission: '',\n role: '',\n component: null,\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = RelativeTime;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _prettyMsI18n = _interopRequireDefault(require(\"pretty-ms-i18n\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _util = require(\"./util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction RelativeTime(_ref) {\n let {\n value\n } = _ref;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n if (!value) {\n return '-';\n }\n const prettyOption = {\n locale: locale === 'zh' ? 'zh_CN' : 'zh_US',\n compact: true\n };\n const valTime = new Date(value).getTime();\n const now = Date.now();\n if (valTime > now) {\n const time = (0, _prettyMsI18n.default)(valTime - now, prettyOption);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: (0, _util.formatToDatetime)(value),\n placement: \"top-end\",\n enterTouchDelay: 0,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: t('common.afterTime', {\n time\n })\n })\n });\n }\n const time = (0, _prettyMsI18n.default)(now - valTime, prettyOption);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: (0, _util.formatToDatetime)(value),\n placement: \"top-end\",\n enterTouchDelay: 0,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: t('common.timeAgo', {\n time\n })\n })\n });\n}\nRelativeTime.propTypes = {\n value: _propTypes.default.any\n};\nRelativeTime.defaultProps = {\n value: ''\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = AddStore;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styles = require(\"@mui/styles\");\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _ListItem = _interopRequireDefault(require(\"@mui/material/ListItem\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _node = require(\"../contexts/node\");\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst useStyles = (0, _styles.makeStyles)(theme => ({\n addMenuItemRoot: {\n justifyContent: 'center',\n color: theme.palette.primary.main,\n lineHeight: '3.2'\n }\n}));\nfunction AddStore(_ref) {\n let {\n disabled,\n storeList,\n teamDid,\n onAdd\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [disable, setDisable] = (0, _react.useState)(true);\n const [open, setOpen] = (0, _react.useState)(false);\n const [url, setUrl] = (0, _react.useState)('');\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const classes = useStyles();\n const onConfirm = async () => {\n setLoading(true);\n try {\n const {\n isNew,\n decoded\n } = (0, _util.isNewStoreUrl)(url, storeList);\n if (!isNew) {\n throw new Error(t('store.blockletRegistry.haveSameRegistry'));\n }\n await api.addBlockletStore({\n input: {\n teamDid,\n url: decoded\n }\n });\n onAdd(decoded);\n setOpen(false);\n } catch (err) {\n const errMsg = \"\".concat(t('store.blockletRegistry.addFailed'), \" \").concat((0, _util.formatError)(err));\n setError(errMsg);\n } finally {\n setLoading(false);\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_ListItem.default, {\n button: true,\n disabled: disabled,\n className: classes.addMenuItemRoot,\n onClick: () => {\n setOpen(true);\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n font: true\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n variant: \"inherit\",\n children: t('store.blockletRegistry.addRegistry')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('store.blockletRegistry.addRegistry'),\n fullWidth: true,\n maxWidth: \"md\",\n open: open,\n onClose: () => setOpen(false),\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n setOpen(false);\n },\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n onConfirm();\n },\n color: \"primary\",\n \"data-cy\": \"install-blocklet-next-step\",\n disabled: loading || !url || disable,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.confirm')]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n paddingTop: 12,\n overflowY: 'hidden'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('store.blockletRegistry.registryUrl'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"url\",\n fullWidth: true,\n value: url,\n onChange: e => {\n setError(null);\n let isDisabled = false;\n if (!e.target.value.trim()) {\n isDisabled = true;\n }\n if (!e.target.value.trim()) {\n setError(t('store.blockletRegistry.registryUrlEmpty'));\n }\n setUrl(e.target.value);\n setDisable(isDisabled);\n },\n disabled: loading,\n onKeyPress: e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n if (!e.target.value.trim()) {\n setError(t('store.blockletRegistry.registryUrlEmpty'));\n } else {\n onConfirm();\n }\n }\n }\n })\n })\n })\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n style: {\n width: '100%'\n },\n children: error\n })]\n })]\n });\n}\nAddStore.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n disabled: _propTypes.default.bool,\n storeList: _propTypes.default.array,\n onAdd: _propTypes.default.func\n};\nAddStore.defaultProps = {\n disabled: false,\n storeList: [],\n onAdd: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = DeleteStore;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _DeleteOutline = _interopRequireDefault(require(\"@mui/icons-material/DeleteOutline\"));\nvar _node = require(\"../contexts/node\");\nvar _toast = _interopRequireDefault(require(\"../toast\"));\nvar _deleteConfirm = _interopRequireDefault(require(\"../delete-confirm\"));\nvar _util = require(\"../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction DeleteStore(_ref) {\n let {\n store,\n teamDid,\n onDelete\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [confirmSetting, setConfirmSetting] = (0, _react.useState)(null);\n const theme = (0, _useTheme.default)();\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n const onConfirm = async () => {\n try {\n setLoading(true);\n await api.deleteBlockletStore({\n input: {\n teamDid,\n url: store.url\n }\n });\n if (onDelete && typeof onDelete === 'function') {\n onDelete();\n }\n } catch (err) {\n _toast.default.error(\"Remove Blocklet Store Error: \".concat((0, _util.formatError)(err)));\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n const setting = {\n keyName: store.url,\n title: t('store.blockletRegistry.deleteRegistry'),\n description: t('store.blockletRegistry.deleteDesc', {\n name: \"<b>\".concat(store.url, \"</b>\"),\n color: theme.palette.error.main\n }),\n confirmPlaceholder: t('store.blockletRegistry.confirmDesc', {\n name: store.url\n }),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel\n };\n const onMenuItemClick = e => {\n e.stopPropagation();\n setConfirmSetting(setting);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n disabled: loading,\n onClick: onMenuItemClick,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DeleteOutline.default, {})\n }), confirmSetting && /*#__PURE__*/(0, _jsxRuntime.jsx)(_deleteConfirm.default, {\n keyName: confirmSetting.keyName,\n title: confirmSetting.title,\n description: confirmSetting.description,\n confirmPlaceholder: confirmSetting.confirmPlaceholder,\n confirm: confirmSetting.confirm,\n cancel: confirmSetting.cancel,\n params: confirmSetting.params,\n onConfirm: confirmSetting.onConfirm,\n onCancel: confirmSetting.onCancel\n })]\n });\n}\nDeleteStore.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n store: _propTypes.default.object.isRequired,\n onDelete: _propTypes.default.func\n};\nDeleteStore.defaultProps = {\n onDelete: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = StoreItem;\nvar _styles = require(\"@mui/styles\");\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _ListItemSecondaryAction = _interopRequireDefault(require(\"@mui/material/ListItemSecondaryAction\"));\nvar _Launch = _interopRequireDefault(require(\"@mui/icons-material/Launch\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _delete = _interopRequireDefault(require(\"./delete\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n/* eslint-disable react/jsx-one-expression-per-line */\n\nconst useStyles = (0, _styles.makeStyles)(() => ({\n buttonText: {\n textTransform: 'none !important'\n },\n iconRoot: {\n minWidth: 24\n },\n menuName: {\n display: 'flex',\n flexDirection: 'column',\n marginRight: '100px',\n '& span': {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap'\n }\n }\n}));\nfunction StoreItem(_ref) {\n let {\n teamDid,\n store,\n onDelete\n } = _ref;\n const classes = useStyles();\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: classes.menuName,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"span\",\n variant: \"subtitle1\",\n style: {\n fontWeight: '400'\n },\n children: store.name\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n className: \"url\",\n component: \"span\",\n variant: \"inherit\",\n children: \"\".concat(store.url)\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ListItemSecondaryAction.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: e => {\n e.stopPropagation();\n window.open(store.url);\n },\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Launch.default, {})\n }), !store.protected && /*#__PURE__*/(0, _jsxRuntime.jsx)(_delete.default, {\n store: store,\n onDelete: onDelete,\n teamDid: teamDid\n })]\n })]\n });\n}\nStoreItem.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n store: _propTypes.default.shape({\n name: _propTypes.default.string.isRequired,\n url: _propTypes.default.string.isRequired,\n protected: _propTypes.default.bool\n }).isRequired,\n onDelete: _propTypes.default.func\n};\nStoreItem.defaultProps = {\n onDelete: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Check = _interopRequireDefault(require(\"@mui/icons-material/Check\"));\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\nvar _Clear = _interopRequireDefault(require(\"@mui/icons-material/Clear\"));\nvar _SaveAlt = _interopRequireDefault(require(\"@mui/icons-material/SaveAlt\"));\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\nvar _Filter = _interopRequireDefault(require(\"@mui/icons-material/Filter\"));\nvar _FirstPage = _interopRequireDefault(require(\"@mui/icons-material/FirstPage\"));\nvar _LastPage = _interopRequireDefault(require(\"@mui/icons-material/LastPage\"));\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\nvar _ChevronLeft = _interopRequireDefault(require(\"@mui/icons-material/ChevronLeft\"));\nvar _Search = _interopRequireDefault(require(\"@mui/icons-material/Search\"));\nvar _ArrowDropDown = _interopRequireDefault(require(\"@mui/icons-material/ArrowDropDown\"));\nvar _Remove = _interopRequireDefault(require(\"@mui/icons-material/Remove\"));\nvar _ViewColumn = _interopRequireDefault(require(\"@mui/icons-material/ViewColumn\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nvar _default = {\n Add: _Add.default,\n Check: _Check.default,\n Delete: _Delete.default,\n Edit: _Edit.default,\n Clear: _Clear.default,\n DetailPanel: _ChevronRight.default,\n Filter: _Filter.default,\n FirstPage: _FirstPage.default,\n LastPage: _LastPage.default,\n NextPage: _ChevronRight.default,\n PreviousPage: _ChevronLeft.default,\n Search: _Search.default,\n ResetSearch: _Clear.default,\n SortArrow: _ArrowDropDown.default,\n Export: _SaveAlt.default,\n ThirdStateCheck: _Remove.default,\n ViewColumn: _ViewColumn.default\n};\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst TableStyle = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiPaper-root {\\n box-shadow: none !important;\\n border: none !important;\\n border-radius: 0 !important;\\n background: transparent;\\n }\\n .MuiToolbar-root {\\n background: transparent;\\n padding-left: 0;\\n display: none;\\n }\\n\\n &.show-pagination {\\n .MuiTablePagination-toolbar {\\n display: flex;\\n }\\n }\\n\\n .MuiTableHead-root th {\\n min-width: 100px;\\n background: transparent;\\n }\\n\\n .MuiTable-root {\\n overflow-y: hidden;\\n }\\n .MuiTableRow-root {\\n border: none !important;\\n }\\n\\n .MuiTableCell-root {\\n padding-right: 16px;\\n &:last-of-type {\\n padding-right: 0;\\n }\\n }\\n\\n /* @material-table/core@next \\u517C\\u5BB9 mui v5, \\u4F46 pagination \\u6837\\u5F0F\\u4F3C\\u4E4E\\u6709\\u4E9B\\u95EE\\u9898, \\u6682\\u5730\\u5B9A\\u5236\\u4E0B\\u9762\\u7684\\u6837\\u5F0F\\u4FEE\\u590D, \\u540E\\u9762\\u8003\\u8651\\u5F03\\u7528 material-table */\\n .MuiTablePagination-selectLabel,\\n .MuiTablePagination-displayedRows {\\n display: none;\\n }\\n .MuiTypography-caption {\\n display: inline-block;\\n }\\n .MuiTablePagination-selectLabel + .MuiInputBase-root {\\n margin-right: 8px;\\n }\\n\"])));\nvar _default = TableStyle;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Wrapped;\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"children\", \"style\"];\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction Wrapped(_ref) {\n let {\n children,\n style\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, _objectSpread(_objectSpread({\n style: style\n }, rest), {}, {\n children: children\n }));\n}\nWrapped.propTypes = {\n children: _propTypes.default.any.isRequired,\n style: _propTypes.default.object\n};\nWrapped.defaultProps = {\n style: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MemberActions;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _ForbidLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ForbidLoginIcon\"));\nvar _AllowLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/AllowLoginIcon\"));\nvar _team = require(\"../../contexts/team\");\nvar _actions = _interopRequireDefault(require(\"../../actions\"));\nvar _issuePassport = _interopRequireDefault(require(\"./issue-passport\"));\nvar _toggleUserApproval = _interopRequireDefault(require(\"./toggle-user-approval\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction MemberActions(_ref) {\n let {\n user,\n onIssuePassport\n } = _ref;\n const {\n teamDid,\n roles\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [enablePassportIssuance, setEnablePassportIssuance] = (0, _react.useState)(false);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_actions.default, {\n \"data-cy\": \"member-actions\",\n actions: [{\n icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n fontSize: \"small\"\n }),\n text: t('team.passport.issue'),\n 'data-cy': 'action-issue-passport',\n onClick: e => {\n e.stopPropagation();\n setEnablePassportIssuance(true);\n }\n },\n // eslint-disable-next-line react/no-unstable-nested-components\n _ref2 => {\n let {\n close\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_toggleUserApproval.default, {\n user: user,\n children: _ref3 => {\n let {\n open: o\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_MenuItem.default, {\n dense: true,\n onClick: e => {\n e.stopPropagation();\n close();\n o(e);\n },\n \"data-cy\": \"action-toggle-block\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemIcon.default, {\n style: {\n minWidth: 24,\n marginRight: 8\n },\n children: user.approved ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ForbidLoginIcon.default, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_AllowLoginIcon.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemText.default, {\n primary: user.approved ? t('team.member.forbidLogin') : t('team.member.allowLogin')\n })]\n });\n }\n }, \"toggle-approval\");\n }]\n }), enablePassportIssuance && /*#__PURE__*/(0, _jsxRuntime.jsx)(_issuePassport.default, {\n teamDid: teamDid,\n ownerDid: user.did,\n roles: roles,\n onCancel: () => setEnablePassportIssuance(false),\n onSuccess: () => {\n onIssuePassport();\n setEnablePassportIssuance(false);\n }\n })]\n });\n}\nMemberActions.propTypes = {\n user: _propTypes.default.object.isRequired,\n onIssuePassport: _propTypes.default.func\n};\nMemberActions.defaultProps = {\n onIssuePassport: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MemberList;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Loop = _interopRequireDefault(require(\"@mui/icons-material/Loop\"));\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _PersonIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/PersonIcon\"));\nvar _ExternalIssuerIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ExternalIssuerIcon\"));\nvar _Datatable = _interopRequireWildcard(require(\"@arcblock/ux/lib/Datatable\"));\nvar _RelativeTime = _interopRequireDefault(require(\"@arcblock/ux/lib/RelativeTime\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _util = require(\"../../util\");\nvar _inviteMember = _interopRequireDefault(require(\"./invite-member\"));\nvar _transferNode = _interopRequireDefault(require(\"./transfer-node\"));\nvar _member = _interopRequireDefault(require(\"./member\"));\nvar _invitations = _interopRequireDefault(require(\"./invitations\"));\nvar _actions = _interopRequireDefault(require(\"./actions\"));\nvar _util2 = require(\"./util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nconst ROLE_ALL = '$all';\nconst ROLE_NONE = '$none';\nconst getCount = (counts, name) => {\n const item = counts.find(x => x.key === name);\n return (item === null || item === void 0 ? void 0 : item.value) || 0;\n};\nconst isFromExternal = (user, teamIssuerDid) => {\n const list = user.passports || [];\n if (!list.length) {\n return false;\n }\n return !list.some(z => {\n var _z$issuer;\n return ((_z$issuer = z.issuer) === null || _z$issuer === void 0 ? void 0 : _z$issuer.id) === teamIssuerDid;\n });\n};\nfunction SimpleInfo(_ref) {\n let {\n user\n } = _ref;\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const main = /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"member-block\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"member-avatar\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n src: user.avatar,\n size: 24,\n did: user.did,\n shape: \"circle\",\n style: {\n borderRadius: '100%',\n overflow: 'hidden'\n }\n }), !user.approved && /*#__PURE__*/(0, _jsxRuntime.jsx)(\"did\", {\n className: \"badge-block\"\n }), user.isFromExternal && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('team.passport.externalPassport'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 1,\n className: \"icon\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExternalIssuerIcon.default, {})\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"member-text\",\n children: user.fullName\n })]\n });\n return user.approved ? main : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('team.member.forbidLoginDescription'),\n children: main\n })\n });\n}\nSimpleInfo.propTypes = {\n user: _propTypes.default.object.isRequired\n};\nfunction MemberList(_ref2) {\n let {\n type\n } = _ref2;\n const {\n teamDid,\n teamIssuerDid,\n invitations,\n roles,\n refresh,\n enablePassportIssuance,\n endpoint,\n api\n } = (0, _team.useTeamContext)();\n const {\n inService,\n ws: {\n useSubscription\n }\n } = (0, _node.useNodeContext)();\n const {\n t,\n locale\n } = (0, _react.useContext)(_context.LocaleContext);\n const [showInviteMember, setShowInviteMember] = (0, _react.useState)(false);\n const [showTransferMember, setShowTransferMember] = (0, _react.useState)(false);\n const [showInviting, setShowInviting] = (0, _react.useState)(false);\n const [memberDialog, setMemberDialog] = (0, _react.useState)(false); // member, inviting\n const [loading, setLoading] = (0, _react.useState)(false);\n const [users, setUsers] = (0, _react.useState)([]);\n const [rowCount, setRowCount] = (0, _react.useState)();\n const [userCounts, setUserCounts] = (0, _react.useState)([]);\n const durableKey = \"members-\".concat(teamDid);\n const tableDurableData = (0, _Datatable.getDurableData)(durableKey);\n const [search, setSearch] = (0, _react.useState)({\n role: ROLE_ALL,\n searchText: tableDurableData.searchText || '',\n hideBlocked: false,\n pageSize: tableDurableData.rowsPerPage || 10,\n page: tableDurableData.page ? tableDurableData.page + 1 : 1\n });\n const sideList = (roles || []).map(x => ({\n name: x.name,\n title: x.title,\n num: getCount(userCounts, x.name)\n }));\n sideList.unshift({\n name: ROLE_ALL,\n title: 'All Members',\n num: getCount(userCounts, ROLE_ALL)\n });\n sideList.push({\n name: ROLE_NONE,\n title: 'Other',\n num: getCount(userCounts, ROLE_NONE)\n });\n const getUsers = () => {\n const query = {};\n if (search.hideBlocked) {\n query.approved = true;\n }\n query.role = search.role;\n if (search.searchText) {\n query.search = search.searchText;\n }\n setLoading(true);\n api.getUsers({\n query,\n paging: {\n page: search.page,\n pageSize: search.pageSize\n }\n }).then(res => {\n setLoading(false);\n (res.users || []).forEach(x => {\n x.isFromExternal = isFromExternal(x, teamIssuerDid);\n x.avatar = (0, _util2.parseAvatar)(x.avatar, teamDid, inService);\n\n // for backwards compatibility\n x.passports = (x.passports || []).filter(y => y.issuer);\n });\n setUsers(res.users || []);\n setRowCount(res.paging.total);\n }).catch(err => {\n setLoading(false);\n _toast.default.error(err.message);\n });\n };\n const getUserCounts = () => {\n api.getUsersCountPerRole().then(res => {\n setUserCounts(res.counts || []);\n }).catch(err => {\n _toast.default.error(err.message);\n });\n };\n const handleUserChange = data => {\n if (data.teamDid === teamDid) {\n getUsers();\n getUserCounts();\n }\n };\n (0, _react.useEffect)(() => {\n getUsers();\n }, [\"\".concat(search.hideBlocked, \"-\").concat(search.role, \"-\").concat(search.page, \"-\").concat(search.pageSize, \"-\").concat(search.searchText)]); //eslint-disable-line\n\n // user counts\n (0, _react.useEffect)(() => {\n getUserCounts();\n }, []); //eslint-disable-line\n\n useSubscription(_constant.EVENTS.USER_UPDATED, handleUserChange, [search]);\n useSubscription(_constant.EVENTS.USER_ADDED, handleUserChange, [search]);\n const isInvitationEnabled = enablePassportIssuance;\n const columns = [{\n label: t('common.name'),\n name: 'fullName',\n options: {\n customBodyRenderLite: rawIndex => {\n const x = users[rawIndex];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n \"data-cy\": \"member-name-\".concat(x.fullName),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(SimpleInfo, {\n user: x\n })\n }, x.did);\n }\n }\n }, {\n label: t('common.address'),\n name: 'did',\n options: {\n customBodyRender: e => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, {\n size: 14,\n copyable: false,\n children: e\n });\n }\n }\n }, {\n label: t('team.member.lastLogin'),\n name: 'lastLoginAt',\n options: {\n customBodyRender: e => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_RelativeTime.default, {\n value: e,\n locale: locale\n });\n }\n }\n }, {\n label: t('team.member.lastLoginIp'),\n name: 'lastLoginIp',\n options: {\n customBodyRender: e => {\n return e || '-';\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.lastLoginAt)\n }, {\n name: t('team.member.lastLoginIp'),\n value: user.lastLoginIp || ''\n }, {\n name: t('common.createdAt'),\n value: (0, _util.formatToDatetime)(user.createdAt)\n }, {\n name: t('common.remark'),\n value: user.remark || '--'\n }].filter(Boolean) : [];\n return rows.map(row => {\n if (row.name === t('common.did')) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n nameFormatter: () => t('common.did'),\n children: row.value\n }, row.name);\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n style: {\n alignItems: 'flex-start'\n },\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n children: row.value\n }, row.name);\n });\n };\n const tabConfigs = {\n info: {\n label: t('common.basicInfo'),\n value: 'info',\n component: Info\n },\n passports: {\n label: t('common.passport'),\n value: 'passports',\n component: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_passports.default, {\n user: user,\n teamDid: teamDid,\n roles: roles,\n onCreate: () => {\n getData(teamDid);\n setTab('issuances');\n },\n onRefresh: () => {\n getData(teamDid);\n }\n })\n },\n issuances: {\n label: t('team.passport.issuance.pending'),\n value: 'issuances',\n component: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_passportIssuances.default, {\n issuances: issuances || [],\n teamDid: teamDid,\n onRefresh: () => getData(teamDid)\n })\n }\n };\n const tabs = Object.values(tabConfigs).map(_ref2 => {\n let {\n label,\n value\n } = _ref2;\n return {\n label,\n value\n };\n }).filter(x => {\n if (x.value === 'issuances') {\n return enablePassportIssuance && issuances && !!issuances.length;\n }\n return true;\n });\n const tabConfig = tabConfigs[tab] || tabConfigs.info;\n const onTabChange = newTab => {\n setTab(newTab);\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('common.member'),\n onClose: onCancel,\n open: true,\n PaperProps: {\n style: {\n maxWidth: 632,\n minHeight: '80vh'\n }\n },\n fullWidth: true,\n actions: user && /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_toggleUserApproval.default, {\n user: user,\n children: _ref3 => {\n let {\n open\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(BlockButton, {\n onClick: open,\n children: [user.approved ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ForbidLoginIcon.default, {\n style: {\n fontSize: '1.2em',\n marginRight: '0.4em'\n }\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_AllowLoginIcon.default, {\n style: {\n fontSize: '1.2em',\n marginRight: '0.4em'\n }\n }), user.approved ? t('team.member.forbidLogin') : t('team.member.allowLogin')]\n });\n }\n })\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [!user && /*#__PURE__*/(0, _jsxRuntime.jsx)(Center, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n }), user && /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n className: \"info\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n src: user.avatar,\n style: {\n width: 48,\n height: 48,\n backgroundColor: 'transparent',\n marginRight: 16\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"name\",\n children: user.fullName\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"did\",\n mt: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, {\n children: user.did\n })\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mx: 3,\n className: \"tabs\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tabs.default, {\n tabs: tabs,\n current: tab,\n onChange: onTabChange,\n scrollButtons: \"auto\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"body\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(tabConfig.component, {})\n })]\n })]\n })\n });\n}\nMember.propTypes = {\n userDid: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n initTab: _propTypes.default.string\n};\nMember.defaultProps = {\n initTab: 'info'\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .info {\\n .name {\\n font-weight: 400;\\n font-size: 18px;\\n line-height: 25px;\\n color: #222222;\\n }\\n }\\n\\n .tabs {\\n margin-top: 24px;\\n margin-left: 0;\\n margin-right: 0;\\n }\\n\\n .body {\\n margin-top: 24px;\\n }\\n\"])));\nconst Center = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n flex: 1;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n height: 200px;\\n\"])));\nconst BlockButton = _styled.default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([\"\\n flex-shrink: 0;\\n width: 100%;\\n height: 64px;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n cursor: pointer;\\n color: #999;\\n fill: #999;\\n font-size: 16px;\\n border-top: 1px solid #f0f0f0;\\n position: sticky;\\n bottom: 0;\\n background: #fff;\\n z-index: 10;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportIssuances;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _notistack = require(\"notistack\");\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\nvar _passportTag = _interopRequireDefault(require(\"../../passport-tag\"));\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction PassportIssuances(_ref) {\n let {\n issuances,\n teamDid,\n onRefresh\n } = _ref;\n const {\n api: client,\n inService\n } = (0, _node.useNodeContext)();\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const [delConfirm, setDelConfirm] = (0, _react.useState)(null);\n const [loading, setLoading] = (0, _react.useState)(false);\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n const {\n endpoint\n } = (0, _team.useTeamContext)();\n const deleteIssuance = async _ref2 => {\n let {\n id\n } = _ref2;\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n await client.deletePassportIssuance({\n input: {\n teamDid,\n sessionId: id\n }\n });\n onRefresh();\n } catch (error) {\n enqueueSnackbar(error.message, {\n autoHideDuration: 5000,\n variant: 'error'\n });\n } finally {\n setLoading(false);\n setDelConfirm(null);\n }\n };\n const onCancel = () => {\n setLoading(false);\n setDelConfirm(null);\n };\n const getLink = column => endpoint ? (0, _util.getIssuePassportLink)({\n id: column.id,\n endpoint\n }) : '';\n\n // eslint-disable-next-line react/prop-types\n // eslint-disable-next-line react/no-unstable-nested-components\n function Issuance(_ref3) {\n let {\n data: d\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"issuance\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n justifyContent: \"space-between\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: can => can ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_passportTag.default, {\n passport: {\n title: d.title,\n name: d.name\n },\n onDelete: () => setDelConfirm({\n title: t('team.passport.issuance.delete.title'),\n description: t('team.passport.issuance.delete.description', {\n link: getLink(d)\n }),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n deleteIssuance(d);\n },\n onCancel\n })\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_passportTag.default, {\n passport: {\n title: d.title,\n name: d.name\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n style: {\n color: '#999'\n },\n children: [t('common.expires'), \":\\xA0\", (0, _util.formatToDatetime)(d.expireDate)]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 2,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n children: getLink(d)\n })\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [issuances.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(Issuance, {\n data: x\n })), delConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: delConfirm.title,\n description: delConfirm.description,\n confirm: delConfirm.confirm,\n cancel: delConfirm.cancel,\n params: delConfirm.params,\n onConfirm: delConfirm.onConfirm,\n onCancel: delConfirm.onCancel\n })]\n });\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiTableHead-root {\\n display: none;\\n }\\n .issuance {\\n padding: 16px 0;\\n border-bottom: 1px solid #f0f0f0;\\n .MuiTypography-root {\\n display: inline-block;\\n width: 100%;\\n background: #f3f3f3;\\n border-radius: 4px;\\n padding-top: 6px;\\n padding-bottom: 6px;\\n }\\n }\\n\"])));\nPassportIssuances.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n issuances: _propTypes.default.array,\n onRefresh: _propTypes.default.func\n};\nPassportIssuances.defaultProps = {\n issuances: [],\n onRefresh: () => {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Passports;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _notistack = require(\"notistack\");\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _upperFirst = _interopRequireDefault(require(\"lodash/upperFirst\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\nvar _ErrorOutline = _interopRequireDefault(require(\"@mui/icons-material/ErrorOutline\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _RevokeIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/RevokeIcon\"));\nvar _ExternalIssuerIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ExternalIssuerIcon\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _createPassportSvg = _interopRequireDefault(require(\"@abtnode/auth/lib/util/create-passport-svg\"));\nvar _node = require(\"../../contexts/node\");\nvar _session = require(\"../../contexts/session\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _searchInput = _interopRequireDefault(require(\"../search-input\"));\nvar _listHeader = _interopRequireDefault(require(\"../styles/list-header\"));\nvar _issuePassport = _interopRequireDefault(require(\"./issue-passport\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction ConfirmDescription(_ref) {\n let {\n action,\n passport\n } = _ref;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n roles\n } = (0, _team.useTeamContext)();\n const role = roles.find(x => x.name === passport.role);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n children: action === 'enable' ? t('team.member.enablePassportDescription') : t('team.member.revokePassportDescription')\n }), role && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 3,\n fontWeight: \"bold\",\n children: t('team.member.passportPermissionTitle')\n }), role && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 1,\n children: role.description\n })]\n });\n}\nConfirmDescription.propTypes = {\n action: _propTypes.default.string.isRequired,\n passport: _propTypes.default.object.isRequired\n};\nConfirmDescription.defaultProps = {};\nfunction Passports(_ref2) {\n var _blocklet$settings;\n let {\n user,\n onCreate\n } = _ref2;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n session\n } = (0, _session.useSessionContext)();\n const {\n roles,\n teamDid,\n teamIssuerDid,\n refresh: refreshTeam,\n enablePassportIssuance,\n trustedPassports,\n passportColor,\n blocklet\n } = (0, _team.useTeamContext)();\n const {\n api,\n inService\n } = (0, _node.useNodeContext)();\n const {\n enqueueSnackbar\n } = (0, _notistack.useSnackbar)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [toggleConfirm, setToggleConfirm] = (0, _react.useState)(null);\n const [showIssueDialog, setShowIssueDialog] = (0, _react.useState)(false);\n const [search, setSearch] = (0, _react.useState)('');\n const passports = ((0, _get.default)(user, 'passports') || []).map(x => _objectSpread(_objectSpread({}, x), {}, {\n revoked: x.status === _constant.PASSPORT_STATUS.REVOKED\n }));\n const togglePassportStatus = async passport => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n const method = passport.status === _constant.PASSPORT_STATUS.REVOKED ? 'enableUserPassport' : 'revokeUserPassport';\n await api[method]({\n input: {\n teamDid,\n userDid: user.did,\n passportId: passport.id\n }\n });\n refreshTeam();\n } catch (err) {\n enqueueSnackbar((0, _util.formatError)(err), {\n autoHideDuration: 5000,\n variant: 'error'\n });\n } finally {\n setLoading(false);\n setToggleConfirm(null);\n }\n };\n const confirmToggle = item => item.status === _constant.PASSPORT_STATUS.REVOKED ? setToggleConfirm({\n title: t('team.member.enablePassport'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsx)(ConfirmDescription, {\n action: \"enable\",\n passport: item\n }),\n confirm: t('common.enable'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n togglePassportStatus(item);\n },\n onCancel: () => {\n setLoading(false);\n setToggleConfirm(null);\n },\n color: 'primary'\n }) : setToggleConfirm({\n title: t('team.member.revokePassport'),\n description: /*#__PURE__*/(0, _jsxRuntime.jsx)(ConfirmDescription, {\n action: \"revoke\",\n passport: item\n }),\n confirm: t('common.revoke'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n togglePassportStatus(item);\n },\n onCancel: () => {\n setLoading(false);\n setToggleConfirm(null);\n }\n });\n const revokeInfo = (hasPermission, passport) => {\n if (user.did === session.user.did && session.user.passportId && session.user.passportId === passport.id) {\n return {\n revokable: false,\n message: t('team.passport.shouldNotDeleteCurrent')\n };\n }\n if (!hasPermission) {\n return {\n revokable: false,\n message: t('team.passport.noPermission')\n };\n }\n if (teamDid === passport.issuer.id && passport.name === 'owner') {\n return {\n revokable: false,\n message: t('team.passport.noPermission')\n };\n }\n return {\n revokable: true\n };\n };\n const filteredPassports = passports.filter(x => !search || x.title.includes(search) || x.name.includes(search));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_listHeader.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"left\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_searchInput.default, {\n placeholder: t('team.passport.search'),\n value: search,\n onChange: e => setSearch(e.target.value)\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"right\",\n children: enablePassportIssuance && !!user.approved && /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"contained\",\n color: \"primary\",\n \"data-cy\": \"issue-passport\",\n onClick: () => setShowIssueDialog(true),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }), t('team.passport.issue')]\n })\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [filteredPassports.map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: can => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"passport-item\",\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n mt: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML: {\n __html: (0, _createPassportSvg.default)({\n title: x.title || x.name,\n issuer: x.issuer && x.issuer.name,\n issuerDid: x.issuer && x.issuer.id,\n ownerName: user.fullName,\n ownerAvatarUrl: user.avatar,\n revoked: x.revoked,\n preferredColor: passportColor,\n width: '120px'\n })\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"body\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"title\",\n display: \"flex\",\n alignItems: \"center\",\n children: [(0, _upperFirst.default)(x.title), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"status-icons\",\n children: [!!teamIssuerDid && x.issuer.id !== teamIssuerDid && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExternalIssuerIcon.default, {}), x.revoked && /*#__PURE__*/(0, _jsxRuntime.jsx)(_RevokeIcon.default, {})]\n })]\n }), !!teamIssuerDid && x.issuer.id !== teamIssuerDid && /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"tip\",\n children: [x.issuer.id !== teamIssuerDid && !trustedPassports.some(y => y.issuerDid === x.issuer.id) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('team.passport.notTrustedIssuerTip'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n component: _ErrorOutline.default,\n style: {\n fontSize: '1.3em'\n },\n color: \"error.main\",\n mr: 0.5\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: t('team.passport.issueBy', {\n name: x.issuer.name\n })\n })]\n })]\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: revokeInfo(can, x).revokable ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"outlined\",\n color: x.revoked ? 'primary' : 'secondary',\n onClick: () => confirmToggle(x),\n children: [x.revoked ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_RevokeIcon.default, {\n style: {\n height: 16,\n marginRight: 4\n }\n }), x.revoked ? t('common.enable') : t('common.revoke')]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: revokeInfo(can, x).message,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ErrorOutline.default, {\n style: {\n color: '#ddd'\n }\n })\n })\n })]\n })\n })), !filteredPassports.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })]\n }), showIssueDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(_issuePassport.default, {\n teamDid: teamDid,\n ownerDid: user.did,\n roles: roles,\n onCancel: () => setShowIssueDialog(false),\n onSuccess: () => {\n onCreate();\n setShowIssueDialog(false);\n },\n showOwnerPassport: blocklet && !((_blocklet$settings = blocklet.settings) !== null && _blocklet$settings !== void 0 && _blocklet$settings.owner)\n }), toggleConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: toggleConfirm.title,\n description: toggleConfirm.description,\n confirm: toggleConfirm.confirm,\n cancel: toggleConfirm.cancel,\n params: toggleConfirm.params,\n onConfirm: toggleConfirm.onConfirm,\n onCancel: toggleConfirm.onCancel,\n color: toggleConfirm.color\n })]\n });\n}\nPassports.propTypes = {\n user: _propTypes.default.object.isRequired,\n onCreate: _propTypes.default.func\n};\nPassports.defaultProps = {\n onCreate: () => {}\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .passport-item {\\n .body {\\n padding: 0;\\n margin-left: 24px;\\n margin-top: 0;\\n }\\n .title {\\n font-weight: 400;\\n font-size: 16px;\\n line-height: 19px;\\n color: #222222;\\n }\\n .tip {\\n display: flex;\\n align-items: center;\\n font-size: 14px;\\n margin-top: 6px;\\n color: #bbb;\\n }\\n .status-icons {\\n svg {\\n fill: #bfbfbf;\\n height: 1.2em;\\n margin-left: 0.4em;\\n }\\n }\\n .MuiButton-outlinedSecondary {\\n color: #f16e6e;\\n fill: #f16e6e;\\n background: #fcf3f3;\\n border: 0;\\n &:hover {\\n border: 0;\\n }\\n }\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ToggleUserApproval;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _session = require(\"../../contexts/session\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nconst isNodeOwner = (nodeInfo, userDid) => nodeInfo.nodeOwner && nodeInfo.nodeOwner.did === userDid;\nconst isSelf = (sessionUser, userDid) => sessionUser && sessionUser.did === userDid;\nfunction ToggleUserApproval(_ref) {\n let {\n user,\n onCancel: _onCancel,\n onSuccess,\n onError,\n children\n } = _ref;\n const {\n api,\n info: nodeInfo,\n inService\n } = (0, _node.useNodeContext)();\n const {\n session\n } = (0, _session.useSessionContext)();\n const {\n teamDid,\n refresh\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [show, setShow] = (0, _react.useState)(false);\n const open = () => setShow(true);\n const updateUserApproval = async d => {\n const {\n did,\n approved\n } = d;\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n await api.updateUserApproval({\n input: {\n teamDid,\n user: {\n did,\n approved: !approved\n }\n }\n });\n setShow(false);\n onSuccess();\n refresh();\n } catch (error) {\n _toast.default.error((0, _util.formatError)(error));\n onError();\n } finally {\n setLoading(false);\n }\n };\n const approveConfirm = {\n title: user.approved ? t('team.member.forbidLogin') : t('team.member.allowLogin'),\n description: user.approved ? t('team.member.forbidLoginDescription') : t('team.member.allowLoginDescription'),\n confirm: t('common.confirm'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n updateUserApproval(user);\n },\n onCancel: () => {\n setLoading(false);\n setShow(false);\n _onCancel();\n },\n color: user.approved ? 'error' : 'primary'\n };\n let can;\n if (!inService) {\n can = nodeInfo.nodeOwner && !isNodeOwner(nodeInfo, user.did) && !isSelf(session.user, user.did);\n } else {\n can = !isSelf(session.user, user.did);\n }\n if (!can) {\n return null;\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [typeof children === 'function' ? children({\n can,\n open\n }) : children, show ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: approveConfirm.title,\n description: approveConfirm.description,\n confirm: approveConfirm.confirm,\n cancel: approveConfirm.cancel,\n params: approveConfirm.params,\n onConfirm: approveConfirm.onConfirm,\n onCancel: approveConfirm.onCancel,\n color: approveConfirm.color\n }) : null]\n });\n}\nToggleUserApproval.propTypes = {\n user: _propTypes.default.object,\n onSuccess: _propTypes.default.func,\n onCancel: _propTypes.default.func,\n onError: _propTypes.default.func,\n children: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.func])\n};\nToggleUserApproval.defaultProps = {\n user: {},\n onSuccess: () => {},\n onCancel: () => {},\n onError: () => {},\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = TransferMember;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _useAsync = _interopRequireDefault(require(\"react-use/lib/useAsync\"));\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Connect = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Connect\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\nvar _node = require(\"../../contexts/node\");\nvar _util = require(\"../../util\");\nvar _session = require(\"../../contexts/session\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction TransferMember(_ref) {\n let {\n teamDid,\n onCancel,\n onSuccess,\n onError,\n endpoint\n } = _ref;\n const {\n api,\n info\n } = (0, _node.useNodeContext)();\n const {\n api: sessionAPI\n } = (0, _react.useContext)(_session.SessionContext);\n const [loading, setLoading] = (0, _react.useState)(false);\n const {\n locale\n } = (0, _context.useLocaleContext)();\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [openTransferNFTAuth, setOpenTransferNFTAuth] = (0, _react.useState)(false);\n const [activeStep, setActiveStep] = (0, _react.useState)(0);\n const [inviteInfo, setInviteInfo] = (0, _react.useState)('');\n const [remark, setRemark] = (0, _react.useState)('');\n const needTransferNFT = !!(0, _get.default)(info, 'ownerNft.did');\n const delegationState = (0, _useAsync.default)(async () => {\n if (needTransferNFT) {\n const {\n state\n } = await api.getDelegationState();\n return state;\n }\n return {\n delegated: true\n };\n });\n if (delegationState.loading) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('team.transferNode.inviteDialog.title'),\n fullWidth: true,\n open: true,\n onClose: onCancel,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n display: 'flex',\n justifyContent: 'center'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n })\n });\n }\n if (delegationState.error) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('team.transferNode.inviteDialog.title'),\n fullWidth: true,\n open: true,\n onClose: onCancel,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n children: (0, _util.formatError)(delegationState.error)\n })\n });\n }\n const onCreate = async () => {\n setError(null);\n setLoading(true);\n try {\n const {\n inviteInfo: tmpInviteInfo\n } = await api.createTransferInvitation({\n input: {\n teamDid,\n role: 'owner',\n remark: remark.trim()\n }\n });\n setInviteInfo(tmpInviteInfo);\n setActiveStep(steps.length - 1); // 跳转到最后一步\n } catch (err) {\n const errMsg = (0, _util.formatError)(err);\n setError(errMsg);\n onError(err);\n } finally {\n setLoading(false);\n }\n };\n const handleTransferNFT = () => {\n setOpenTransferNFTAuth(true);\n setActiveStep(1);\n };\n const handleCancelTransferNFT = () => {\n setOpenTransferNFTAuth(false);\n setActiveStep(0);\n };\n const steps = [{\n body: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n component: \"div\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Alert.default, {\n type: \"warning\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('team.transferNode.inviteDialog.tips.progress')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('team.transferNode.inviteDialog.tips.newOwnerPermissions')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"warning\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('team.transferNode.inviteDialog.tips.revoke')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 20,\n marginBottom: 10\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.remark'),\n autoComplete: \"off\",\n variant: \"outlined\",\n fullWidth: true,\n style: {\n marginBottom: 8\n },\n value: remark,\n onChange: e => {\n setError(null);\n setRemark(e.target.value);\n },\n disabled: loading,\n \"data-cy\": \"transfer-node-input-remark\"\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: 20,\n marginBottom: 10\n }\n })]\n }),\n cancel: t('common.cancel'),\n confirm: t('team.transferNode.inviteDialog.createInviteLink'),\n onCancel,\n onConfirm: needTransferNFT && !(0, _get.default)(delegationState, 'value.delegated') ? handleTransferNFT : onCreate\n }, {\n body: () => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Connect.default, {\n action: \"delegate-transfer-nft\",\n open: openTransferNFTAuth,\n locale: locale,\n checkFn: sessionAPI.get,\n onClose: handleCancelTransferNFT,\n onSuccess: onCreate,\n checkTimeout: 5 * 60 * 1000,\n webWalletUrl: (0, _util.getWebWalletUrl)(info),\n extraParams: {\n targetDID: info.did\n },\n messages: {\n title: t('team.transferNode.delegateDialog.title'),\n scan: t('team.transferNode.delegateDialog.scan'),\n confirm: t('team.transferNode.delegateDialog.confirm'),\n success: t('team.transferNode.delegateDialog.success')\n },\n popup: true\n });\n }\n }, {\n body: () => {\n const link = (0, _util.getInviteLink)({\n inviteId: inviteInfo.inviteId,\n endpoint\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Bold, {\n children: t('team.transferNode.inviteDialog.createSuccessTip', {\n expireDate: (0, _util.formatToDatetime)(inviteInfo.expireDate)\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n style: {\n marginTop: '40px'\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_clickToCopy.default, {\n children: link\n })]\n });\n },\n confirm: t('common.confirm'),\n onConfirm: onSuccess\n }];\n const step = steps[activeStep];\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('team.transferNode.inviteDialog.title'),\n fullWidth: true,\n open: true,\n showCloseButton: false,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [step.cancel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: step.onCancel,\n color: \"inherit\",\n children: step.cancel\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: step.onConfirm,\n color: \"primary\",\n disabled: loading,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), step.confirm]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: typeof step.body === 'function' ? step.body() : step.body\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n children: error\n })]\n });\n}\nTransferMember.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onError: _propTypes.default.func,\n endpoint: _propTypes.default.string\n};\nTransferMember.defaultProps = {\n onError: () => {},\n endpoint: ''\n};\nconst Bold = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n font-size: 16px;\\n font-weight: bold;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.parseAvatar = parseAvatar;\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\nvar _constant = require(\"@abtnode/constant\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n// eslint-disable-next-line import/prefer-default-export\nfunction parseAvatar(avatar, teamDid, inService) {\n if (avatar && avatar.startsWith(_constant.USER_AVATAR_URL_PREFIX)) {\n const prefix = window.env.apiPrefix || '/';\n if (inService) {\n return (0, _urlJoin.default)(prefix, _constant.USER_AVATAR_PATH_PREFIX, avatar.replace(_constant.USER_AVATAR_URL_PREFIX, ''));\n }\n return (0, _urlJoin.default)(prefix, _constant.USER_AVATAR_PATH_PREFIX, teamDid, avatar.replace(_constant.USER_AVATAR_URL_PREFIX, ''));\n }\n return avatar;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportColorWithPermission;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _reactColor = require(\"react-color\");\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _createPassportSvg = _interopRequireDefault(require(\"@abtnode/auth/lib/util/create-passport-svg\"));\nvar _util = require(\"@blocklet/meta/lib/util\");\nvar _passportColor = require(\"@abtnode/auth/lib/util/passport-color\");\nvar _constant = require(\"@blocklet/constant\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _blocklet = require(\"../../contexts/blocklet\");\nvar _util2 = require(\"../../util\");\nvar _permission = require(\"../../permission\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction PassportColor(_ref) {\n let {\n onCancel,\n onSuccess\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n blocklet\n } = (0, _blocklet.useBlockletContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const curColor = (blocklet.environments.find(x => x.key === 'BLOCKLET_PASSPORT_COLOR') || {}).value || 'auto';\n const defaultColor = curColor === 'auto' ? (0, _passportColor.getPassportColorFromDid)(blocklet.appDid) : curColor;\n const [color, setColor] = (0, _react.useState)(defaultColor);\n const onSubmit = async () => {\n const params = [{\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_PASSPORT_COLOR,\n value: color\n }];\n try {\n setLoading(true);\n await api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: params\n }\n });\n onSuccess();\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('team.passport.color'),\n onClose: onCancel,\n open: true,\n fullWidth: true,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onCancel,\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: onSubmit,\n color: \"primary\",\n disabled: loading,\n variant: \"contained\",\n autoFocus: true,\n \"data-cy\": \"color-btn-confirm\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.save')]\n })]\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n className: \"dialog-content\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactColor.ChromePicker, {\n color: color,\n onChange: c => setColor(c.hex)\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n style: {\n width: 96,\n marginLeft: 48\n },\n alt: \"\",\n src: (0, _createPassportSvg.default)({\n title: 'Owner',\n issuer: (0, _util.getDisplayName)(blocklet),\n issuerDid: blocklet.appDid,\n ownerName: 'Your Name',\n isDataUrl: true,\n preferredColor: color\n })\n })]\n })\n });\n}\nconst PassportColorInDaemon = (0, _permission.withPermission)(PassportColor, 'mutate_team');\nconst PassportColorInService = (0, _permission.withPermission)(PassportColor, '', _util2.BlockletAdminRoles);\nfunction PassportColorWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportColorInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportColorInDaemon, _objectSpread({}, props));\n}\nPassportColor.propTypes = {\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired\n};\nPassportColor.defaultProps = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportDetailWithPermission;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _DeleteIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/DeleteIcon\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _permission = require(\"../../permission\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _mutateRole = _interopRequireDefault(require(\"./mutate-role\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject, _templateObject2;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction PassportDetail(_ref) {\n let {\n onCancel,\n onSuccess,\n onDelete,\n roleName,\n hasPermission\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n roles,\n permissions,\n teamDid,\n refresh: refreshTeam,\n isNodeTeam\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [binds, setBinds] = (0, _react.useState)([]);\n const [updateForm, setUpdateForm] = (0, _react.useState)(false);\n const [delConfirm, setDelConfirm] = (0, _react.useState)(null);\n const [loading, setLoading] = (0, _react.useState)(false);\n const role = (0, _cloneDeep.default)(roles.find(x => x.name === roleName));\n const isProtected = (0, _util.isProtectedRole)(roleName);\n const deletePassport = async name => {\n if (loading) return;\n try {\n setLoading(true);\n await api.deleteRole({\n input: {\n teamDid,\n name\n }\n });\n onDelete();\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n setDelConfirm(null);\n }\n };\n const getData = async (team, name) => {\n const res = await api.getPermissionsByRole({\n input: {\n teamDid: team,\n role: {\n name\n }\n }\n });\n const permissionList = res.permissions || [];\n const bindList = permissions.map(x => _objectSpread(_objectSpread({}, x), {}, {\n bind: permissionList.some(y => y.name === x.name)\n }));\n setBinds(bindList);\n };\n const onBind = async () => {\n setLoading(true);\n const grantNames = binds.filter(x => x.bind).map(x => x.name);\n try {\n await api.updatePermissionsForRole({\n input: {\n teamDid,\n roleName: role.name,\n grantNames\n }\n });\n _toast.default.success(t('common.saveSuccess'));\n onSuccess();\n } catch (err) {\n _toast.default.error((0, _util.formatError)(err));\n } finally {\n setLoading(false);\n }\n };\n (0, _react.useEffect)(() => {\n if (teamDid && roleName) {\n getData(teamDid, roleName);\n }\n }, [teamDid, roleName]); // eslint-disable-line\n\n const readPermissionsOnly = isNodeTeam || !hasPermission;\n let bindPermission = null;\n if (isNodeTeam) {\n bindPermission = /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"bind\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: t('common.permission')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"list\",\n children: binds\n // if readonly, show obtained permissions only\n .filter(x => readPermissionsOnly ? x.bind : true).map(x => /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"item\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {\n control: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Checkbox.default, {\n disabled: readPermissionsOnly,\n checked: x.bind,\n onChange: () => {\n setBinds(state => state.map(y => {\n if (y.name === x.name) {\n y.bind = !y.bind;\n }\n return y;\n }));\n },\n name: x.name\n }),\n label: x.description\n })\n }))\n })]\n });\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('common.passport'),\n onClose: onCancel,\n open: true,\n fullWidth: true,\n toolbar: hasPermission && !isProtected && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => setUpdateForm(role),\n \"data-cy\": \"edit-passport-\".concat(role.name),\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {\n fill: \"#bfbfbf\"\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => setDelConfirm({\n title: t('team.passport.delete.title'),\n description: t('team.passport.delete.description', {\n name: role.title\n }),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm: () => {\n deletePassport(role.name);\n },\n onCancel: () => {\n setLoading(false);\n setDelConfirm(null);\n }\n }),\n \"data-cy\": \"delete-passport-\".concat(role.name),\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DeleteIcon.default, {\n \"data-cy\": \"close-passport-dialog\",\n fill: \"#bfbfbf\"\n })\n })]\n }),\n actions: isNodeTeam && !readPermissionsOnly && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onCancel,\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: onBind,\n color: \"primary\",\n disabled: loading || !role,\n variant: \"contained\",\n autoFocus: true,\n \"data-cy\": \"bind-permission-btn-confirm\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.save')]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [!role && /*#__PURE__*/(0, _jsxRuntime.jsx)(Center, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {})\n }), role && /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"dialog-content\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"header\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: role.title\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"description\",\n style: {\n marginTop: isNodeTeam ? 16 : 48\n },\n children: role.description\n })]\n }), bindPermission]\n })]\n }), updateForm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_mutateRole.default, {\n teamDid: teamDid,\n onCancel: () => setUpdateForm(null),\n onSuccess: () => {\n setUpdateForm(null);\n refreshTeam();\n },\n mode: \"update\",\n roleName: updateForm.name,\n item: updateForm\n }), delConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: delConfirm.title,\n description: delConfirm.description,\n confirm: delConfirm.confirm,\n cancel: delConfirm.cancel,\n params: delConfirm.params,\n onConfirm: delConfirm.onConfirm,\n onCancel: delConfirm.onCancel\n })]\n });\n}\nconst PassportDetailInDaemon = (0, _permission.withPermission)(PassportDetail, 'mutate_team');\nconst PassportDetailInService = (0, _permission.withPermission)(PassportDetail, '', _util.BlockletAdminRoles);\nfunction PassportDetailWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportDetailInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportDetailInDaemon, _objectSpread({}, props));\n}\nPassportDetail.propTypes = {\n roleName: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onDelete: _propTypes.default.func.isRequired,\n hasPermission: _propTypes.default.bool\n};\nPassportDetail.defaultProps = {\n hasPermission: false\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .header {\\n .title {\\n font-weight: 400;\\n font-size: 24px;\\n line-height: 28px;\\n color: #222222;\\n }\\n\\n .description {\\n margin-top: 16px;\\n font-weight: 400;\\n font-size: 16px;\\n line-height: 19px;\\n color: #999999;\\n }\\n }\\n\\n .bind {\\n margin-top: 24px;\\n .title {\\n font-weight: 400;\\n font-size: 16px;\\n line-height: 19px;\\n color: #666666;\\n margin-bottom: 24px;\\n }\\n .item {\\n margin-top: 24px;\\n }\\n\\n .MuiFormControlLabel-label {\\n font-weight: 400;\\n font-size: 16px;\\n line-height: 19px;\\n color: #666;\\n }\\n\\n .PrivateSwitchBase-root-45 {\\n padding: 0;\\n padding-right: 12px;\\n }\\n }\\n\"])));\nconst Center = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n flex: 1;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n height: 200px;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportList;\nvar _react = require(\"react\");\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _SplitButton = _interopRequireDefault(require(\"@arcblock/ux/lib/SplitButton\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _LockIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/LockIcon\"));\nvar _ExternalIssuerIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ExternalIssuerIcon\"));\nvar _createPassportSvg = _interopRequireDefault(require(\"@abtnode/auth/lib/util/create-passport-svg\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\nvar _searchInput = _interopRequireDefault(require(\"../search-input\"));\nvar _listHeader = _interopRequireDefault(require(\"../styles/list-header\"));\nvar _detail = _interopRequireDefault(require(\"./detail\"));\nvar _color = _interopRequireDefault(require(\"./color\"));\nvar _mutateRole = _interopRequireDefault(require(\"./mutate-role\"));\nvar _trustedIssuers = _interopRequireDefault(require(\"./trusted-issuers\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction PassportList() {\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const {\n api,\n inService\n } = (0, _node.useNodeContext)();\n const {\n roles,\n teamDid,\n teamIssuerDid,\n teamName,\n refresh: refreshTeam,\n enablePassportIssuance,\n passportColor,\n isNodeTeam\n } = (0, _team.useTeamContext)();\n const [showCreate, setShowCreate] = (0, _react.useState)(false);\n const [updateForm, setUpdateForm] = (0, _react.useState)(false);\n const [showColor, setShowColor] = (0, _react.useState)(false);\n const [showTrustedIssuers, setShowTrustedIssuers] = (0, _react.useState)(null);\n const [search, setSearch] = (0, _react.useState)('');\n const [loading, setLoading] = (0, _react.useState)(false);\n const toggleShowIssue = async () => {\n if (loading) {\n return;\n }\n setLoading(true);\n try {\n await api.configPassportIssuance({\n input: {\n teamDid,\n enable: !enablePassportIssuance\n }\n });\n refreshTeam();\n await (0, _util.sleep)(800);\n _toast.default.success(t('common.configSuccess'));\n setLoading(false);\n } catch (error) {\n _toast.default.error(error.message);\n setLoading(false);\n }\n };\n const filteredRoles = roles.filter(x => !search || x.title.includes(search) || x.name.includes(search));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_listHeader.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"left\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_searchInput.default, {\n placeholder: t('team.passport.search'),\n value: search,\n onChange: e => setSearch(e.target.value)\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"right\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SplitButton.default, {\n variant: \"outlined\",\n menuButtonProps: {\n 'data-cy': 'trusted-issuers-more'\n },\n menu: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SplitButton.default.Item, {\n \"data-cy\": \"config-show-issue-passport\",\n onClick: () => {\n toggleShowIssue();\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10],\n style: {\n marginRight: 8\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [enablePassportIssuance ? t('team.passport.disableIssuance') : t('team.passport.enableIssuance'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n fontSize: 12,\n color: \"#888\",\n children: enablePassportIssuance ? t('team.passport.disableIssuanceTip') : t('team.passport.enableIssuanceTip')\n })]\n })]\n })\n }), !isNodeTeam && /*#__PURE__*/(0, _jsxRuntime.jsx)(_SplitButton.default.Item, {\n onClick: () => setShowColor(true),\n \"data-cy\": \"config-passport-color\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: t('team.passport.configColor')\n })\n })]\n }),\n children: () => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"outlined\",\n \"data-cy\": \"config-trusted-issuers\",\n onClick: () => {\n setShowTrustedIssuers(true);\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ExternalIssuerIcon.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }), t('team.passport.trustedPassportIssuers')]\n })\n }), !isNodeTeam && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n style: {\n marginLeft: 16\n },\n variant: \"contained\",\n edge: \"end\",\n color: \"primary\",\n \"data-cy\": \"create-role\",\n onClick: () => setShowCreate(true),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }), t('team.add')]\n })]\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 3\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"list\",\n children: filteredRoles.map(role => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n \"data-cy\": \"passport-\".concat(role.name),\n className: \"item\",\n display: \"flex\",\n alignItems: \"center\",\n onClick: () => setUpdateForm(role),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n style: {\n width: 120\n },\n alt: \"\",\n src: (0, _createPassportSvg.default)({\n title: role.title,\n issuer: teamName,\n issuerDid: teamIssuerDid,\n ownerName: 'Your Name',\n isDataUrl: true,\n preferredColor: passportColor\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n ml: 3,\n className: \"title\",\n children: role.title\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"description\",\n children: role.description\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"action\",\n children: (0, _util.isProtectedRole)(role.name) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_LockIcon.default, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {})\n })\n })]\n }, role.name))\n }), showCreate && /*#__PURE__*/(0, _jsxRuntime.jsx)(_mutateRole.default, {\n teamDid: teamDid,\n onCancel: () => setShowCreate(false),\n onSuccess: () => {\n setShowCreate(false);\n refreshTeam();\n }\n }), updateForm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_detail.default, {\n onCancel: () => setUpdateForm(null),\n onSuccess: () => {\n setUpdateForm(null);\n refreshTeam();\n },\n onDelete: () => {\n setUpdateForm(null);\n refreshTeam();\n },\n mode: \"update\",\n roleName: updateForm.name,\n item: updateForm\n }), showTrustedIssuers && /*#__PURE__*/(0, _jsxRuntime.jsx)(_trustedIssuers.default, {\n onCancel: () => setShowTrustedIssuers(false)\n }), showColor && /*#__PURE__*/(0, _jsxRuntime.jsx)(_color.default, {\n onCancel: () => setShowColor(null),\n onSuccess: () => setShowColor(null)\n })]\n });\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .list {\\n .item {\\n padding: 12px;\\n margin: 12px -12px;\\n cursor: pointer;\\n transition: box-shadow 0.4s;\\n &:hover {\\n box-shadow: 0 0 10px 4px rgba(0, 0, 0, 0.1);\\n }\\n }\\n\\n .title {\\n font-weight: 400;\\n font-size: 18px;\\n width: 80px;\\n line-height: 21px;\\n color: #222222;\\n }\\n\\n .description {\\n flex: 1;\\n margin-left: 64px;\\n color: #999999;\\n }\\n\\n .action {\\n color: #bfbfbf;\\n fill: #bfbfbf;\\n }\\n }\\n\"])));\nPassportList.propTypes = {};\nPassportList.defaultProps = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MutateRole;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _md = _interopRequireDefault(require(\"md5\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\nvar _node = require(\"../../contexts/node\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction MutateRole(_ref) {\n let {\n teamDid,\n onCancel,\n onSuccess,\n onError,\n mode,\n item\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [error, setError] = (0, _react.useState)('');\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [title, setTitle] = (0, _react.useState)(item.title || '');\n const [description, setDescription] = (0, _react.useState)(item.description || '');\n const onCreate = async () => {\n const _title = title.trim();\n if (!_title) {\n setError(t('team.passport.error.titleEmpty'));\n return;\n }\n if (_title.length > 64) {\n setError(t('team.passport.error.titleTooLong', {\n length: 64\n }));\n return;\n }\n const desc = description.replace(/\\n/g, ' ');\n if (!desc) {\n setError(t('team.passport.error.descriptionEmpty'));\n return;\n }\n const name = mode === 'create' ? (0, _md.default)(_title) : item.name;\n setError(null);\n setLoading(true);\n try {\n if (mode === 'create') {\n await api.createRole({\n input: {\n teamDid,\n name,\n title: _title,\n description: desc\n }\n });\n } else {\n await api.updateRole({\n input: {\n teamDid,\n role: {\n name,\n title: _title,\n description: desc\n }\n }\n });\n }\n onSuccess();\n } catch (err) {\n const errMsg = (0, _util.formatError)(err);\n setError(errMsg);\n onError(err);\n } finally {\n setLoading(false);\n }\n };\n const body = /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n children: [mode === 'update' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n style: {\n paddingTop: 24\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: \"ID\",\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"url\",\n \"data-cy\": \"mutate-role-input-name\",\n fullWidth: true,\n autoFocus: true,\n value: item.name,\n disabled: true\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n style: {\n marginTop: 24\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.title'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"title\",\n \"data-cy\": \"mutate-role-input-title\",\n fullWidth: true,\n autoFocus: true,\n value: title,\n onChange: e => {\n setError(null);\n setTitle(e.target.value);\n },\n disabled: mode === 'update' || loading,\n helperText: t('team.passport.create.titleTip')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n component: \"div\",\n style: {\n marginTop: 24,\n marginBottom: 24\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n label: t('common.description'),\n autoComplete: \"off\",\n variant: \"outlined\",\n name: \"description\",\n \"data-cy\": \"mutate-role-input-description\",\n fullWidth: true,\n autoFocus: true,\n value: description,\n onChange: e => {\n setError(null);\n setDescription(e.target.value);\n },\n disabled: loading,\n multiline: true,\n rows: 3\n })\n })]\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: mode === 'create' ? t('team.passport.create.title') : '',\n fullWidth: true,\n open: true,\n onClose: onCancel,\n showCloseButton: false,\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onCancel,\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n \"data-cy\": \"mutate-role-confirm\",\n onClick: onCreate,\n color: \"primary\",\n disabled: loading,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), mode === 'create' ? t('common.create') : t('common.update')]\n })]\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContentText.default, {\n component: \"div\",\n children: body\n }), !!error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Alert.default, {\n type: \"error\",\n variant: \"icon\",\n style: {\n width: '100%',\n margin: 0\n },\n children: error\n })]\n });\n}\nMutateRole.propTypes = {\n teamDid: _propTypes.default.string.isRequired,\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n onError: _propTypes.default.func,\n mode: _propTypes.default.oneOf(['create', 'update']),\n item: _propTypes.default.object\n};\nMutateRole.defaultProps = {\n onError: () => {},\n mode: 'create',\n item: {}\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = TrustedIssuer;\nvar _react = _interopRequireWildcard(require(\"react\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _ArrowBack = _interopRequireDefault(require(\"@mui/icons-material/ArrowBack\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _DeleteIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/DeleteIcon\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _constant = require(\"@abtnode/constant\");\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nvar LongArrow = function LongArrow(props) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"svg\", _objectSpread(_objectSpread({}, props), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M64.707 8.707a1 1 0 0 0 0-1.414L58.343.929a1 1 0 1 0-1.414 1.414L62.586 8l-5.657 5.657a1 1 0 0 0 1.414 1.414l6.364-6.364zM0 9h64V7H0v2z\",\n fill: \"#666\"\n })\n }));\n};\nLongArrow.defaultProps = {\n width: \"65\",\n height: \"16\",\n viewBox: \"0 0 65 16\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n};\nconst canSave = (issuerDid, mappings) => {\n if (!issuerDid) {\n return false;\n }\n return !mappings.some(x => !x.from.passport || !x.to.role);\n};\nfunction TrustedIssuer(_ref) {\n let {\n onCancel,\n onSuccess,\n data,\n trustedPassports\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n roles,\n teamDid\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [loading, setLoading] = (0, _react.useState)(false);\n const [issuerDid, setIssuerDid] = (0, _react.useState)(data.issuerDid || '');\n const [remark, setRemark] = (0, _react.useState)(data.remark || '');\n const [mappings, setMappings] = (0, _react.useState)((0, _cloneDeep.default)(data.mappings) || []);\n const editIndex = trustedPassports.findIndex(x => x.issuerDid === data.issuerDid);\n const configTrustedPassports = async () => {\n if (loading) {\n return;\n }\n const item = {\n issuerDid,\n remark,\n mappings\n };\n const trustedList = [...trustedPassports];\n if (editIndex === -1) {\n trustedList.unshift(item);\n } else {\n trustedList[editIndex] = item;\n }\n try {\n setLoading(true);\n await api.configTrustedPassports({\n input: {\n teamDid,\n trustedPassports: trustedList\n }\n });\n await (0, _util.sleep)(800);\n setLoading(false);\n _toast.default.success(t('common.saveSuccess'));\n onSuccess();\n } catch (err) {\n setLoading(false);\n _toast.default.error((0, _util.formatError)(err));\n }\n };\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n title: t('team.passport.trustedIssuers'),\n open: true,\n showCloseButton: false,\n PaperProps: {\n style: {\n minHeight: '80vh'\n }\n },\n fullWidth: true,\n prepend: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: onCancel,\n \"data-cy\": \"trusted-issuer-close\",\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ArrowBack.default, {})\n }),\n actions: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: onCancel,\n color: \"inherit\",\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: () => configTrustedPassports(),\n color: \"primary\",\n disabled: !canSave(issuerDid, mappings) || !remark || loading,\n variant: \"contained\",\n autoFocus: true,\n \"data-cy\": \"save-mapping\",\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.save')]\n })]\n }),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"dialog-content\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n \"data-cy\": \"input-issuer-did\",\n placeholder: t('team.passport.issuerDid'),\n value: issuerDid,\n onChange: event => {\n setIssuerDid(event.target.value);\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n style: {\n marginTop: 16\n },\n fullWidth: true,\n \"data-cy\": \"input-issuer-remark\",\n placeholder: t('common.remark'),\n value: remark,\n onChange: event => {\n setRemark(event.target.value);\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: \"30px\",\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"dialog-h1\",\n children: t('team.passport.mappingRule')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n variant: \"outlined\",\n color: \"primary\",\n \"data-cy\": \"add-mapping\",\n onClick: () => {\n setMappings(d => {\n const res = [...d];\n res.unshift({\n from: {\n passport: ''\n },\n to: {\n role: _constant.ROLES.GUEST\n }\n });\n return res;\n });\n },\n children: t('team.add')\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"list\",\n mt: -0.5,\n children: [mappings.map((item, index) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n my: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n flexGrow: 1,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n flexGrow: 1,\n flexBasis: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n size: \"small\",\n \"data-cy\": \"input-\".concat(index, \"-from\"),\n placeholder: \"Issuer\\u2019s Passport Name/ID\",\n value: item.from.passport,\n onChange: event => {\n const {\n value\n } = event.target;\n setMappings(d => {\n const res = [...d];\n res[index].from.passport = value;\n return res;\n });\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n flexShrink: 0,\n mx: 4,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(LongArrow, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n flexGrow: 1,\n flexBasis: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n fullWidth: true,\n size: \"small\",\n select: true,\n value: item.to.role,\n onChange: e => {\n setMappings(d => {\n const res = [...d];\n res[index].to.role = e.target.value;\n return res;\n });\n },\n variant: \"outlined\",\n children: roles.filter(d => d.name !== 'owner').map(r => /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, {\n value: r.name,\n \"data-cy\": \"passport-mapping-select-option-\".concat(r.name),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: r.title || r.name\n })\n }, r.name))\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n flexShrink: 0,\n ml: 4,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => {\n setMappings(d => {\n const res = [...d];\n res.splice(index, 1);\n return res;\n });\n },\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DeleteIcon.default, {})\n })\n })]\n })), !mappings.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n my: 2,\n color: \"text.secondary\",\n fontSize: \"16px\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })\n })]\n })]\n })\n })\n });\n}\nTrustedIssuer.propTypes = {\n onCancel: _propTypes.default.func.isRequired,\n onSuccess: _propTypes.default.func.isRequired,\n trustedPassports: _propTypes.default.array,\n data: _propTypes.default.object\n};\nTrustedIssuer.defaultProps = {\n data: {},\n trustedPassports: []\n};\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .dialog-h1 {\\n font-size: 18px;\\n }\\n\\n .MuiOutlinedInput-root {\\n border-radius: 36px;\\n .MuiSelect-root.MuiOutlinedInput-input {\\n padding-top: 8.5px;\\n padding-bottom: 8.5px;\\n }\\n }\\n\\n .list {\\n .MuiIconButton-root {\\n svg {\\n fill: #bfbfbf;\\n }\\n }\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = TrustedIssuersWithPermission;\nvar _react = require(\"react\");\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\nvar _DeleteIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/DeleteIcon\"));\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\nvar _permission = require(\"../../permission\");\nvar _node = require(\"../../contexts/node\");\nvar _team = require(\"../../contexts/team\");\nvar _util = require(\"../../util\");\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\nvar _listHeader = _interopRequireDefault(require(\"../styles/list-header\"));\nvar _searchInput = _interopRequireDefault(require(\"../search-input\"));\nvar _trustedIssuer = _interopRequireDefault(require(\"./trusted-issuer\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction TrustedIssuers(_ref) {\n let {\n onCancel,\n hasPermission\n } = _ref;\n const {\n api\n } = (0, _node.useNodeContext)();\n const {\n teamDid,\n trustedPassports\n } = (0, _team.useTeamContext)();\n const {\n t\n } = (0, _context.useLocaleContext)();\n const [delConfirm, setDelConfirm] = (0, _react.useState)(null);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [trustedIssuer, setTrustedIssuer] = (0, _react.useState)(false);\n const [search, setSearch] = (0, _react.useState)('');\n const deleteTrustedIssuer = async did => {\n if (loading) {\n return;\n }\n const index = trustedPassports.findIndex(x => x.issuerDid === did);\n if (index === -1) {\n // should not be here\n _toast.default.error('Cannot find passports');\n }\n const trustedList = [...trustedPassports];\n trustedList.splice(index, 1);\n try {\n setLoading(true);\n await api.configTrustedPassports({\n input: {\n teamDid,\n trustedPassports: trustedList\n }\n });\n await (0, _util.sleep)(800);\n setLoading(false);\n _toast.default.success(t('common.saveSuccess'));\n setDelConfirm(false);\n } catch (err) {\n setLoading(false);\n _toast.default.error(err.message);\n }\n };\n const filteredIssuers = trustedPassports.filter(x => !search || x.issuerDid.toLowerCase().includes(search.toLowerCase()));\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Dialog.default, {\n title: t('team.passport.trustedIssuers'),\n open: true,\n onClose: onCancel,\n fullWidth: true,\n PaperProps: {\n style: {\n minHeight: '80vh'\n }\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Div, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"dialog-content\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"dialog-h1\",\n children: t('team.passport.trustedPassportIssuers')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n component: _listHeader.default,\n mt: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"left\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_searchInput.default, {\n placeholder: t('team.passport.searchIssuerDid'),\n value: search,\n onChange: e => setSearch(e.target.value)\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"right\",\n children: hasPermission && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n variant: \"contained\",\n color: \"primary\",\n \"data-cy\": \"add-trusted-issuer\",\n onClick: () => setTrustedIssuer({\n mode: 'add'\n }),\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Add.default, {\n style: {\n fontSize: 16,\n marginRight: 4\n }\n }), t('team.add')]\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"list\",\n children: [filteredIssuers.map(x => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n mt: \"20px\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n flexShrink: 0,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, {\n copyable: false,\n prepend: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n mr: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Avatar.default, {\n did: x.issuerDid,\n size: 20\n })\n }),\n showDidLogo: false,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n style: {\n fontSize: 16\n },\n children: x.issuerDid\n })\n }), !!x.remark && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n pl: 3.5,\n fontSize: 12,\n maxWidth: \"300px\",\n children: x.remark\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n color: \"gray\",\n ml: \"28px\",\n flexGrow: 1,\n children: x.mappings && x.mappings.length ? \"\".concat(x.mappings.length, \" \").concat(t('team.passport.mappingRule')) : t('team.passport.defaultRule')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n flexShrink: 0,\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => setTrustedIssuer({\n mode: 'update',\n data: (0, _cloneDeep.default)(x)\n }),\n \"data-cy\": \"edit-mapping-rule\",\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"delete-mapping-rule\",\n onClick: () => setDelConfirm({\n title: t('common.delete'),\n description: t('common.delConfirmDescription'),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm: () => deleteTrustedIssuer(x.issuerDid),\n onCancel: () => {\n setLoading(false);\n setDelConfirm(null);\n }\n }),\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DeleteIcon.default, {})\n })]\n })]\n })), !trustedPassports.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Empty.default, {\n children: t('common.empty')\n })]\n })]\n })\n }), trustedIssuer && /*#__PURE__*/(0, _jsxRuntime.jsx)(_trustedIssuer.default, {\n mode: trustedIssuer.mode,\n data: trustedIssuer.data,\n trustedPassports: (0, _cloneDeep.default)(trustedPassports),\n onCancel: () => setTrustedIssuer(null),\n onSuccess: () => {\n setTrustedIssuer(null);\n }\n }), delConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirm.default, {\n title: delConfirm.title,\n description: delConfirm.description,\n confirm: delConfirm.confirm,\n cancel: delConfirm.cancel,\n params: delConfirm.params,\n onConfirm: delConfirm.onConfirm,\n onCancel: delConfirm.onCancel\n })]\n });\n}\nTrustedIssuers.propTypes = {\n onCancel: _propTypes.default.func.isRequired,\n hasPermission: _propTypes.default.bool\n};\nTrustedIssuers.defaultProps = {\n hasPermission: false\n};\nconst TrustedIssuersInDaemon = (0, _permission.withPermission)(TrustedIssuers, 'mutate_team');\nconst TrustedIssuersInService = (0, _permission.withPermission)(TrustedIssuers, '', _util.BlockletAdminRoles);\nfunction TrustedIssuersWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(TrustedIssuersInService, _objectSpread({}, props));\n }\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(TrustedIssuersInDaemon, _objectSpread({}, props));\n}\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .list {\\n .MuiIconButton-root {\\n svg {\\n fill: #bfbfbf;\\n }\\n }\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\nvar _Search = _interopRequireDefault(require(\"@mui/icons-material/Search\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nconst _excluded = [\"children\"];\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst SearchInput = (0, _styled.default)(_ref => {\n let {\n children\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, _objectSpread(_objectSpread({}, props), {}, {\n id: \"outlined-basic\",\n variant: \"outlined\",\n InputProps: {\n startAdornment: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Search.default, {})\n },\n size: \"small\",\n children: children\n }));\n})(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .MuiOutlinedInput-root {\\n color: #999;\\n &.MuiInputBase-adornedStart .MuiSvgIcon-root {\\n color: #bfbfbf;\\n }\\n opacity: 1;\\n border-radius: 36px;\\n background: #f8f8f8;\\n padding-left: 16px;\\n input {\\n padding-left: 8px;\\n font-weight: bold;\\n &::placeholder {\\n opacity: 1;\\n color: #bfbfbf;\\n }\\n padding-top: 8.5px;\\n padding-bottom: 8.5px;\\n }\\n }\\n\\n .MuiOutlinedInput-notchedOutline,\\n .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline,\\n .Mui-focused .MuiOutlinedInput-notchedOutline {\\n border-color: #eee;\\n border-width: 1px;\\n }\\n\"])));\nvar _default = SearchInput;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\nvar _templateObject;\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\nconst ListHeader = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n font-size: 14px;\\n .left,\\n .right {\\n }\\n .right {\\n display: flex;\\n align-items: center;\\n }\\n .tabs {\\n .MuiButton-root {\\n border: none;\\n color: #999;\\n &.active {\\n color: #222;\\n }\\n }\\n }\\n\\n @media (max-width: 600px) {\\n display: block;\\n .right {\\n margin-top: 12px;\\n }\\n }\\n\"])));\nvar _default = ListHeader;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.api = void 0;\nObject.defineProperty(exports, \"axios\", {\n enumerable: true,\n get: function get() {\n return _axios.default;\n }\n});\nexports.default = void 0;\nvar _axios = _interopRequireDefault(require(\"axios\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n_axios.default.defaults.timeout = 10 * 1000; // 超时时间设为10s\n\nconst api = _axios.default.create();\nexports.api = api;\nvar _default = api;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.STORAGE_KEY_STORE_SERVER = exports.STORAGE_KEY_STORE_BLOCKLET = void 0;\nconst STORAGE_KEY_STORE_BLOCKLET = 'blocklet-add-component-registry';\nexports.STORAGE_KEY_STORE_BLOCKLET = STORAGE_KEY_STORE_BLOCKLET;\nconst STORAGE_KEY_STORE_SERVER = 'server-add-registry';\nexports.STORAGE_KEY_STORE_SERVER = STORAGE_KEY_STORE_SERVER;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n// https://www.maigoo.com/top/393790.html\n// https://zh.wikipedia.org/zh-my/ISO_639-1代码表\nvar _default = {\n en: 'English',\n zh: '中文',\n fr: 'Français',\n // 法语\n ru: 'Russian',\n // 俄语\n ar: 'العربية',\n // 阿拉伯语\n es: 'Español',\n // 西班牙语\n de: 'Deutsch',\n // 德语\n pt: 'Português do Brasil',\n // 葡萄牙语\n ja: '日本語',\n // 日语\n hi: 'हिन्दी' // 印地语\n};\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.isAlphaMode = void 0;\n/* eslint-disable import/prefer-default-export */\n\n// 当前模式是 内测模式 吗? @see: https://developer.aliyun.com/article/572525\nconst isAlphaMode = localStorage.getItem('enableAlphaMode') === 'true';\nexports.isAlphaMode = isAlphaMode;"],"names":["Provider","NodeContext","NodeProvider","children","imgPrefix","WELLKNOWN_SERVICE_PATH_PREFIX","window","env","serverDid","serverVersion","mode","value","api","client","restApi","ws","getWsClient","create","useSubscription","type","info","did","version","node","TeamContext","teamDid","appId","TeamProvider","blocklet","useBlockletContext","useState","invitations","setInvitations","roles","setRoles","permissions","setPermissions","teamName","getDisplayName","passportColor","environments","find","x","key","BLOCKLET_CONFIGURABLE_KEY","trustedPassports","enablePassportIssuance","getTeamData","getRoles","input","getPermissions","getInvitations","res","filter","RBAC_CONFIG","y","name","passport","ci","map","description","title","Toast","message","getUsers","query","paging","sort","lastLoginAt","useEffect","meta","onUserEvent","data","EVENTS","teamIssuerDid","isNodeTeam","refresh","endpoint","location","origin","getUsersCountPerRole","BlockletComponent","props","getComponentUrl","mountPoint","joinUrl","defaultProps","Layout","t","useLocaleContext","loading","error","refreshBlocklet","actions","nodeInfo","useContext","useLocation","infos","label","bundleName","StyledDashboard","legacy","fullWidth","footerProps","addon","Center","relative","Spinner","Box","display","alignItems","ErrorOutline","color","sx","marginRight","formatError","Button","onClick","style","textDecoration","className","flex","padding","flexDirection","ErrorBoundary","FallbackComponent","ErrorFallback","resetKeys","pathname","styled","Dashboard","BlockletService","navigate","useNavigate","useParams","tab","currentTab","onUpdate","missingRequiredConfigs","isInstalling","status","getAppMissingConfigs","tabs","Badge","variant","invisible","length","push","isAlphaMode","getBlockletServices","renderAuditLogs","scope","renders","overview","services","members","mt","passports","components","Components","configuration","logs","Logs","navigation","BlockletConfigNavigation","monitor","storage","undefined","TabComponent","showHeader","includes","content","DeletingBlockletProvider","Tabs","current","onChange","newTab","scrollButtons","isValidElement","Main","component","size","marginLeft","source","hasPermission","onStart","onComplete","Alert","margin","WrapDashboard","wsClient","connect","isConnected","disconnect","theme","breakpoints","values","md","__importDefault","this","mod","__esModule","Object","defineProperty","exports","splitNavigationBySection","flatternNavigation","checkLink","joinLink","cleanOrphanNavigation","filterNavigation","nestNavigationList","isMatchSection","deepWalk","parseNavigation","unionWith_1","require","isEqual_1","pick_1","isNil_1","omit_1","cloneDeep_1","url_join_1","path_1","is_absolute_url_1","lodash_1","DEFAULT_SECTION","BASE_PATH","DEFAULT_LINK","default","test","checkUrlPath","tree","cb","order","walk","index","parent","level","Array","isArray","forEach","item","i","sections","section","tryParseItem","JSON","parse","_a","normalizeNavigationList","navigationList","tempData","assign","role","link","optionalJoin","prefix","url","resultUrl","join","endsWith","slice","smartJoinLink","_parentLink","_childLink","strict","parentLink","childLink","isObject","isString","keys","reduce","Set","list","depth","transform","v","copyList","finalList","items","transformedItems","tmpItem","parseBlockletNavigationList","genNavigationListByBlocklet","_b","_c","_d","_e","_f","_g","targetList","capabilities","parentName","parentBase","currentName","currentBase","child","childName","childBase","mergeName","Boolean","childNavigation","mergeBase","matchNavigation","childItems","tmpData","id","patchBuiltinNavigation","copyNavigation","splice","from","visible","compactNavigation","resData","_parent","reduceRight","all","cur","findIndex","allNavigationList","navigationItem","baseNavigation","itemNavigationList","patchNavigationItem","sectionNavigationList","getNavigationListBySection","allSectionList","currentValue","sectionList","cloneList","findComponent","nestedNavigation","some","filteredNavigation","every","options","beforeProcess","builtinNavigation","customNavigationList","settings","navigations","compactedNavigation","patchedNavigation","splitNavigation","levelUpNavigation","flatNavigation","rawNavigation","prev","next","builtinList","slugify","module","replace","normalizePathPrefix","a","b","Actions","_templateObject","_react","_propTypes","_interopRequireDefault","_styled","_IconButton","_Menu","_MenuItem","_MoreHoriz","_ListItemIcon","_ListItemText","_jsxRuntime","_excluded","_excluded2","obj","ownKeys","object","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","enumerable","apply","_objectSpread","target","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","arg","hint","prim","Symbol","toPrimitive","call","TypeError","String","Number","_toPrimitive","_toPropertyKey","configurable","writable","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","prototype","propertyIsEnumerable","_ref","anchorEl","setAnchorEl","open","onClose","e","stopPropagation","preventDefault","_unused2","jsxs","Div","jsx","_unused","currentTarget","keepMounted","PaperProps","action","close","icon","text","_onClick","disabled","opts","createElement","dense","minWidth","primary","propTypes","array","strings","raw","div","freeze","ConfigAccess","getComponentWhoCanAccess","_templateObject2","_get","_TextField","_Box","_Edit","_useTheme","_Group","_Chip","_Checkbox","_constant","_constant2","_util","_context","_Dialog","_Button","_Spinner","_node","_team","_util2","_toast","_config","_taggedTemplateLiteral","CONFIG_ROLE","Configs","zh","en","getAccess","whoCanAccess","roleStore","startsWith","WHO_CAN_ACCESS_PREFIX_ROLES","roleNames","getRolesFromAuthConfig","filterRoles","access","app","configs","COMPONENT_ACCESS_WHO","WHO_CAN_ACCESS","ALL","service","findServiceFromMeta","NODE_SERVICES","AUTH","config","ancestors","showDialog","setShowDialog","locale","useNodeContext","roleList","useTeamContext","setLoading","root","defaultValue","defaultRoles","setWhoCanAccess","dids","iconStyle","fontSize","verticalAlign","palette","secondary","componentName","concat","onOpen","onConfirm","updateWhoCanAccess","success","StyledDialog","minHeight","Fragment","autoFocus","mb","select","SelectProps","renderValue","selected","d","StyledMenuItem","multiple","flexWrap","gap","_ref2","checked","isRequired","any","BlockletAccess","_Tooltip","_ExpandMore","_ChevronRight","_Collapse","_Launch","_EditIcon","_Empty","_blocklet","_line","_bundleAvatar","_configAccess","nodeInterop","cache","_getRequireWildcardCache","has","get","newObj","hasPropertyDescriptor","hasOwnProperty","desc","set","_interopRequireWildcard","WeakMap","cacheBabelInterop","cacheNodeInterop","ComponentItem","_blocklet$children","accessConfig","expand","setExpand","domain","recommendedDomain","href","getBlockletUrl","params","getBlockletUrlParams","fill","canExpand","expandIcon","str","group","py","justifyContent","pl","Math","max","width","xs","cursor","ml","rel","in","unshift","maxWidth","number","spacing","BlockletActions","_reactRouterDom","_useLocalStorage","_Divider","_ButtonGroup","_MoreVert","_Typography","_Radio","_RadioGroup","_FormControlLabel","_Alert","_util3","_confirm","_icons","useBlockletUrlEvaluation","rest","currentAction","setCurrentAction","confirmSetting","setConfirmSetting","LocaleContext","skipSetup","recommendedUrlLoading","recommendedUrl","inProgress","isInProgress","inService","createHandler","fn","requireUserConfirm","isRemoved","keepData","removeType","_blocklet$settings","initialized","serverUrl","getServerUrl","URL","searchParams","sleep","errMsg","Error","onCancel","removeSetting","fromBlockletSource","BlockletSource","custom","gutterBottom","setParams","control","confirmSettings","stop","confirm","cancel","restart","remove","cancelDownload","onAction","_unused3","handler","console","removeAction","isDeletableBlocklet","Remove","deleteBlocklet","cancelDownloadAction","cancelDownloadBlocklet","Start","startBlocklet","hasRunnableComponent","isDownloading","BLOCKLET_MODES","DEVELOPMENT","Stop","stopBlocklet","Restart","restartBlocklet","Reload","reloadBlocklet","separator","onlyInMenu","Config","Group","Log","severity","Link","to","func","oneOf","bool","_window","_window$location","sm","AddCert","_useAsyncRetry","_CircularProgress","Add","_certState$value2","onAdd","issuing","setIssuing","refreshDomainStatus","certState","findCertificateByDomain","cert","handleIssueComplete","_certState$value","BlockletEvents","certError","certIssued","retry","issueLetsEncryptCert","setting","domainStatus","others","shouldCheckDomainStatus","isHttps","string","shape","_objectDestructuringEmpty","Agreement","_serverEula","_wizardDesc","_agreementApp","onClickNext","handleDescEle","clickNext","search","Container","blockletMeta","onContinue","texts","listenName","buttonNext","down","grey","up","BlockletAppAvatar","_Avatar","_Avatar2","_useAppLogo","_find","logoUrl","imgEle","src","alt","logo","BLOCKLET_APP_LOGO_SQUARE","responsive","backgroundColor","height","borderRadius","oneOfType","_ref3","_auditLog","AuditLogProvider","AuditLogs","_reactMarkdownPreview","_Pagination","_Select","_InputLabel","_FormControl","_relativeTime","getUserLink","log","actor","AuditLog","_log$env$os","_log$env$browser","fullName","linkTarget","ip","os","browser","createdAt","useAuditLogContext","categories","setCategory","fetch","textAlign","marginTop","category","pageCount","page","count","showFirstButton","showLastButton","_ref4","main","_urlJoin","_toUpper","_Tag","_Link","_blocklet$meta","sourceInfo","deployedFrom","bundleDid","underline","BlockletAvatar","_useBundleLogo","setFallBackUrl","ev","onError","AddComponent","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_uniqBy","_flatten","_isEmpty","_isNil","_pageHeader","_DialogContentText","_Check","_useMediaQuery","_launcherLayout","_step","_AnimationWaiter","_launchResultMessage","_schemaForm","_required","_purchase","_agreement","_installFromUrl","_selectStore","_storeBlockletList","hasRequiredEnvironments","required","hasMissRequiredConfigs","configsList","sharedValueMap","getParamsName","StepContent","forwardRef","ref","isMobile","onStepChange","useStepContext","steps","activeStep","setActiveStepByKey","setActiveStepByIndex","step","useImperativeHandle","DialogContentWrapper","pcWidth","pcHeight","registryUrl","getBlockletLogoUrl","baseUrl","logoPath","stepTip","RightContent","body","_blocklet$meta2","_blocklet$meta3","_blocklet$meta4","_purchaseRef$current","_purchaseRef$current$","_purchaseRef$current2","_purchaseRef$current3","editingItem","setEditingItem","setError","setConfigs","purchaseData","setPurchaseData","isWaitingPurchase","setIsWaitingPurchase","initParams","componentDid","pathPrefix","configsValue","hasEnvironmentsStep","requirePurchase","installResultProps","purchaseResultProps","showFromUrlDialog","setActiveStep","useRef","stepRef","purchaseRef","isServerlessMode","NODE_MODES","SERVERLESS","updateParams","validateInput","getComponentName","_component$current","setInstallErrorResult","errorMessage","subTitle","footer","onInstall","installInput","createBlockletEventHandler","_b$meta","statusChange","BlockletStatus","upgrading","downloadFailed","installFailed","payload","_component$current2","inStore","inputUrl","downloadTokenList","_component$current3","getBlockletMetaUrl","rootDid","installComponent","getStoreList","fromBlocklet","storeList","isNewStoreUrl","isNew","decoded","addBlockletStore","validatePathPrefix","blocklets","onNext","_onCancel","onGeneratePurchaseData","installOpts","setConfigValue","_list$","_list$$meta","_meta$environments","chooseParams","componentDidValue","isInit","Date","deletedAt","newConfigs","validation","formatItem","doc","componentSelfConfigs","componentAllConfigs","sharedConfigObj","getSharedConfigObj","hidden","_component$current$me","_component$current$me2","urlFriendly","componentRequirePurchase","isFreeBlocklet","TypographyWrapper","onSuccess","_ref5","handleText","extra","_ref6","currentRegistry","storeUrl","handleButtonClick","handleBlockletRender","_ref7","blockletItem","defaultRender","isChosen","StoreBlockletItemWrapper","extraFilter","allBlocklets","isComponentBlocklet","dangerouslySetInnerHTML","__html","getCurrentStep","PageHeaderWrapper","ComponentPurchaseSelect","paddingTop","handlePaySuccess","autoComplete","helperText","marginBottom","formatToDatetime","inputProps","schema","changeValue","_ref8","currentItem","allValues","MessageDiv","increaseSpeed","messageLoop","setTimeout","scrollDom","document","getElementsByClassName","scrollTop","scrollHeight","onMenuItemClick","showCloseButton","DialogWrapper","innerHeight","event","reason","_steps$","_steps$$onCancel","disableEscapeKeyDown","overflow","textOverflow","whiteSpace","StepProvider","newStep","isMobileDialogContent","_ref9","common","white","ComponentConfiguration","_Tabs","_environment","_setting","isRoot","isDynamic","dynamic","setTab","tabConfigs","tabConfig","DeleteComponent","_Delete","tip","deleteSetting","setDeleteSetting","deleteComponent","param","componentDisabled","btn","StyledButton","btnWithToolTip","ComponentEnvironment","_core","_clickToCopy","_tableIcons","_table","_permission","onConfigChanged","isConfigEditable","onAddConfig","trim","configBlocklet","result","code","onEditConfig","newData","oldData","BLOCKLET_CLUSTER_SIZE","errMessage","isValidClusterSize","onDeleteConfig","componentConfigs","getComponentMissingConfigs","hasBWAConfig","onRowAdd","onRowUpdate","onRowDelete","isDeletable","permission","BlockletAdminRoles","isBlockletDev","columns","field","initialEditValue","render","fontWeight","editComponent","rowData","_onChange","EditDiv","placeholder","secure","unstyled","wordBreak","_onChange2","icons","emptyRowsWhenPaging","actionsColumnIndex","tableLayout","maxBodyHeight","localization","header","emptyDataSourceMessage","editable","_last","_useAsync","_RelativeTime","Expiration","_state$value","_state$value$data","_state$value$data$val","controller","state","getAsset","chainHost","nftId","expirationDate","launcherUrl","encodeURIComponent","_default","_semver","_DialogContent","_DialogTitle","_DialogActions","_Update","_Add","_Badge","_SettingsOutlined","_InfoOutlined","_Grid","_ArrowForward","_InfoRow","_deletingBlocklets","_didAddress","_tag","_blockletSource","_status","_version","_mode","_configuration","_delete","_add","_addRule","_ruleList","getEngineRows","engine","displayName","onRemove","componentInfo","setComponentInfo","deletingComponents","useDeletingBlockletContext","deletingBlocklets","rows","showStatus","bundleSource","store","getSourceInfo","componentRows","checkUpgrade","formatPerson","author","nameWidth","deleteDisabledTip","flexGrow","px","StyledBadge","badgeContent","paddingY","row","valueComponent","nameFormatter","top","right","addDeletingDid","removeDeletingDid","matchDeletingDid","updateConfirm","setUpdateConfirm","showUpdateDot","setShowUpdateDot","getLatestBlockletVersion","then","gt","catch","err","checkForUpdates","newVersion","checkComponentsForUpdates","preUpdateInfo","updateId","updateList","forEachChildSync","updateItem","groupId","checks","hasChecks","onConfirmUpdate","upgradeBlocklet","bind","upgradeComponents","selectedComponents","removeComponent","mr","site","rules","newValue","entries","o","oldValue","onUpdateChecksChange","defaultChecked","container","Line","borderBottom","borderColor","_ahooks","_lodash","_react2","_material","_simpleSelect","_locales","defaultLocale","LocaleTabs","locales","onRemoveLocale","inputRef","addLocaleButtonEl","setAddLocaleButtonEl","useReactive","currentLocale","localeList","inputLocale","localeError","openChooseLocale","useMemo","localeOptions","omit","checkLocale","checkValidLocale","checkResult","handleAddLocale","_state$inputLocale","useKeyPress","Tab","position","IconButton","without","handleRemoveLocale","Icon","disableFocusRipple","Popover","anchorOrigin","vertical","horizontal","p","Typography","NavigationActions","add","edit","toggle","del","isDisabled","isUninstalled","subtitle","handleClick","handleClickAdd","useCallback","handleClickEdit","handleClickToggle","handleClickDelete","_omit","_pick","_values","_without","_isString","_isObject","_cloneDeep","_reactHookForm","_notistack","_parseNavigationFromBlocklet","_index","_isAbsoluteUrl","_localeTabs","initialFormState","IconSuffix","loaded","setLoaded","useAsyncEffect","loadIcon","NavigationDialog","rawNavigations","saveFn","useBoolean","show","setFalse","setTrue","enqueueSnackbar","useSnackbar","linkDisabled","formState","useForm","defaultValues","handleSubmit","watch","setValue","clearErrors","errors","watchComponent","watchTitle","watchLink","watchIcon","watchParent","selectedOption","linkPrefix","stringLink","withoutTrailingSlash","selectedLink","autocompleteOptions","typeName","reset","patchFormValues","localeItem","pickData","validTitle","len","validLink","handleChangeLocale","checkFormState","validRes","handleFormSubmit","checkRes","noValidate","Controller","validate","_errors$title","_errors$title2","TextField","isEdit","_errors$icon","_errors$icon2","InputProps","endAdornment","InputAdornment","disableRipple","_errors$component","_errors$component2","placeholer","_errors$link3","_errors$link4","FormControl","Autocomplete","disablePortal","freeSolo","blurOnSelect","autoSelect","isOptionEqualToValue","option","renderInput","_errors$link","_errors$link2","startAdornment","renderOption","onInputChange","_errors$role","_errors$role2","_Header","_Footer","_Dashboard","_linkBlocker","NavigationPreview","blockletInfo","appDid","appLogo","appName","enableConnect","enableLocale","invalidPathFallback","headerProps","Grid","Skeleton","animation","pt","SimpleSelect","defaultOption","InputLabel","Select","OutlinedInput","Chip","MenuItem","ListItemText","FormHelperText","SelectStore","_ArrowDropDown","_constants","_item","setOpen","storeSelectRef","storageKey","STORAGE_KEY_STORE_BLOCKLET","STORAGE_KEY_STORE_SERVER","setStoreUrl","SelectStoreTitle","endIcon","newRegistry","MenuProps","onDelete","_storeList$","black","ComponentSettingInService","ComponentSettingInDaemon","_formTextInput","ComponentSetting","onSubmitTitle","updateComponentTitle","onSubmitMountPoint","updateComponentMountPoint","initialValue","onSubmit","withPermission","_reactSortableTree","_reactSortableTreeThemeMaterialUi","_isEqual","_reactDndHtml5Backend","_reactDnd","checkCanDrop","prevPath","nextPath","prevLen","nextLen","TreeTitle","treeNode","titleShow","subtitleShow","renderTitle","SortableTree","treeData","setTreeData","renderActions","expandedData","expanded","dndProps","context","DndProvider","backend","HTML5Backend","SortableTreeWithoutDndContext","generateNodeProps","rowInfo","buttons","maxDepth","isVirtualized","canDrop","BlockletList","_ErrorBoundary","_reactErrorBoundary","_list","_Blocklet","getStoreDetail","displayAttributes","attribute","_formatted","BlockletItem","formatRegistryLogoPath","btnTxt","contains","StyledBlocklet","cover","button","ActionButton","handleSearchSelect","filters","setFilters","blockletRender","blockletRenderProps","baseSearch","onFilterChange","changeData","onSearchSelect","_lab","_Session","_sortableTree","_navigationDialog","_navigationActions","_useNavigation","_navigationPreview","mockSession","login","logout","switch","switchDid","switchProfile","switchPassport","navigationTypeMap","bottom","social","dashboard","sessionManager","refNavigationDialog","pageState","saveLoading","resetLoading","showResetConfirm","mockRole","navigationState","getNavigation","saveNavigationList","resetNavigation","updateActiveSection","updateNavigationTree","updateNavigationItem","delNavigationItem","addNavigationItem","handleAddNavigation","handleEditNavigation","handleSaveNavigation","handleResetNavigation","sessionCtxValue","session","user","ButtonGroup","activeSection","Toolbar","paddingLeft","paddingRight","LoadingButton","startIcon","loadingPosition","Paper","elevation","_len","args","_key","_len2","_key2","_len3","_key3","m","SessionContext","Confirm","BlockletEnvironmentInService","BlockletEnvironmentInDaemon","_Switch","_LockIcon","_addDomainAlias","_domainStatus","_domainActions","_walletType","_appSk","_addCert","BlockletEnvironment","cpuCores","setCpuCores","getWhoCanAccess","publicToStore","domains","sortDomains","domainAliases","clusterMode","NODE_RUNTIME_INFO","customType","customDelete","deletable","customUrl","customLogoSquare","customLogoRect","customLogoFavicon","customLogoDeprecated","configurableEnvs","BLOCKLET_APP_NAME","BLOCKLET_APP_DESCRIPTION","BLOCKLET_APP_URL","BLOCKLET_APP_LOGO_RECT","BLOCKLET_APP_LOGO_FAVICON","BLOCKLET_APP_LOGO","exist","schemaList","onPublicToStoreChange","configPublicToStore","onSubmitConfig","onDeletableChange","BLOCKLET_DELETABLE","onWalletTypeChange","BLOCKLET_WALLET_TYPE","onUpdateCors","corsAllowedOrigins","split","updateRoutingSite","onAppSkChange","BLOCKLET_APP_SK","my","isProtected","placement","pointerEvents","paddingBottom","border","BlockletDiskInfo","_filesize","diskInfo","renderDiskInfo","dir","acc","BLOCKLET_APP_DIR","BLOCKLET_DATA_DIR","BLOCKLET_LOG_DIR","BLOCKLET_CACHE_DIR","_PlayArrow","_Stop","_Replay","_Autorenew","_Settings","_Receipt","InstallFromUrl","_Stepper","_Step","_StepLabel","defaultUrl","initMeta","dist","setUrl","setMeta","existingMeta","setExistingMeta","isComponentMode","alwayShowSteps","onGetMeta","decodeURIComponent","getBlockletMetaFromUrl","newer","getBlocklet","attachRuntimeInfo","existedBlocklet","gte","_onConfirm","installBlocklet","tarball","onKeyPress","s","alternativeLabel","BlockletLog","_logTerminal","_download","LogTerminalGroup","logId","initialData","postpend","BlockletMode","BlockletMonitor","_prettyMsI18n","_Datatable","_runtimeInfo","_diskInfo","runtimeHistory","monitList","arr","forEachBlockletSync","runtimeInfo","groupName","interval","setInterval","clearInterval","monitorColumns","customBodyRenderLite","rawIndex","uptime","formatLocale","memoryUsage","cpuUsage","toFixed","cpuHistory","cpu","memoryHistory","memory","download","print","viewColumns","pagination","rowsPerPage","BlockletOverview","_types","_expiration","DomainLink","accessibility","LinkDiv","accessible","DomainType","span","_blocklet$site","loadingRuntimeInfo","infoRows","installedAt","startedAt","stoppedAt","owner","engineRows","AppSk","confirmAppSk","setConfirmAppSk","UL","BlockletPreferences","_reactIframe","_TuneRounded","_Key","addComponentTabs","setCurrent","expandPref","setExpandPref","routing","adminPath","URLSearchParams","toString","frameBorder","styles","orientation","borderRight","WalletType","confirmCustomType","setConfirmCustomType","WalletTypes","CustomSelect","useStyles","commonProps","_styles","_List","_ListItem","_ShoppingCart","_VerifiedUser","_Colors","makeStyles","dialogAuth","iconRoot","onSelect","classes","tabPanel","ComponentPurchase","_Connect","_pWaitFor","_api","_common","webWalletUrl","getWebWalletUrl","nw","setNw","handleConnectSuccess","decrypt","handleConnectSessionStatus","failure","extractStatusUrlFromNextWorkflow","statusUrl","nextWorkflowUrl","modePropsMap","verify","checkFn","axios","baseURL","extraParams","blockletDid","messages","scan","purchase","factory","nftFactory","popup","saveConnect","cancelWhenScanned","checkTimeout","disableClose","showDownload","setAction","setStep","act","_componentPurchase","AddDomainAlias","_CallMerge","addDomainAlias","domainAlias","onEnter","validateDomain","__disableConfirm","AddRule","_configRoutingRule","siteId","validateRule","rule","ROUTING_RULE_TYPES","REDIRECT","redirectCode","addRoutingRule","disable","validateResult","BLOCKLET","interfaceName","ConfigRoutingRule","serviceTypes","redirectCodesMap","NONE","DeleteDomainAlias","hostname","deleteDomainAlias","edge","DeleteRule","_deleteConfirm","ruleId","deleteRoutingRule","keyName","confirmPlaceholder","UpdateRule","updateRoutingRule","DomainActions","_actions","_deleteDomainAlias","DomainStatus","_Https","_dot","_certificate","domainIcon","httpsIcon","matchedCert","checkIsWildcardDomain","dns","resolved","certificate","RuleActions","_deleteRule","_updateRule","getAccessUrl","RuleListInService","RuleListInDaemon","_isUrl","_ruleActions","RedirectRule","toUrl","scheme","tmpToUrl","RuleList","avatarName","validateSite","isSpecialDomain","getInitialBlockletDid","_isPathPrefixEqual","validateRuleByServiceType","localeContext","DEFAULT_IP_DOMAIN_SUFFIX","suffix","curBlocklet","interfaces","BLOCKLET_DYNAMIC_PATH_PREFIX","fromDid","specialDomains","DOMAIN_FOR_IP_SITE_REGEXP","DOMAIN_FOR_DEFAULT_SITE","DOMAIN_FOR_IP_SITE","BlockletRuntimeInfo","_cpu","_memory","appRuntimeInfo","lg","currentLoad","history","hideDescription","used","arrayOf","date","colors","colorMap","added","waiting","downloading","downloaded","installing","installed","starting","running","stopping","stopped","restarting","corrupted","deleting","statusTxt","Storage","_axios","_localStorage$getItem","_blocklet$environment","_blocklet$environment2","_blocklet$environment3","localStorage","getItem","setErrorMessage","BLOCKLET_APP_SPACE_ENDPOINT","setEndpoint","BLOCKLET_APP_SPACES_URL","didSpacesUrl","setDidSpacesUrl","isLoading","setIsLoading","appDescription","saveStorageEndpoint","storageEndpoint","onAuthorizeConnectSuccess","response","setAuthorizeConnect","preValue","authorizeConnect","handleOnClickAuthorize","isEmpty","scopes","onBackup","backupToSpaces","StorageUrlTextField","BlockletVersionInService","BlockletVersionInDaemon","_ArrowUpward","_Toast","Version","newVersionBlocklet","setNewVersionBlocklet","autoHideDuration","Certificate","_Popover","_Card","_CardContent","handlePopoverClose","onMouseEnter","onMouseLeave","transformOrigin","disableRestoreFocus","maxHeight","formatToDate","validFrom","validTo","ClickToCopy","_ClickToCopy","copiedTip","ConfirmDialog","_mobileWidth","showCancel","initialParams","changeLocale","onCallback","isBreakpointsDownSm","fullScreen","AuditLogContext","AuditLogConsumer","auditLogs","setAuditLogs","total","pageSize","setPaging","fetchLogs","silent","getAuditLogs","createContext","Consumer","DeletingBlockletContext","_xorWith","setDeletingBlocklets","deletingBlockletsDid","reDeleteings","existDids","inDeleting","NodeConsumer","inDaemon","useSessionContext","TeamConsumer","CancelConfirm","_title","_description","inputVal","_Address","WrappedDidAddress","external","avatarProps","Content","prepend","defaultSize","FormTextInput","_Close","_Done","_formWrapper","editing","setEditing","setDefaultValue","onKeyDown","useTheme","_window$env","apiPrefix","APP_PREFIX","rawList","injectNavigationData","treeNavigation","rawData","navigationWithLink","getNavigationFullLink","fullList","findItem","Uninstalled","navigation2tree","baseLink","BASE_LINK","componentItem","base","__base","_omitBy","formartedData","stringify","configNavigations","itemData","changed","updatedNavigation","findChanged","changeItem","isSameNavigation","_saveNavigationChange","relatedNavigationId","_nanoid","nanoid","treeItem","unchangedNavigation","Feedback","infoStr","feedbackUrl","mx","_useInterval","currentTime","setCurrentTime","formatTime","DownloadLog","_dayjs","_Download","_formatName","DAYS","setIsDownloading","days","setDays","onDownload","responseType","createObjectURL","setAttribute","format","appendChild","click","removeChild","revokeObjectURL","LogTerminal","_Terminal","_clock","types","logTypeLabels","stdout","stderr","currentType","setCurrentType","logFiles","setLogFiles","terminalRefs","terminal","write","LogTerminalGroupRoot","logFile","visibility","LogTerminalRoot","boxSizing","background","foreground","MonitCard","graph","StyledCard","CpuMonitor","_Sparkline","_card","cpus","svgRef","tooltipRef","tooltipState","left","textContent","cpuDom","setCpuDom","useSize","sparklineOptions","onmousemove","dataPoint","onmouseout","querySelector","floor","strokeWidth","MemoryMonitor","instanceCount","dom","setDom","showPercent","available","memoryPercent","memoryList","metric","PassportTag","Tag","Permission","Component","permissionName","_session","can","userPermissions","RelativeTime","prettyOption","compact","valTime","getTime","now","time","enterTouchDelay","AddStore","addMenuItemRoot","lineHeight","setDisable","font","overflowY","DeleteStore","_DeleteOutline","deleteBlockletStore","StoreItem","_ListItemSecondaryAction","buttonText","textTransform","menuName","protected","_Clear","_SaveAlt","_Filter","_FirstPage","_LastPage","_ChevronLeft","_Search","_Remove","_ViewColumn","Check","Delete","Edit","Clear","DetailPanel","Filter","FirstPage","LastPage","NextPage","PreviousPage","Search","ResetSearch","SortArrow","Export","ThirdStateCheck","ViewColumn","Wrapped","MemberActions","_ForbidLoginIcon","_AllowLoginIcon","_issuePassport","_toggleUserApproval","onIssuePassport","setEnablePassportIssuance","approved","ownerDid","MemberList","_classnames","_Loop","_PersonIcon","_ExternalIssuerIcon","_inviteMember","_transferNode","_member","_invitations","ROLE_ALL","ROLE_NONE","getCount","counts","SimpleInfo","avatar","isFromExternal","showInviteMember","setShowInviteMember","showTransferMember","setShowTransferMember","showInviting","setShowInviting","memberDialog","setMemberDialog","users","setUsers","rowCount","setRowCount","userCounts","setUserCounts","durableKey","tableDurableData","getDurableData","searchText","hideBlocked","setSearch","sideList","num","z","_z$issuer","issuer","parseAvatar","getUserCounts","handleUserChange","USER_UPDATED","USER_ADDED","isInvitationEnabled","customBodyRender","copyable","align","verticalKeyAlign","initTab","customButtons","flexShrink","tableOptions","expandableRowsOnClick","onRowClick","dataIndex","searchDebounceTime","verticalKeyWidth","durable","durableKeys","userDid","Invitations","delConfirm","setDelConfirm","deleteInvitation","inviteId","getLink","column","getInviteLink","widtn","_d$inviter","rowIndex","inviter","InviteMember","inviteInfo","setInviteInfo","setRole","remark","setRemark","onCreate","trimRemark","createMemberInvitation","r","Bold","expireDate","IssuePassport","showOwnerPassport","createPassportIssuance","Member","_passportIssuances","_passports","issuances","setIssuances","setUser","getData","doBatchQuery","getUser","getPassportIssuances","email","lastLoginIp","onRefresh","BlockButton","PassportIssuances","_passportTag","deleteIssuance","deletePassportIssuance","sessionId","getIssuePassportLink","Issuance","Passports","_upperFirst","_ErrorOutline","_RevokeIcon","_createPassportSvg","_searchInput","_listHeader","ConfirmDescription","refreshTeam","toggleConfirm","setToggleConfirm","showIssueDialog","setShowIssueDialog","revoked","PASSPORT_STATUS","REVOKED","togglePassportStatus","method","passportId","revokeInfo","revokable","filteredPassports","issuerDid","ownerName","ownerAvatarUrl","preferredColor","ToggleUserApproval","isSelf","sessionUser","setShow","updateUserApproval","approveConfirm","nodeOwner","isNodeOwner","TransferMember","sessionAPI","openTransferNFTAuth","setOpenTransferNFTAuth","needTransferNFT","delegationState","getDelegationState","delegated","createTransferInvitation","tmpInviteInfo","handleCancelTransferNFT","targetDID","USER_AVATAR_URL_PREFIX","USER_AVATAR_PATH_PREFIX","PassportColorInService","PassportColorInDaemon","_reactColor","_passportColor","PassportColor","curColor","defaultColor","getPassportColorFromDid","setColor","BLOCKLET_PASSPORT_COLOR","ChromePicker","c","hex","isDataUrl","PassportDetailInService","PassportDetailInDaemon","_DeleteIcon","_mutateRole","PassportDetail","roleName","binds","setBinds","updateForm","setUpdateForm","isProtectedRole","deletePassport","deleteRole","team","getPermissionsByRole","permissionList","bindList","onBind","grantNames","updatePermissionsForRole","readPermissionsOnly","bindPermission","toolbar","PassportList","_SplitButton","_detail","_color","_trustedIssuers","showCreate","setShowCreate","showColor","setShowColor","showTrustedIssuers","setShowTrustedIssuers","toggleShowIssue","configPassportIssuance","enable","filteredRoles","menuButtonProps","menu","Item","MutateRole","_md","setTitle","setDescription","createRole","updateRole","multiline","TrustedIssuer","_ArrowBack","LongArrow","viewBox","xmlns","canSave","mappings","setIssuerDid","setMappings","editIndex","configTrustedPassports","trustedList","ROLES","GUEST","flexBasis","TrustedIssuersInService","TrustedIssuersInDaemon","_trustedIssuer","TrustedIssuers","trustedIssuer","setTrustedIssuer","deleteTrustedIssuer","filteredIssuers","toLowerCase","showDidLogo","defaults","timeout","fr","ru","ar","es","de","ja","hi"],"sourceRoot":""}
|