@abtnode/blocklet-services 1.8.25 → 1.8.27

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.
Files changed (56) hide show
  1. package/api/index.js +5 -2
  2. package/api/middlewares/check-running.js +1 -1
  3. package/api/routes/blocklet.js +1 -1
  4. package/api/routes/env.js +1 -1
  5. package/api/services/auth/index.js +27 -7
  6. package/api/services/dashboard/index.js +153 -0
  7. package/api/services/static.js +8 -6
  8. package/api/util/index.js +6 -1
  9. package/build/asset-manifest.json +27 -17
  10. package/build/index.html +1 -1
  11. package/build/static/css/738.18a3eb84.chunk.css +2 -0
  12. package/build/static/css/738.18a3eb84.chunk.css.map +1 -0
  13. package/build/static/js/123.fd74ee54.chunk.js +2 -0
  14. package/build/static/js/123.fd74ee54.chunk.js.map +1 -0
  15. package/build/static/js/203.9033bd1d.chunk.js +2 -0
  16. package/build/static/js/203.9033bd1d.chunk.js.map +1 -0
  17. package/build/static/js/301.aff37b48.chunk.js +2 -0
  18. package/build/static/js/301.aff37b48.chunk.js.map +1 -0
  19. package/build/static/js/628.78b77407.chunk.js +2 -0
  20. package/build/static/js/628.78b77407.chunk.js.map +1 -0
  21. package/build/static/js/662.a7f2c44c.chunk.js +2 -0
  22. package/build/static/js/662.a7f2c44c.chunk.js.map +1 -0
  23. package/build/static/js/737.9a5b1e7b.chunk.js +2 -0
  24. package/build/static/js/737.9a5b1e7b.chunk.js.map +1 -0
  25. package/build/static/js/738.35e5be1f.chunk.js +3 -0
  26. package/build/static/js/738.35e5be1f.chunk.js.LICENSE.txt +68 -0
  27. package/build/static/js/738.35e5be1f.chunk.js.map +1 -0
  28. package/build/static/js/868.04c225a9.chunk.js +2 -0
  29. package/build/static/js/868.04c225a9.chunk.js.map +1 -0
  30. package/build/static/js/924.7980ec5c.chunk.js +2 -0
  31. package/build/static/js/924.7980ec5c.chunk.js.map +1 -0
  32. package/build/static/js/931.4448ec5d.chunk.js +3 -0
  33. package/build/static/js/931.4448ec5d.chunk.js.LICENSE.txt +10 -0
  34. package/build/static/js/931.4448ec5d.chunk.js.map +1 -0
  35. package/build/static/js/972.4befe3c8.chunk.js +2 -0
  36. package/build/static/js/972.4befe3c8.chunk.js.map +1 -0
  37. package/build/static/js/main.d9131f59.js +3 -0
  38. package/build/static/js/{main.199e60e9.js.LICENSE.txt → main.d9131f59.js.LICENSE.txt} +1 -1
  39. package/build/static/js/main.d9131f59.js.map +1 -0
  40. package/package.json +30 -26
  41. package/build/static/js/199.71b6a290.chunk.js +0 -2
  42. package/build/static/js/199.71b6a290.chunk.js.map +0 -1
  43. package/build/static/js/244.6bfddb66.chunk.js +0 -2
  44. package/build/static/js/244.6bfddb66.chunk.js.map +0 -1
  45. package/build/static/js/400.c6e11e32.chunk.js +0 -2
  46. package/build/static/js/400.c6e11e32.chunk.js.map +0 -1
  47. package/build/static/js/532.df6be59f.chunk.js +0 -2
  48. package/build/static/js/532.df6be59f.chunk.js.map +0 -1
  49. package/build/static/js/575.137f8200.chunk.js +0 -2
  50. package/build/static/js/575.137f8200.chunk.js.map +0 -1
  51. package/build/static/js/597.6e6ef8c5.chunk.js +0 -2
  52. package/build/static/js/597.6e6ef8c5.chunk.js.map +0 -1
  53. package/build/static/js/737.93eeec19.chunk.js +0 -2
  54. package/build/static/js/737.93eeec19.chunk.js.map +0 -1
  55. package/build/static/js/main.199e60e9.js +0 -3
  56. package/build/static/js/main.199e60e9.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/662.a7f2c44c.chunk.js","mappings":"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","sources":["libs/ws.js","contexts/node.js","contexts/team.js","components/blocklet/component.js","components/layout/admin-layout.js","pages/dashboard.js","../../../blocklet/meta/lib/did.js","../../ux/lib/actions.js","../../ux/lib/blocklet/actions.js","../../ux/lib/blocklet/audit-logs.js","../../ux/lib/blocklet/avatar.js","../../ux/lib/blocklet/blocklet-source.js","../../ux/lib/blocklet/component/configuration.js","../../ux/lib/blocklet/component/delete.js","../../ux/lib/blocklet/component/environment.js","../../ux/lib/blocklet/component/index.js","../../ux/lib/blocklet/component/setting.js","../../ux/lib/blocklet/configuration.js","../../ux/lib/blocklet/disk-info.js","../../ux/lib/blocklet/icons.js","../../ux/lib/blocklet/log.js","../../ux/lib/blocklet/mode.js","../../ux/lib/blocklet/overview.js","../../ux/lib/blocklet/runtime-info.js","../../ux/lib/blocklet/status.js","../../ux/lib/blocklet/util.js","../../ux/lib/blocklet/version.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/did-address.js","../../ux/lib/dot.js","../../ux/lib/form/form-text-input.js","../../ux/lib/hooks/mobile-width.js","../../ux/lib/logs/clock.js","../../ux/lib/logs/log-terminal.js","../../ux/lib/passport-tag.js","../../ux/lib/permission.js","../../ux/lib/relative-time.js","../../ux/lib/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/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"],"sourcesContent":["import { useEffect } from 'react';\nimport Cookie from 'js-cookie';\nimport { WsClient } from '@arcblock/ws';\nimport { useSessionContext } from '../contexts/session';\n\nlet client;\n\nexport function create() {\n const pathPrefix = (window.env && window.env.apiPrefix ? window.env.apiPrefix : '/').replace(/\\/$/, '');\n const url = `//${window.location.host}${pathPrefix}/dashboard`;\n return new WsClient(url, {\n heartbeatIntervalMs: 100 * 1000,\n params: () => ({\n token: Cookie.get('login_token'),\n }),\n });\n}\n\nexport default function getWsClient() {\n if (!client) {\n client = create();\n }\n\n return client;\n}\n\nexport const useSubscription = (event, cb = () => {}, deps = []) => {\n // eslint-disable-next-line no-param-reassign\n event = `${window.blocklet.did}/${event}`;\n\n const { session } = useSessionContext();\n\n if (!client && session.user) {\n client = getWsClient();\n client.connect();\n }\n useEffect(() => {\n if (client) {\n client.on(event, cb);\n }\n\n return () => {\n if (client) {\n client.off(event, cb);\n }\n };\n }, deps); // eslint-disable-line\n};\n","import { useContext } from 'react';\n\nimport { NodeContext } from '@abtnode/ux/lib/contexts/node';\n\nimport client from '../libs/client';\nimport getWsClient, { create, useSubscription } from '../libs/ws';\n\nconst { Provider, Consumer } = NodeContext;\n\n// eslint-disable-next-line react/prop-types\nfunction NodeProvider({ children }) {\n const value = {\n api: client,\n ws: {\n getWsClient,\n create,\n useSubscription,\n },\n type: 'service',\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 } from '@abtnode/constant';\nimport { TeamContext } from '@abtnode/ux/lib/contexts/team';\n\nimport { useBlockletContext } from './blocklet';\nimport client from '../libs/client';\n\nconst { Provider, Consumer } = TeamContext;\n\nconst { did, 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: did } },\n getPermissions: { input: { teamDid: did } },\n getInvitations: { input: { teamDid: did } },\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: did };\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: did } });\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 value = {\n teamDid: did,\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 CircularProgress from '@mui/material/CircularProgress';\nimport { ErrorBoundary } from 'react-error-boundary';\nimport '@iconify/iconify';\n\nimport { ErrorFallback } from '@arcblock/ux/lib/ErrorBoundary';\nimport { useLocation } from 'react-router-dom';\nimport Dashboard from '@blocklet/ui-react/lib/Dashboard';\nimport { getDisplayName } from '@blocklet/meta/lib/util';\n\nimport { useBlockletContext } from '../../contexts/blocklet';\n\nexport default function Layout({ loading, error, children }) {\n const { blocklet } = useBlockletContext();\n const location = useLocation();\n\n if (!blocklet) {\n return null;\n }\n\n const title = getDisplayName(blocklet);\n\n return (\n <StyledDashboard legacy={false} title={title} fullWidth>\n <div className=\"dashboard-layout-body\">\n <div className=\"dashboard-layout-main\">\n <Box className=\"dashboard-layout-main\">\n {loading && (\n <Box flex={1} display=\"flex\" alignItems=\"center\" justifyContent=\"center\">\n <CircularProgress />\n </Box>\n )}\n {error && (\n <Box flex={1} display=\"flex\" alignItems=\"center\" justifyContent=\"center\">\n {error}\n </Box>\n )}\n {!(loading || error) && (\n <Box flex={1} padding=\"16px\" display=\"flex\" flexDirection=\"column\">\n <ErrorBoundary FallbackComponent={ErrorFallback} resetKeys={[location.pathname]}>\n {children}\n </ErrorBoundary>\n </Box>\n )}\n </Box>\n </div>\n </div>\n </StyledDashboard>\n );\n}\n\nLayout.propTypes = {\n children: PropTypes.any,\n loading: PropTypes.bool,\n error: PropTypes.any,\n};\n\nLayout.defaultProps = {\n loading: false,\n error: null,\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 { BlockletEvents } from '@blocklet/constant';\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 Configuration from '@abtnode/ux/lib/blocklet/configuration';\nimport AuditLogs from '@abtnode/ux/lib/blocklet/audit-logs';\nimport Passports from '@abtnode/ux/lib/team/passports';\nimport Members from '@abtnode/ux/lib/team/members';\nimport BlockletStatus from '@abtnode/ux/lib/blocklet/status';\nimport BlockletActions from '@abtnode/ux/lib/blocklet/actions';\nimport BlockletAvatar from '@abtnode/ux/lib/blocklet/avatar';\n\nimport getWsClient, { useSubscription } 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-layout';\n\nfunction Access() {}\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 useSubscription(BlockletEvents.updated, refreshBlocklet, [did]);\n useSubscription(BlockletEvents.started, refreshBlocklet, [did]);\n useSubscription(BlockletEvents.startFailed, refreshBlocklet, [did]);\n useSubscription(BlockletEvents.stopped, refreshBlocklet, [did]);\n useSubscription(BlockletEvents.statusChange, refreshBlocklet, [did]);\n useSubscription(BlockletEvents.upgraded, refreshBlocklet, [did]);\n useSubscription(BlockletEvents.downgraded, refreshBlocklet, [did]);\n\n if (!blocklet) {\n return <Spinner />;\n }\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.members'), value: 'members' });\n tabs.push({ label: t('common.passport'), value: 'passports' });\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\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 access: <Access />,\n services: <BlockletService />,\n members: <Members type=\"blocklet\" />,\n passports: Passports,\n components: Components,\n configuration: <Configuration blocklet={blocklet} onUpdate={onUpdate} />,\n 'audit-logs': renderAuditLogs,\n logs: Logs,\n };\n const TabComponent = renders[currentTab] || renders.overview;\n\n const content = (\n <DeletingBlockletProvider type=\"components\">\n <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 <Box component=\"div\" className=\"page-header\">\n <Box component=\"h2\" variant=\"h4\" className=\"page-title\" color=\"textPrimary\">\n {blocklet ? <BlockletAvatar blocklet={blocklet} style={{ marginRight: 16 }} /> : null}\n {blocklet ? (\n <Box display=\"flex\" alignItems=\"center\">\n <Box>{getDisplayName(blocklet)}</Box>\n {!!blocklet && (\n <BlockletStatus\n size=\"12px\"\n style={{ marginLeft: 8 }}\n status={blocklet.status}\n source={blocklet.source}\n />\n )}\n </Box>\n ) : (\n `${t('common.blocklet')} ${t('common.detail')}`\n )}\n </Box>\n {blocklet ? (\n <BlockletActions\n className=\"page-actions\"\n hasPermission\n blocklet={blocklet}\n onStart={() => {}}\n onComplete={() => {}}\n variant=\"group\"\n />\n ) : null}\n </Box>\n\n {!!missingRequiredConfigs.length && (\n <Alert type=\"error\" style={{ margin: '12px 0' }}>\n {t('blocklet.config.missingRequired')}\n </Alert>\n )}\n {content}\n </Main>\n </AdminLayout>\n </TeamProvider>\n </NodeProvider>\n );\n}\n\nexport default function Wrap() {\n const { blocklet } = useBlockletContext();\n\n const did = blocklet?.meta?.did;\n\n useEffect(() => {\n const wsClient = getWsClient();\n if (did) {\n wsClient.connect();\n } else if (wsClient.isConnected()) {\n wsClient.disconnect();\n }\n return () => {\n if (wsClient.isConnected()) {\n wsClient.disconnect();\n }\n };\n }, [did]);\n\n if (!did) {\n return null;\n }\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: 12px;\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","const { types } = require('@ocap/mcrypto');\nconst { toHex } = require('@ocap/util');\nconst { fromPublicKey } = require('@arcblock/did');\n\nconst toBlockletDid = (name) => {\n const pk = toHex(Buffer.from(typeof name === 'string' ? name.trim() : name));\n return fromPublicKey(pk, { role: types.RoleType.ROLE_ANY });\n};\n\nmodule.exports = toBlockletDid;\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Actions;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _Menu = _interopRequireDefault(require(\"@mui/material/Menu\"));\n\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\n\nvar _MoreHoriz = _interopRequireDefault(require(\"@mui/icons-material/MoreHoriz\"));\n\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\n\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nconst _excluded = [\"actions\"],\n _excluded2 = [\"icon\", \"text\", \"onClick\", \"disabled\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction Actions(_ref) {\n let {\n actions\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n const [anchorEl, setAnchorEl] = (0, _react.useState)(null);\n const open = Boolean(anchorEl);\n\n const onOpen = e => {\n try {\n e.stopPropagation();\n e.preventDefault(); // eslint-disable-next-line no-empty\n } catch (_unused) {}\n\n setAnchorEl(e.currentTarget);\n };\n\n const onClose = e => {\n try {\n e.stopPropagation();\n e.preventDefault(); // eslint-disable-next-line no-empty\n } catch (_unused2) {}\n\n setAnchorEl(null);\n };\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\n const {\n icon,\n text,\n onClick: _onClick,\n disabled = false\n } = action,\n opts = _objectWithoutProperties(action, _excluded2);\n\n return /*#__PURE__*/(0, _react.createElement)(_MenuItem.default, _objectSpread(_objectSpread({}, opts), {}, {\n disabled: disabled,\n dense: true,\n onClick: e => {\n onClose();\n\n _onClick(e);\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}\n\nActions.propTypes = {\n actions: _propTypes.default.array\n};\nActions.defaultProps = {\n actions: []\n};\n\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletActions;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _reactRouterDom = require(\"react-router-dom\");\n\nvar _useLocalStorage = _interopRequireDefault(require(\"react-use/lib/useLocalStorage\"));\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _Menu = _interopRequireDefault(require(\"@mui/material/Menu\"));\n\nvar _Divider = _interopRequireDefault(require(\"@mui/material/Divider\"));\n\nvar _ButtonGroup = _interopRequireDefault(require(\"@mui/material/ButtonGroup\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\n\nvar _MoreVert = _interopRequireDefault(require(\"@mui/icons-material/MoreVert\"));\n\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\n\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _Radio = _interopRequireDefault(require(\"@mui/material/Radio\"));\n\nvar _RadioGroup = _interopRequireDefault(require(\"@mui/material/RadioGroup\"));\n\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\n\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _util = require(\"@blocklet/meta/lib/util\");\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _constant = require(\"@blocklet/constant\");\n\nvar _toast = _interopRequireDefault(require(\"../toast\"));\n\nvar _util2 = require(\"../util\");\n\nvar _util3 = require(\"./util\");\n\nvar _node = require(\"../contexts/node\");\n\nvar _confirm = _interopRequireDefault(require(\"../confirm\"));\n\nvar _icons = _interopRequireDefault(require(\"./icons\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nconst _excluded = [\"blocklet\", \"onStart\", \"onComplete\", \"variant\", \"hasPermission\", \"useBlockletUrlEvaluation\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\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\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\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\n try {\n var _blocklet$settings;\n\n const input = {\n did: blocklet.meta.did\n };\n\n if (action === 'remove') {\n input.keepData = params.removeType === 'keepData';\n }\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 {\n serverUrl\n } = (0, _util3.getLaunchURL)(blocklet, 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\n await fn({\n input\n });\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\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\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\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\n if (requireUserConfirm) {\n setConfirmSetting(confirmSettings[action]);\n } else {\n await onConfirm();\n }\n };\n };\n\n const open = Boolean(anchorEl);\n\n const onOpen = e => {\n try {\n e.stopPropagation();\n e.preventDefault(); // eslint-disable-next-line no-empty\n } catch (_unused) {}\n\n setAnchorEl(e.currentTarget);\n };\n\n const onClose = e => {\n try {\n e.stopPropagation();\n e.preventDefault(); // eslint-disable-next-line no-empty\n } catch (_unused2) {}\n\n setAnchorEl(null);\n };\n\n const onAction = async (action, e) => {\n try {\n e.stopPropagation();\n e.preventDefault(); // eslint-disable-next-line no-empty\n } catch (_unused3) {}\n\n setAnchorEl(null);\n\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\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\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\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\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}\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\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};\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 = WrappedAuditLogs;\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _reactRouterDom = require(\"react-router-dom\");\n\nvar _reactMarkdownPreview = _interopRequireDefault(require(\"@uiw/react-markdown-preview\"));\n\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _Pagination = _interopRequireDefault(require(\"@mui/lab/Pagination\"));\n\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\n\nvar _Select = _interopRequireDefault(require(\"@mui/material/Select\"));\n\nvar _InputLabel = _interopRequireDefault(require(\"@mui/material/InputLabel\"));\n\nvar _FormControl = _interopRequireDefault(require(\"@mui/material/FormControl\"));\n\nvar _auditLog = require(\"../contexts/audit-log\");\n\nvar _node = require(\"../contexts/node\");\n\nvar _relativeTime = _interopRequireDefault(require(\"../relative-time\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\nconst getUserLink = _ref => {\n let {\n log,\n info,\n inService\n } = _ref;\n\n if (inService) {\n // TODO\n return \"/members?did=\".concat(log.actor.did);\n }\n\n if (log.scope === info.did) {\n return \"/team/members?did=\".concat(log.actor.did);\n }\n\n return \"/blocklets/\".concat(log.scope, \"/members?did=\").concat(log.actor.did);\n};\n\nfunction AuditLog(_ref2) {\n var _log$env$os, _log$env$browser;\n\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}\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\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\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}\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}\n\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .log-controls {\\n display: flex;\\n justify-content: space-between;\\n }\\n .log-entry {\\n display: flex;\\n margin: 16px 0;\\n\\n .log-author {\\n margin-right: 8px;\\n }\\n\\n .log-body {\\n flex: 1;\\n\\n a {\\n color: \", \";\\n }\\n\\n .log-header {\\n }\\n\\n .log-content {\\n p {\\n margin-bottom: 4px;\\n }\\n ul,\\n ol {\\n padding-left: 2rem;\\n }\\n li {\\n list-style-type: disc;\\n }\\n }\\n\\n .log-meta {\\n margin-top: 4px;\\n\\n span {\\n font-size: 0.8rem;\\n display: inline-block;\\n margin-right: 8px;\\n padding-right: 8px;\\n border-right: 1px solid #ccc;\\n\\n &:last-of-type {\\n border-right: none;\\n }\\n }\\n }\\n }\\n }\\n\"])), _ref4 => {\n let {\n theme\n } = _ref4;\n return theme.palette.primary.main;\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletAvatar;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\n\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\n\nvar _Avatar2 = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\n\nvar _constant = require(\"@abtnode/constant\");\n\nvar _node = require(\"../contexts/node\");\n\nvar _util = require(\"../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"blocklet\", \"style\", \"size\", \"ancestors\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nconst getDeployedFrom = (blocklet, node) => {\n let {\n deployedFrom\n } = blocklet || {};\n\n if (!deployedFrom && blocklet.source === 'registry') {\n deployedFrom = node.info.blockletRegistry;\n }\n\n return deployedFrom;\n};\n\nfunction BlockletAvatar(_ref) {\n var _blocklet$meta;\n\n let {\n blocklet,\n style,\n size,\n ancestors\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n const node = (0, _node.useNodeContext)();\n const {\n inService\n } = node;\n let logoUrl = inService ? (0, _urlJoin.default)(_util.APP_PREFIX, _constant.WELLKNOWN_SERVICE_PATH_PREFIX, \"/blocklet/logo?version=\".concat(blocklet === null || blocklet === void 0 ? void 0 : (_blocklet$meta = blocklet.meta) === null || _blocklet$meta === void 0 ? void 0 : _blocklet$meta.version)) : (0, _urlJoin.default)(node.prefix, 'blocklet.png');\n const {\n variant\n } = rest;\n\n if (!inService) {\n const deployedFrom = getDeployedFrom(blocklet, node);\n\n if (blocklet.source === 'registry' && blocklet.meta.logo) {\n logoUrl = (0, _urlJoin.default)(deployedFrom, (0, _util.formatRegistryLogoPath)(blocklet.meta.bundleDid, blocklet.meta.logo));\n } else {\n const prefix = window.env.apiPrefix || '/';\n logoUrl = (0, _urlJoin.default)(prefix, \"/blocklet/logo\".concat(ancestors.map(x => \"/\".concat(x.meta.did)).join(''), \"/\").concat(blocklet.meta.did));\n }\n }\n\n const setFallBackUrl = inService ? () => {} : ev => {\n ev.target.src = \"\".concat(node.prefix, \"/blocklet.png\");\n };\n let imgEle = /*#__PURE__*/(0, _jsxRuntime.jsx)(\"img\", {\n src: logoUrl,\n onError: setFallBackUrl,\n alt: blocklet.meta.name,\n style: {\n width: size\n }\n });\n\n if (!blocklet.meta.logo) {\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}\n\nBlockletAvatar.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n style: _propTypes.default.object,\n size: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n ancestors: _propTypes.default.array\n};\nBlockletAvatar.defaultProps = {\n style: {},\n size: 40,\n ancestors: []\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletSource;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\n\nvar _toUpper = _interopRequireDefault(require(\"lodash/toUpper\"));\n\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction BlockletSource(_ref) {\n var _blocklet$meta;\n\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}\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 = ComponentConfiguration;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\n\nvar _util = require(\"@blocklet/meta/lib/util\");\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Tabs = _interopRequireDefault(require(\"@arcblock/ux/lib/Tabs\"));\n\nvar _util2 = require(\"../../util\");\n\nvar _environment = _interopRequireDefault(require(\"./environment\"));\n\nvar _setting = _interopRequireDefault(require(\"./setting\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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, _react.useContext)(_context.LocaleContext);\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\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n\n if (blocklet.status === 'unknown' && (0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n\n const onClose = () => {\n setShowDialog(false);\n };\n\n const onOpen = e => {\n e.stopPropagation(); // eslint-disable-next-line no-unused-expressions\n\n setShowDialog(true);\n };\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\n const onTabChange = newTab => {\n setTab(newTab);\n };\n\n const tabConfig = tabConfigs[tab] || tabConfigs.settings;\n return [typeof children === 'function' ? children({\n open: onOpen\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: onOpen,\n \"data-cy\": \"action-config-component\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Edit.default, {})\n }), showDialog && /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledDialog, {\n open: true,\n fullWidth: true,\n maxWidth: \"md\",\n title: name,\n onClose: onClose,\n PaperProps: {\n style: {\n minHeight: 'auto'\n }\n },\n children: isRoot || !isDynamic ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_environment.default, {\n blocklet: blocklet,\n ancestors: ancestors\n }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: 1,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tabs.default, {\n tabs: tabs,\n current: tab,\n onChange: onTabChange,\n scrollButtons: \"auto\"\n }), tabConfig.component]\n })\n })];\n}\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;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _Radio = _interopRequireDefault(require(\"@mui/material/Radio\"));\n\nvar _RadioGroup = _interopRequireDefault(require(\"@mui/material/RadioGroup\"));\n\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\n\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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\n const deleteComponent = async param => {\n setLoading(true);\n await remove(param.component, param.removeType);\n setLoading(false);\n setDeleteSetting(null);\n };\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}\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;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _core = _interopRequireDefault(require(\"@material-table/core\"));\n\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\n\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\n\nvar _constant = require(\"@blocklet/constant\");\n\nvar _util = require(\"@blocklet/meta/lib/util\");\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\n\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _tableIcons = _interopRequireDefault(require(\"../../table-icons\"));\n\nvar _table = _interopRequireDefault(require(\"../../table\"));\n\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\n\nvar _util2 = require(\"../../util\");\n\nvar _icons = _interopRequireDefault(require(\"../icons\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject, _templateObject2;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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\n const onConfigChanged = () => _toast.default.success(t('blocklet.config.changedTip'));\n\n const isConfigEditable = x => x.custom;\n\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n\n if (blocklet.status === 'unknown' && (0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n\n const onAddConfig = async data => {\n if (!data.key.trim() || !data.value.trim()) {\n _toast.default.error(t('blocklet.config.environment.keyValueRequired'));\n\n return;\n }\n\n if (data.key.startsWith('BLOCKLET_')) {\n _toast.default.error(t('blocklet.config.environment.invalidKey'));\n\n return;\n }\n\n data.custom = true;\n const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs: [data]\n }\n });\n\n if (result.code === 'ok') {\n onConfigChanged(result.blocklet);\n }\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\n return;\n }\n\n if (newData.key.startsWith('BLOCKLET_') && !_constant.BLOCKLET_CONFIGURABLE_KEY[newData.key]) {\n _toast.default.error(t('blocklet.config.environment.invalidKey'));\n\n return;\n }\n\n if (newData.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE) {\n const errMessage = (0, _util2.isValidClusterSize)(newData);\n\n if (errMessage) {\n _toast.default.error(errMessage);\n\n return;\n }\n }\n\n const configs = [newData];\n\n if (newData.key !== oldData.key) {\n configs.push({\n key: oldData.key\n });\n }\n\n try {\n const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs\n }\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\n const onDeleteConfig = async data => {\n if (data.required) {\n _toast.default.error(t('blocklet.config.environment.deleteForbidden'));\n\n return;\n }\n\n const result = await node.api.configBlocklet({\n input: {\n did: dids,\n configs: [{\n key: data.key\n }]\n }\n });\n\n if (result.code === 'ok') {\n onConfigChanged(result.blocklet);\n }\n }; // configs\n\n\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\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\n if (!d.value) {\n return null;\n }\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\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_blocklet',\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}\n\nComponentEnvironment.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n ancestors: _propTypes.default.array\n};\nComponentEnvironment.defaultProps = {\n ancestors: []\n};\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);\n\nconst EditDiv = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n height: 60px;\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletComponent;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _semver = _interopRequireDefault(require(\"semver\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@mui/material/Dialog\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _DialogContent = _interopRequireDefault(require(\"@mui/material/DialogContent\"));\n\nvar _DialogTitle = _interopRequireDefault(require(\"@mui/material/DialogTitle\"));\n\nvar _DialogActions = _interopRequireDefault(require(\"@mui/material/DialogActions\"));\n\nvar _Update = _interopRequireDefault(require(\"@mui/icons-material/Update\"));\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\n\nvar _Badge = _interopRequireDefault(require(\"@mui/material/Badge\"));\n\nvar _SettingsOutlined = _interopRequireDefault(require(\"@mui/icons-material/SettingsOutlined\"));\n\nvar _InfoOutlined = _interopRequireDefault(require(\"@mui/icons-material/InfoOutlined\"));\n\nvar _Launch = _interopRequireDefault(require(\"@mui/icons-material/Launch\"));\n\nvar _Grid = _interopRequireDefault(require(\"@mui/material/Grid\"));\n\nvar _Collapse = _interopRequireDefault(require(\"@mui/material/Collapse\"));\n\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\n\nvar _ArrowForward = _interopRequireDefault(require(\"@mui/icons-material/ArrowForward\"));\n\nvar _ExpandMore = _interopRequireDefault(require(\"@mui/icons-material/ExpandMore\"));\n\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\n\nvar _util = require(\"@blocklet/meta/lib/util\");\n\nvar _deletingBlocklets = require(\"../../contexts/deleting-blocklets\");\n\nvar _didAddress = _interopRequireDefault(require(\"../../did-address\"));\n\nvar _tag = _interopRequireDefault(require(\"../../tag\"));\n\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\n\nvar _blockletSource = _interopRequireDefault(require(\"../blocklet-source\"));\n\nvar _runtimeInfo = _interopRequireDefault(require(\"../runtime-info\"));\n\nvar _status = _interopRequireDefault(require(\"../status\"));\n\nvar _version = _interopRequireDefault(require(\"../version\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _util2 = require(\"../../util\");\n\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\n\nvar _avatar = _interopRequireDefault(require(\"../avatar\"));\n\nvar _mode = _interopRequireDefault(require(\"../mode\"));\n\nvar _configuration = _interopRequireDefault(require(\"./configuration\"));\n\nvar _delete = _interopRequireDefault(require(\"./delete\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"blocklet\", \"onUpdate\", \"getComponentUrl\", \"AddComponent\"];\n\nvar _templateObject, _templateObject2;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\nconst getEngineRows = (engine, t) => {\n if (!engine) {\n return [];\n }\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};\n\nconst getSourceInfo = blocklet => {\n const {\n source,\n deployedFrom,\n bundleSource\n } = blocklet;\n\n if (source) {\n return {\n source,\n deployedFrom\n };\n }\n\n if (!bundleSource) {\n return {\n source: 'upload',\n deployedFrom\n };\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\n if (bundleSource.store) {\n return {\n source: 'registry',\n deployedFrom: deployedFrom || Array.isArray(bundleSource.store) ? bundleSource.store[0] : bundleSource.store\n };\n }\n\n return {};\n};\n\nfunction ComponentItem(_ref) {\n var _blocklet$children;\n\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\n if (depth <= 1 && deletingComponents.includes(blocklet.meta.did)) {\n status = 'deleting';\n }\n\n const mountPoint = \"/\".concat(ancestors.map(x => x.mountPoint || '/').join('/'), \"/\").concat(blocklet.mountPoint || '/').replace(/\\/+/g, '/'); // hide root's status and only display specific status\n\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\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\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\n const sourceInfo = componentInfo ? getSourceInfo(componentInfo) : {};\n const componentRows = componentInfo ? [{\n name: t('common.name'),\n value: (0, _util.getDisplayName)(componentInfo, true)\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_version.default, {\n blocklet: componentInfo,\n checkUpgrade: false\n })\n }, {\n name: t('common.status'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_status.default, {\n status: status,\n source: componentInfo.source\n })\n }, {\n name: t('common.mountPoint'),\n value: mountPoint\n }, {\n name: t('common.group'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, {\n type: \"success\",\n children: componentInfo.meta.group\n })\n }, {\n name: t('blocklet.overview.source'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockletSource.default, {\n sourceInfo: sourceInfo,\n blocklet: blocklet\n })\n }, {\n name: t('blocklet.overview.deployedFrom'),\n value: sourceInfo.deployedFrom || '-'\n }, {\n name: t('common.did'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: componentInfo.meta.did\n })\n }, {\n name: t('common.author'),\n value: (0, _util2.formatPerson)(componentInfo.meta.author)\n }, {\n name: t('common.runtimeInfo'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_runtimeInfo.default, {\n blocklet: componentInfo,\n noRunningMessage: t('--')\n })\n }, {\n name: t('common.engine'),\n value: getEngineRows(componentInfo.engine, t).map(_ref2 => {\n let {\n name,\n value\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n style: {\n marginBottom: 4\n },\n nameWidth: 120,\n name: name,\n children: value\n }, name);\n })\n }].filter(Boolean) : [];\n let deleteDisabledTip = '';\n\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\n return [(depth > 0 || blocklet.meta.group !== 'gateway') && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n py: 2,\n className: \"component-item\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n pl: Math.max((depth - 1) * 2, 0),\n width: {\n xs: 300,\n md: 400\n },\n display: \"flex\",\n alignItems: \"center\",\n style: {\n cursor: canExpand ? 'pointer' : 'cursor'\n },\n onClick: () => canExpand && setExpand(!expand),\n children: [canExpand ? expandIcon : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n width: 28\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.default, {\n blocklet: blocklet,\n ancestors: ancestors\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n ml: \"16px\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n style: {\n color: '#222',\n fontSize: 18\n },\n children: (0, _util.getDisplayName)(blocklet, true)\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_version.default, {\n blocklet: blocklet,\n checkUpgrade: false\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_mode.default, {\n style: {\n marginLeft: 4\n },\n mode: blocklet.mode || ''\n }), showStatus && /*#__PURE__*/(0, _jsxRuntime.jsx)(_status.default, {\n style: {\n marginLeft: 4\n },\n status: status,\n source: blocklet.source\n })]\n })]\n })]\n }, blocklet), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n sx: {\n display: {\n xs: 'none',\n md: 'flex'\n }\n },\n alignItems: \"center\",\n flexGrow: \"1\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n title: href,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n maxWidth: 400,\n sx: {\n color: 'secondary.main',\n fontSize: 18,\n px: 2\n },\n overflow: \"hidden\",\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n children: mountPoint\n })\n })\n }, mountPoint), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.visit'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"a\", {\n target: \"_blank\",\n href: href,\n rel: \"noopener noreferrer\",\n title: href,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Launch.default, {})\n })\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.overview'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: () => setComponentInfo(blocklet),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoOutlined.default, {})\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_configuration.default, {\n blocklet: blocklet,\n ancestors: ancestors,\n children: _ref3 => {\n let {\n open\n } = _ref3;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {\n title: t('common.config'),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledBadge, {\n color: \"error\",\n badgeContent: \"\",\n variant: \"dot\",\n invisible: !(0, _util.getComponentMissingConfigs)(blocklet, ancestors).length,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n onClick: open,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SettingsOutlined.default, {})\n })\n })\n }, \"config\");\n }\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_delete.default, {\n blocklet: root,\n component: blocklet,\n remove: onRemove,\n disabled: !!deleteDisabledTip,\n tip: deleteDisabledTip\n })]\n }, \"actions\")]\n }, \"group-not-gateway-box\"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_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\"), (_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}\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);\n\nfunction BlockletComponent(_ref4) {\n var _blocklet$meta;\n\n let {\n blocklet,\n onUpdate,\n getComponentUrl,\n AddComponent\n } = _ref4,\n rest = _objectWithoutProperties(_ref4, _excluded);\n\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\n if (blocklet.meta.group !== 'gateway') {\n // add root blocklet to table list\n components.unshift(blocklet);\n }\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\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\n setLoading(true);\n\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\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 } // check child component version\n\n\n const {\n updateId,\n updateList\n } = (await api.checkComponentsForUpdates({\n input: {\n did: blocklet.meta.did\n }\n })).preUpdateInfo || {};\n setLoading(false);\n\n if (!updateId) {\n _toast.default.info(t('blocklet.component.noUpdate'));\n\n return;\n }\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\n if (updateItem) {\n const name = ancestors.slice(1).concat(b).map(x => x.meta.title || x.meta.name).join(' / ');\n list.push({\n name,\n version: b.meta.version,\n newVersion: updateItem.meta.version\n });\n }\n });\n setUpdateConfirm({\n type: 'child',\n params: {\n updateId\n },\n list\n });\n } catch (err) {\n setLoading(false);\n\n _toast.default.error((0, _util2.formatError)(err));\n }\n };\n\n const onConfirmUpdate = async () => {\n if (loading) {\n return;\n }\n\n let fn;\n let input;\n\n if (updateConfirm.type === 'app') {\n fn = api.upgradeBlocklet.bind(api);\n input = {\n did: blocklet.meta.did,\n version: updateConfirm.params.version,\n registryUrl: updateConfirm.params.registryUrl || ''\n };\n } else {\n fn = api.upgradeComponents.bind(api);\n input = {\n updateId: updateConfirm.params.updateId,\n rootDid: blocklet.meta.did\n };\n }\n\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\n _toast.default.error((0, _util2.formatError)(error));\n }\n };\n\n const removeComponent = async (d, type) => {\n addDeletingDid(d.meta.did);\n\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\n removeDeletingDid(d.meta.did);\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_blocklet',\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: \"mutate_blocklet\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(AddComponent, {\n blocklet: blocklet,\n children: _ref6 => {\n let {\n open\n } = _ref6;\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n disabled: loading || (0, _util2.isInProgress)(blocklet.status),\n variant: \"text\",\n color: \"primary\",\n \"data-cy\": \"add-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 }), components && components.length ? [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n mt: 2,\n ml: {\n xs: '-16px',\n md: '-28px'\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 }), !!updateConfirm && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Dialog.default, {\n open: true,\n fullWidth: true,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n paddingY: 1.5,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogTitle.default, {\n children: t('blocklet.component.updateTitle')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n component: _DialogContent.default,\n py: 4,\n ml: 4,\n children: updateConfirm.list.map(x => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n item: true,\n xs: 5,\n children: x.name\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Grid.default, {\n fontSize: \"h6.fontSize\",\n container: true,\n spacing: 3,\n alignItems: \"center\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 2,\n children: x.version\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 1,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ArrowForward.default, {\n style: {\n fontSize: '0.9em'\n }\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Grid.default, {\n item: true,\n xs: 2,\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n color: \"secondary.main\",\n children: x.newVersion\n })\n })]\n })]\n }, \"\".concat(x.name, \"-\").concat(x.newVersion)))\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_DialogActions.default, {\n style: {\n padding: '8px 24px 24px'\n },\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {\n onClick: () => {\n setUpdateConfirm(null);\n },\n children: t('common.cancel')\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Button.default, {\n onClick: e => {\n e.stopPropagation();\n onConfirmUpdate();\n },\n color: \"primary\",\n disabled: loading,\n variant: \"contained\",\n autoFocus: true,\n children: [loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {\n size: [16, 10]\n }), t('common.update')]\n })]\n })]\n })\n })]\n }));\n}\n\nBlockletComponent.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n onUpdate: _propTypes.default.func,\n getComponentUrl: _propTypes.default.func,\n AddComponent: _propTypes.default.element\n};\nBlockletComponent.defaultProps = {\n onUpdate: () => {},\n getComponentUrl: () => window.location.origin,\n AddComponent: () => {}\n};\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 = ComponentSettingWithPermission;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\n\nvar _formTextInput = _interopRequireDefault(require(\"../../form/form-text-input\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _permission = require(\"../../permission\");\n\nvar _util = require(\"../../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nconst _excluded = [\"blocklet\", \"ancestors\", \"hasPermission\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction ComponentSetting(_ref) {\n let {\n blocklet,\n ancestors,\n hasPermission\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n api\n } = (0, _node.useNodeContext)();\n const rootDid = ancestors.map(x => x.meta.did)[0];\n const [loading, setLoading] = (0, _react.useState)('');\n const isDev = (0, _util.isBlockletDev)(blocklet);\n const disabled = isDev || loading || !hasPermission;\n\n if (!rootDid) {\n return null;\n }\n\n if (blocklet.status === 'unknown' && (0, _util.isInstalling)(blocklet.status)) {\n return null;\n }\n\n const onSubmitTitle = async value => {\n setLoading(true);\n\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\n _toast.default.error(err.message);\n\n throw err;\n }\n };\n\n const onSubmitMountPoint = async value => {\n setLoading(true);\n\n try {\n await api.updateComponentMountPoint({\n input: {\n rootDid,\n did: blocklet.meta.did,\n mountPoint: value\n }\n });\n setLoading(false);\n } catch (err) {\n setLoading(false);\n err.message = (0, _util.formatError)(err);\n\n _toast.default.error(err.message);\n\n throw err;\n }\n };\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n mt: 3,\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n label: t('common.title'),\n style: {\n marginTop: -24\n },\n disabled: loading || disabled,\n loading: loading,\n required: true,\n initialValue: blocklet.meta.title,\n onSubmit: onSubmitTitle\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_formTextInput.default, {\n label: t('blocklet.component.mountPoint'),\n style: {\n marginTop: -24\n },\n disabled: loading || disabled,\n loading: loading,\n required: true,\n initialValue: blocklet.mountPoint,\n onSubmit: onSubmitMountPoint\n })]\n })\n }));\n}\n\nconst ComponentSettingInDaemon = (0, _permission.withPermission)(ComponentSetting, 'mutate_blocklet');\nconst ComponentSettingInService = (0, _permission.withPermission)(ComponentSetting, '', _util.BlockletAdminRoles);\n\nfunction ComponentSettingWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentSettingInService, _objectSpread({}, props));\n }\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(ComponentSettingInDaemon, _objectSpread({}, props));\n}\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};\n\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletEnvironmentWithPermission;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\n\nvar _omit = _interopRequireDefault(require(\"lodash/omit\"));\n\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\n\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\n\nvar _Switch = _interopRequireDefault(require(\"@mui/material/Switch\"));\n\nvar _Divider = _interopRequireDefault(require(\"@mui/material/Divider\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _constant = require(\"@blocklet/constant\");\n\nvar _util = require(\"@blocklet/meta/lib/util\");\n\nvar _toast = _interopRequireDefault(require(\"../toast\"));\n\nvar _schemaForm = _interopRequireDefault(require(\"../schema-form\"));\n\nvar _config = _interopRequireDefault(require(\"../who-can-access/config\"));\n\nvar _node = require(\"../contexts/node\");\n\nvar _util2 = require(\"../util\");\n\nvar _permission = require(\"../permission\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject, _templateObject2;\n\nconst _excluded = [\"blocklet\", \"onUpdate\", \"hasPermission\"],\n _excluded2 = [\"value\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction BlockletEnvironment(_ref) {\n var _blocklet$settings;\n\n let {\n blocklet,\n onUpdate,\n hasPermission\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n const node = (0, _node.useNodeContext)();\n const {\n t,\n locale\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 clusterMode = (0, _get.default)(blocklet.meta, 'capabilities.clusterMode', false);\n useSubscription('system.info', res => {\n if (clusterMode) {\n setCpuCores((0, _get.default)(res, 'cpu.cores', ''));\n }\n });\n\n if ((0, _util2.isInstalling)(blocklet.status)) {\n return null;\n }\n\n const WalletTypes = [{\n label: 'DID',\n value: 'default'\n }, {\n label: 'ETH',\n value: 'eth'\n }]; // configurable blocklet environment\n\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 customColor = blocklet.environments.find(x => x.key === 'BLOCKLET_PASSPORT_COLOR');\n const customUrl = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_URL');\n const customLogo = blocklet.environments.find(x => x.key === 'BLOCKLET_APP_LOGO');\n const configurableEnvs = [{\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_NAME,\n description: t('blocklet.config.name'),\n value: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_NAME').value\n }, {\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_DESCRIPTION,\n description: t('blocklet.config.description'),\n value: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_DESCRIPTION').value\n }, {\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_PASSPORT_COLOR,\n description: t('blocklet.config.passportColor'),\n value: customColor ? customColor.value : 'auto',\n componentType: 'passport',\n componentProps: {\n blocklet\n }\n }, {\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_URL,\n description: t('blocklet.config.appUrl'),\n value: customUrl ? customUrl.value : ''\n }, {\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_LOGO,\n description: t('blocklet.config.logo'),\n value: customLogo ? customLogo.value : ''\n }];\n\n if (clusterMode) {\n const exist = blocklet.configs.find(x => x.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE);\n const value = exist ? exist.value : cpuCores;\n configurableEnvs.push({\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE,\n description: t('blocklet.config.clusterSize'),\n value,\n cpuCores\n });\n }\n\n const defaultValue = {};\n const schemaList = configurableEnvs.map(item => {\n const {\n value\n } = item,\n props = _objectWithoutProperties(item, _excluded2);\n\n defaultValue[item.key] = value;\n return _objectSpread({}, props);\n });\n\n const onWhoCanAccessChange = async e => {\n if (loading) {\n return;\n }\n\n setLoading(true);\n\n try {\n const {\n value\n } = e.target;\n const {\n blocklet: data\n } = await node.api.updateWhoCanAccess({\n input: {\n did: blocklet.meta.did,\n whoCanAccess: value\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n\n const onPublicToStoreChange = async e => {\n if (loading) {\n return;\n }\n\n setLoading(true);\n\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\n const iconStyle = {\n marginRight: 4,\n fontSize: 18,\n verticalAlign: 'text-bottom',\n color: theme.palette.text.secondary\n };\n\n const onSubmitConfig = async value => {\n if (value.key === _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE) {\n const errMessage = (0, _util2.isValidClusterSize)(value);\n\n if (errMessage) {\n _toast.default.error(errMessage);\n\n return;\n }\n }\n\n const params = [_objectSpread(_objectSpread({}, (0, _omit.default)(editingItem, ['childDid', 'componentType', 'componentProps'])), {}, {\n value,\n custom: true\n })];\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\n const onDeletableChange = async e => {\n if (loading) {\n return;\n }\n\n setLoading(true);\n\n try {\n const {\n checked\n } = e.target;\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: [{\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_DELETABLE,\n value: checked ? 'no' : 'yes',\n custom: true\n }]\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\n };\n\n const onWalletTypeChange = async e => {\n if (loading) {\n return;\n }\n\n setLoading(true);\n\n try {\n const {\n value\n } = e.target;\n const {\n blocklet: data\n } = await node.api.configBlocklet({\n input: {\n did: blocklet.meta.did,\n configs: [{\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_WALLET_TYPE,\n value,\n custom: true\n }]\n }\n });\n onUpdate(data);\n } catch (err) {\n _toast.default.error(err.message);\n } finally {\n setLoading(false);\n }\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\n if (action === 'edit') {\n setEditingItem(currentItem);\n } else if (['cancel', 'confirm'].includes(action)) {\n setEditingItem(null);\n }\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: [/*#__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.title'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-desc\",\n children: t('blocklet.config.access.description')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n disabled: disabled,\n select: true,\n size: \"small\",\n value: whoCanAccess,\n onChange: onWhoCanAccessChange,\n SelectProps: {\n renderValue: selected => {\n const d = _config.default.find(x => x.value === selected);\n\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: _config.default.map(d => {\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(StyledMenuItem, {\n value: d.value,\n sx: {\n display: 'block'\n },\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 === '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.jsx)(_Box.default, {\n className: \"config-form\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"config-label\",\n children: [t('blocklet.config.walletType.name'), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"config-desc\",\n children: t('blocklet.config.walletType.description')\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {\n disabled: disabled,\n select: true,\n size: \"small\",\n value: (customType === null || customType === void 0 ? void 0 : customType.value) || 'default',\n onChange: onWalletTypeChange,\n children: WalletTypes.map(type => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledMenuItem, {\n value: type.value,\n sx: {\n display: 'block'\n },\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n display: \"flex\",\n alignItems: \"center\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n children: type.label\n })\n })\n });\n })\n })]\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_schemaForm.default, {\n disabled: disabled,\n style: {\n marginTop: 0\n },\n loading: loading,\n schema: [{\n key: _constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SK,\n description: t('blocklet.config.sk'),\n value: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_SK').value,\n custom: true,\n secure: true\n }],\n defaultValue: {\n [_constant.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SK]: blocklet.environments.find(x => x.key === 'BLOCKLET_APP_SK').value\n },\n onChange: (changeValue, _ref3) => {\n let {\n action,\n currentItem\n } = _ref3;\n\n if (action === 'edit') {\n setEditingItem(currentItem);\n } else if (['cancel', 'confirm'].includes(action)) {\n setEditingItem(null);\n }\n\n if (action === 'confirm') {\n onSubmitConfig(changeValue[currentItem.key]);\n }\n }\n })]\n }));\n}\n\nconst BlockletEnvironmentInDaemon = (0, _permission.withPermission)(BlockletEnvironment, 'mutate_blocklet');\nconst BlockletEnvironmentInService = (0, _permission.withPermission)(BlockletEnvironment, '', _util2.BlockletAdminRoles);\n\nfunction BlockletEnvironmentWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletEnvironmentInService, _objectSpread({}, props));\n }\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletEnvironmentInDaemon, _objectSpread({}, props));\n}\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};\n\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n .config-form {\\n width: 80%;\\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\"])), props => props.theme.breakpoints.down('md'));\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 = BlockletDiskInfo;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\n\nvar _reactRouterDom = require(\"react-router-dom\");\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\n\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nconst _excluded = [\"blocklet\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction BlockletDiskInfo(_ref) {\n let {\n blocklet\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n const navigate = (0, _reactRouterDom.useNavigate)();\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n\n if (!blocklet.diskInfo) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('blocklet.diskInfo.empty')\n });\n }\n\n const renderDiskInfo = (dir, size, handler) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Typography.default, {\n children: [handler ?\n /*#__PURE__*/\n\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\n const env = blocklet.environments.reduce((acc, x) => {\n acc[x.key] = x.value;\n return acc;\n }, {});\n const rows = [{\n name: t('blocklet.diskInfo.appDir'),\n value: renderDiskInfo(env.BLOCKLET_APP_DIR, blocklet.diskInfo.app)\n }, {\n name: t('blocklet.diskInfo.dataDir'),\n value: renderDiskInfo(env.BLOCKLET_DATA_DIR, blocklet.diskInfo.data)\n }, {\n name: t('blocklet.diskInfo.logDir'),\n value: renderDiskInfo(env.BLOCKLET_LOG_DIR, blocklet.diskInfo.log, () => {\n navigate(\"/logs/blocklet-\".concat(blocklet.meta.did));\n })\n }, {\n name: t('blocklet.diskInfo.cacheDir'),\n value: renderDiskInfo(env.BLOCKLET_CACHE_DIR, blocklet.diskInfo.cache)\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: rows.map(row => /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n children: row.value\n }, row.name))\n }));\n}\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;\n\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\n\nvar _PlayArrow = _interopRequireDefault(require(\"@mui/icons-material/PlayArrow\"));\n\nvar _Stop = _interopRequireDefault(require(\"@mui/icons-material/Stop\"));\n\nvar _Replay = _interopRequireDefault(require(\"@mui/icons-material/Replay\"));\n\nvar _Autorenew = _interopRequireDefault(require(\"@mui/icons-material/Autorenew\"));\n\nvar _Settings = _interopRequireDefault(require(\"@mui/icons-material/Settings\"));\n\nvar _Receipt = _interopRequireDefault(require(\"@mui/icons-material/Receipt\"));\n\nvar _Group = _interopRequireDefault(require(\"@mui/icons-material/Group\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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 = BlockletLog;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _util = require(\"@blocklet/meta/lib/util\");\n\nvar _logTerminal = require(\"../logs/log-terminal\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"blocklet\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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/**\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\n const initialData = ['Tip: this tab will only show runtime logs. Please go to \"Blocklet Server\" to view other lifecycle logs of the blocklet (install/start/stop...)', '\\r\\n\\r\\n'];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, _objectSpread(_objectSpread({\n height: {\n xs: 'calc(100vh - 444px)',\n sm: 'calc(100vh - 508px)',\n md: 'calc(100vh - 445px)'\n }\n }, rest), {}, {\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_logTerminal.LogTerminalGroup, {\n name: (0, _util.getDisplayName)(blocklet),\n logId: \"blocklet-\".concat(blocklet.meta.did),\n initialData: initialData\n })\n }));\n}\n\nBlockletLog.propTypes = {\n blocklet: _propTypes.default.object.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletMode;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _tag = _interopRequireDefault(require(\"../tag\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"mode\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction BlockletMode(_ref) {\n let {\n mode\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\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\n return null;\n}\n\nBlockletMode.propTypes = {\n mode: _propTypes.default.string.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletOverview;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\n\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\n\nvar _util = require(\"@blocklet/meta/lib/util\");\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _didAddress = _interopRequireDefault(require(\"../did-address\"));\n\nvar _blockletSource = _interopRequireDefault(require(\"./blocklet-source\"));\n\nvar _runtimeInfo = _interopRequireDefault(require(\"./runtime-info\"));\n\nvar _diskInfo = _interopRequireDefault(require(\"./disk-info\"));\n\nvar _status = _interopRequireDefault(require(\"./status\"));\n\nvar _version = _interopRequireDefault(require(\"./version\"));\n\nvar _util2 = require(\"../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nconst _excluded = [\"blocklet\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nconst getEngineRows = (engine, t) => {\n if (!engine) {\n return [];\n }\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};\n\nfunction BlockletOverview(_ref) {\n var _blocklet$settings;\n\n let {\n blocklet\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const {\n value: appDid\n } = (blocklet.environments || []).find(x => x.key === 'BLOCKLET_APP_ID') || {};\n const infoRows = [appDid ? {\n name: t('blocklet.appId'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: appDid\n })\n } : null, {\n name: t('common.name'),\n value: (0, _util.getDisplayName)(blocklet, true)\n }, {\n name: t('common.status'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_status.default, {\n status: blocklet.status,\n source: blocklet.source\n })\n }, {\n name: t('common.version'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_version.default, {\n blocklet: blocklet\n })\n }, {\n name: t('common.group'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, {\n type: \"success\",\n children: blocklet.meta.group\n })\n }, {\n name: t('common.author'),\n value: (0, _util2.formatPerson)(blocklet.meta.author)\n }, {\n name: t('blocklet.installedAt'),\n value: (0, _util2.formatToDatetime)(blocklet.installedAt)\n }, blocklet.status === 'running' ? {\n name: t('blocklet.startedAt'),\n value: (0, _util2.formatToDatetime)(blocklet.startedAt)\n } : null, blocklet.status !== 'running' ? {\n name: t('blocklet.stoppedAt'),\n value: (0, _util2.formatToDatetime)(blocklet.stoppedAt)\n } : null, {\n name: t('blocklet.overview.source'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockletSource.default, {\n sourceInfo: {\n source: blocklet.source,\n deployedFrom: blocklet.deployedFrom\n },\n blocklet: blocklet\n })\n }, {\n name: t('blocklet.overview.deployedFrom'),\n value: blocklet.deployedFrom || '-'\n }, {\n name: t('blocklet.overview.accessControl'),\n value: t(\"team.whoCanAccess.\".concat((0, _util.getWhoCanAccess)(blocklet), \".title\"))\n }, {\n name: t('common.did'),\n value: /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: blocklet.meta.did\n })\n }, {\n name: t('common.owner'),\n value: (_blocklet$settings = blocklet.settings) !== null && _blocklet$settings !== void 0 && _blocklet$settings.owner ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_didAddress.default, {\n did: blocklet.settings.owner.did\n }) : '--'\n }].filter(Boolean);\n const engineRows = getEngineRows(blocklet.engine, t);\n\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\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\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(\"span\", {\n children: t('common.basicInfo')\n })\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"basicInfo\",\n children: renderRows(infoRows)\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: t('common.runtimeInfo')\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_runtimeInfo.default, {\n blocklet: blocklet\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"title\",\n children: t('common.engine')\n }), engineRows.map(_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 }), /*#__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}\n\nBlockletOverview.propTypes = {\n blocklet: _propTypes.default.object.isRequired\n};\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 }\\n\"])), props => props.theme.spacing(5), props => props.theme.spacing(3));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletRuntimeInfo;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _filesize = _interopRequireDefault(require(\"filesize\"));\n\nvar _prettyMsI18n = _interopRequireDefault(require(\"pretty-ms-i18n\"));\n\nvar _isEmpty = _interopRequireDefault(require(\"lodash/isEmpty\"));\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _util = require(\"../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nconst _excluded = [\"blocklet\", \"noRunningMessage\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction BlockletRuntimeInfo(_ref) {\n let {\n blocklet,\n noRunningMessage\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n const {\n t,\n locale\n } = (0, _react.useContext)(_context.LocaleContext);\n\n if (blocklet.status !== 'running') {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: noRunningMessage || t('blocklet.runtimeInfo.noRunning')\n });\n }\n\n if ((0, _isEmpty.default)(blocklet.runtimeInfo)) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {\n children: t('common.empty')\n });\n }\n\n const rows = [{\n name: t('blocklet.runtimeInfo.memoryUsage'),\n value: (0, _filesize.default)(blocklet.runtimeInfo.memoryUsage)\n }, {\n name: t('blocklet.runtimeInfo.cpuUsage'),\n value: \"\".concat(blocklet.runtimeInfo.cpuUsage * 100, \"%\")\n }, {\n name: t('blocklet.runtimeInfo.uptime'),\n value: (0, _prettyMsI18n.default)(Number(+new Date() - blocklet.runtimeInfo.startAt || 0), {\n locale: (0, _util.formatLocale)(locale)\n })\n }, {\n name: t('blocklet.runtimeInfo.processId'),\n value: blocklet.runtimeInfo.pid\n }];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(Div, _objectSpread(_objectSpread({\n component: \"div\"\n }, rest), {}, {\n children: rows.map(_ref2 => {\n let {\n name,\n value\n } = _ref2;\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n nameWidth: 120,\n name: name,\n children: value\n }, name);\n })\n }));\n}\n\nBlockletRuntimeInfo.propTypes = {\n blocklet: _propTypes.default.object.isRequired,\n noRunningMessage: _propTypes.default.string\n};\nBlockletRuntimeInfo.defaultProps = {\n noRunningMessage: ''\n};\nconst Div = (0, _styled.default)(_Typography.default)(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletStatus;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _dot = _interopRequireDefault(require(\"../dot\"));\n\nvar _tag = _interopRequireDefault(require(\"../tag\"));\n\nvar _util = require(\"../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"status\", \"variant\", \"source\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nconst colors = {\n yellow: '#FFCF71',\n grey: '#888888'\n};\n\nfunction BlockletStatus(_ref) {\n let {\n status,\n variant,\n source\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\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\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\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}\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.downloadExportedSource = downloadExportedSource;\nexports.genExportedMeta = genExportedMeta;\nexports.getLaunchURL = exports.getLaunchAgreementUrl = void 0;\nexports.getNameByTitle = getNameByTitle;\n\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\n\nvar _pickBy = _interopRequireDefault(require(\"lodash/pickBy\"));\n\nvar _jszip = _interopRequireDefault(require(\"jszip\"));\n\nvar _jsYaml = _interopRequireDefault(require(\"js-yaml\"));\n\nvar _fileSaver = _interopRequireDefault(require(\"file-saver\"));\n\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\n\nvar _did = _interopRequireDefault(require(\"@blocklet/meta/lib/did\"));\n\nvar _didMotif = require(\"@arcblock/did-motif\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nconst base64ToArrayBuffer = base64 => {\n const bufStr = window.atob(base64);\n const bytes = new Uint8Array(bufStr.length);\n\n for (let i = 0; i < bufStr.length; i++) {\n bytes[i] = bufStr.charCodeAt(i);\n }\n\n return bytes;\n};\n\nconst getLogo = did => {\n const url = (0, _didMotif.toDataURL)(did, {\n size: 200\n });\n const base64 = url.replace(/^[^,]*,/, '');\n return base64ToArrayBuffer(base64);\n};\n\nfunction getNameByTitle(title) {\n return title.replace(/[\\s/@_]/g, '-').replace(/[^a-zA-Z0-9_-]/g, '').replace(/(^[-\\s]+)|([-\\s]+$)/g, '').toLowerCase();\n}\n\nfunction genExportedMeta(name, blocklet) {\n const meta = (0, _pickBy.default)((0, _cloneDeep.default)(blocklet.meta), x => x !== null);\n meta.name = name;\n meta.did = (0, _did.default)(name);\n meta.logo = 'logo.png';\n meta.interfaces.forEach(x => {\n // filter null or undefined\n if (!x.services) {\n delete x.services;\n }\n });\n blocklet.children.forEach(child => {\n if (child.dynamic && child.bundleSource) {\n meta.children.push({\n name: child.meta.name,\n source: child.bundleSource,\n title: child.meta.title,\n mountPoint: child.mountPoint\n });\n }\n });\n meta.environments = (blocklet.configs || []).map(x => ({\n name: x.key,\n description: 'Automatically generated when exporting',\n required: !!x.required,\n secure: !!x.secure,\n default: x.secure ? '' : x.value || ''\n }));\n meta.capabilities.component = false;\n return meta;\n}\n\nconst license = holder => \"Copyright \\xA9 2022 \".concat(holder || '', \"\\n\\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \\u201CSoftware\\u201D), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\\n\\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\\n\\nTHE SOFTWARE IS PROVIDED \\u201CAS IS\\u201D, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\");\n\nconst Gitignore = \".DS_Store\\n.blocklet\";\nconst GithubAction = \"name: Deploy\\n\\non:\\n push:\\n branches:\\n - main\\n\\njobs:\\n Deploy:\\n runs-on: ubuntu-latest\\n\\n steps:\\n - name: Checkout repo\\n uses: actions/checkout@v2\\n\\n - name: Blocklet workflow\\n uses: blocklet/action-workflow@v1\\n with:\\n skip-upload: true\\n skip-deploy: true\\n bundle-command: blocklet bundle --create-release\\n github-token: ${{ secrets.GITHUB_TOKEN }}\";\n\nasync function downloadExportedSource(meta) {\n let {\n holder\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const folderName = \"\".concat(meta.name.split('/').pop());\n const readme = \"# \".concat(meta.title, \"\\n\\n## Introduction\\n\\n\").concat(meta.description);\n const zip = new _jszip.default();\n const folder = zip.folder(folderName);\n folder.file('blocklet.yml', _jsYaml.default.dump(meta));\n folder.file('blocklet.md', readme);\n folder.file('README.md', readme);\n folder.file('logo.png', getLogo(meta.did));\n folder.file('LICENSE', license(holder));\n folder.file('.gitignore', Gitignore);\n folder.folder('screenshots').file('.gitkeep', '');\n folder.folder('.github').folder('workflows').file('main.yml', GithubAction);\n await new Promise((resolve, reject) => {\n zip.generateAsync({\n type: 'blob'\n }).then(content => {\n (0, _fileSaver.default)(content, \"\".concat(folderName, \".zip\"));\n resolve();\n }).catch(err => {\n reject(err);\n });\n });\n}\n\nconst getLaunchURL = function getLaunchURL(meta, info) {\n let encodeURI = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n const adminPath = process.env.NODE_ENV === 'production' ? info.routing.adminPath : '';\n const serverUrl = encodeURI ? encodeURIComponent((0, _urlJoin.default)(window.location.origin, adminPath)) : (0, _urlJoin.default)(window.location.origin, adminPath);\n const metaUrl = (0, _urlJoin.default)(info === null || info === void 0 ? void 0 : info.blockletRegistry, \"/api/blocklets/\".concat(meta.did, \"/blocklet.json\"));\n return {\n serverUrl,\n metaUrl\n };\n};\n\nexports.getLaunchURL = getLaunchURL;\n\nconst getLaunchAgreementUrl = (meta, info) => {\n const {\n metaUrl,\n serverUrl\n } = getLaunchURL(meta, info);\n const url = new URL((0, _urlJoin.default)(serverUrl, '/launch-blocklet/agreement'));\n url.searchParams.set('blocklet_meta_url', metaUrl);\n url.searchParams.set('from', window.location.href);\n return url.href;\n};\n\nexports.getLaunchAgreementUrl = getLaunchAgreementUrl;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = BlockletVersion;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _semver = _interopRequireDefault(require(\"semver\"));\n\nvar _notistack = require(\"notistack\");\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _ArrowUpward = _interopRequireDefault(require(\"@mui/icons-material/ArrowUpward\"));\n\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\n\nvar _Toast = _interopRequireDefault(require(\"@arcblock/ux/lib/Toast\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _constant = require(\"@blocklet/constant\");\n\nvar _util = require(\"@blocklet/meta/lib/util\");\n\nvar _tag = _interopRequireDefault(require(\"../tag\"));\n\nvar _confirm = _interopRequireDefault(require(\"../confirm\"));\n\nvar _node = require(\"../contexts/node\");\n\nvar _util2 = require(\"../util\");\n\nvar _permission = require(\"../permission\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"blocklet\", \"checkUpgrade\", \"hasPermission\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction Version(_ref) {\n let {\n blocklet,\n checkUpgrade,\n hasPermission\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\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\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\n if (data) {\n const {\n version,\n registryUrl\n } = data;\n\n if (version && _semver.default.gt(version, blocklet.meta.version)) {\n setNewVersionBlocklet({\n version,\n registryUrl\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\n const onConfirm = async () => {\n setLoading(true);\n\n try {\n const input = {\n did: blocklet.meta.did,\n version: newVersionBlocklet.version,\n registryUrl: 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\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\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\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tag.default, _objectSpread(_objectSpread({}, rest), {}, {\n children: blocklet.meta.version\n }));\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_blocklet');\nconst BlockletVersionInService = (0, _permission.withPermission)(Version, '', _util2.BlockletAdminRoles);\n\nfunction BlockletVersion(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletVersionInService, _objectSpread({}, props));\n }\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(BlockletVersionInDaemon, _objectSpread({}, props));\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ClickToCopy;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _ClickToCopy = _interopRequireDefault(require(\"@arcblock/ux/lib/ClickToCopy\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction ClickToCopy(_ref) {\n let {\n children\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\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}\n\nClickToCopy.propTypes = {\n children: _propTypes.default.any.isRequired\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = ConfirmDialog;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@mui/material/Dialog\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _DialogActions = _interopRequireDefault(require(\"@mui/material/DialogActions\"));\n\nvar _DialogContent = _interopRequireDefault(require(\"@mui/material/DialogContent\"));\n\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\n\nvar _DialogTitle = _interopRequireDefault(require(\"@mui/material/DialogTitle\"));\n\nvar _Alert = _interopRequireDefault(require(\"@mui/material/Alert\"));\n\nvar _useTheme = _interopRequireDefault(require(\"@mui/material/styles/useTheme\"));\n\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _util = require(\"./util\");\n\nvar _mobileWidth = _interopRequireDefault(require(\"./hooks/mobile-width\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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\n const onCallback = async cb => {\n if (typeof cb === 'function') {\n setLoading(true);\n\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\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\n const handleClick = e => {\n e.stopPropagation();\n };\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 // 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}\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;\n\nvar _react = require(\"react\");\n\nvar _useLocalStorage = _interopRequireDefault(require(\"react-use/lib/useLocalStorage\"));\n\nvar _toast = _interopRequireDefault(require(\"../toast\"));\n\nvar _node = require(\"./node\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nconst AuditLogContext = /*#__PURE__*/(0, _react.createContext)({});\nexports.AuditLogContext = AuditLogContext;\nconst {\n Provider,\n Consumer\n} = AuditLogContext; // eslint-disable-next-line react/prop-types\n\nexports.AuditLogConsumer = Consumer;\n\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\n const fetchLogs = async function fetchLogs() {\n let {\n page = 1,\n silent = true\n } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (loading) {\n return;\n }\n\n if (!silent) {\n setLoading(true);\n }\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\n setLoading(false);\n }\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}\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;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _xorWith = _interopRequireDefault(require(\"lodash/xorWith\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nconst DeletingBlockletContext = /*#__PURE__*/(0, _react.createContext)({});\n\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\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 * 去除删除中的 blocklet did\n * @param {String} did 删除中的did\n */\n\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 * 将不在的 blocklet id 移出 deleting 数组\n * @param {Array} existDids 已存在的 blocklet did 数组集\n */\n\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\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}\n\nDeletingBlockletProvider.propTypes = {\n type: _propTypes.default.string,\n children: _propTypes.default.node.isRequired\n};\nDeletingBlockletProvider.defaultProps = {\n type: 'blocklets'\n};\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;\n\nvar _react = require(\"react\");\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nconst NodeContext = /*#__PURE__*/(0, _react.createContext)({});\nexports.NodeContext = NodeContext;\nconst {\n Provider,\n Consumer\n} = NodeContext;\nexports.NodeConsumer = Consumer;\nexports.NodeProvider = Provider;\n\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;\n\nvar _react = require(\"react\");\n\nvar _Session = require(\"@arcblock/did-connect/lib/Session\");\n\n/* eslint-disable object-curly-newline */\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;\n\nvar _react = require(\"react\");\n\nconst TeamContext = /*#__PURE__*/(0, _react.createContext)({});\nexports.TeamContext = TeamContext;\nconst {\n Provider,\n Consumer\n} = TeamContext;\nexports.TeamConsumer = Consumer;\nexports.TeamProvider = Provider;\n\nfunction useTeamContext() {\n return (0, _react.useContext)(TeamContext);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _reactRouterDom = require(\"react-router-dom\");\n\nvar _Link = _interopRequireDefault(require(\"@mui/material/Link\"));\n\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\n\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"did\", \"href\", \"external\", \"avatarProps\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction WrappedDidAddress(_ref) {\n let {\n did,\n href,\n external,\n avatarProps\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\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\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRouterDom.Link, {\n to: href,\n children: did\n });\n }\n\n return did;\n }\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}\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;\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\nconst color = {\n success: '#3ab39d',\n error: '#D0021B'\n};\nconst defaultSize = '10px';\n\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);\n\nvar _default = Dot;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = FormTextInput;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\n\nvar _CircularProgress = _interopRequireDefault(require(\"@mui/material/CircularProgress\"));\n\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\n\nvar _Close = _interopRequireDefault(require(\"@mui/icons-material/Close\"));\n\nvar _Done = _interopRequireDefault(require(\"@mui/icons-material/Done\"));\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _required = _interopRequireDefault(require(\"./required\"));\n\nvar _formWrapper = _interopRequireDefault(require(\"./form-wrapper\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"label\", \"disabled\", \"required\", \"initialValue\", \"onChange\", \"placeholder\", \"style\", \"onSubmit\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction FormTextInput(_ref) {\n let {\n label,\n disabled,\n required,\n initialValue,\n onChange,\n placeholder,\n style,\n onSubmit\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n const [editing, setEditing] = (0, _react.useState)(false);\n const [loading, setLoading] = (0, _react.useState)(false);\n const [defaultValue, setDefaultValue] = (0, _react.useState)(initialValue);\n const [value, setValue] = (0, _react.useState)(defaultValue);\n\n const handleSubmit = async () => {\n setLoading(true);\n\n try {\n await onSubmit(value);\n setDefaultValue(value);\n } catch (err) {\n setValue(defaultValue);\n } finally {\n setLoading(false);\n setEditing(false);\n }\n };\n\n const onInputChange = changeValue => {\n setValue(changeValue);\n onChange(changeValue);\n }; // enter keydown\n\n\n const handleKeydown = e => {\n if (e.key === 'Enter') {\n handleSubmit();\n }\n };\n\n const input = editing ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, _objectSpread({\n style: {\n flex: 1\n },\n fullWidth: true,\n value: value,\n onChange: e => {\n onInputChange(e.target.value);\n },\n autoFocus: true,\n size: \"small\",\n variant: \"outlined\",\n placeholder: placeholder,\n onKeyDown: handleKeydown,\n disabled: disabled\n }, rest)) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n px: 1,\n className: \"form-item-input slot\",\n children: value\n });\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_formWrapper.default, {\n className: \"form\",\n style: style,\n children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"form-item\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"form-item-label\",\n children: [label, required && /*#__PURE__*/(0, _jsxRuntime.jsx)(_required.default, {})]\n }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {\n className: \"form-item-body\",\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"form-item-input\",\n children: input\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {\n className: \"form-item-action\",\n children: editing ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"schema-form-item-confirm\",\n onClick: handleSubmit,\n disabled: disabled || loading,\n size: \"large\",\n children: loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {\n size: 24\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Done.default, {})\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"schema-form-item-cancel\",\n onClick: () => {\n setValue(defaultValue);\n setEditing(false);\n },\n disabled: disabled || loading,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Close.default, {})\n })]\n }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.default, {\n \"data-cy\": \"schema-form-item-edit\",\n onClick: () => setEditing(true),\n disabled: disabled,\n size: \"large\",\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EditIcon.default, {})\n })\n })]\n })]\n })\n });\n}\n\nFormTextInput.propTypes = {\n style: _propTypes.default.object,\n onSubmit: _propTypes.default.func,\n onChange: _propTypes.default.func,\n label: _propTypes.default.string,\n initialValue: _propTypes.default.string,\n placeholder: _propTypes.default.string,\n required: _propTypes.default.bool,\n disabled: _propTypes.default.bool\n};\nFormTextInput.defaultProps = {\n style: {},\n onSubmit: () => {},\n onChange: () => {},\n label: '',\n initialValue: '',\n placeholder: '',\n required: false,\n disabled: false\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _styles = require(\"@mui/styles\");\n\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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}\n\nvar _default = useMobileWidth;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = require(\"react\");\n\nvar _useInterval = _interopRequireDefault(require(\"react-use/lib/useInterval\"));\n\nvar _util = require(\"../util\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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}\n\nvar _default = Clock;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.LogTerminal = void 0;\nexports.LogTerminalGroup = LogTerminalGroup;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Button = _interopRequireDefault(require(\"@mui/material/Button\"));\n\nvar _ButtonGroup = _interopRequireDefault(require(\"@mui/material/ButtonGroup\"));\n\nvar _useMediaQuery = _interopRequireDefault(require(\"@mui/material/useMediaQuery\"));\n\nvar _Terminal = _interopRequireDefault(require(\"@arcblock/terminal/lib/Terminal\"));\n\nvar _clock = _interopRequireDefault(require(\"./clock\"));\n\nvar _node = require(\"../contexts/node\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject, _templateObject2;\n\nconst _excluded = [\"name\", \"logId\", \"types\", \"initialData\", \"prepend\"],\n _excluded2 = [\"logFile\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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/**\n * 按 level/destination 分类的一组 terminal\n */\nfunction LogTerminalGroup(_ref) {\n let {\n name,\n logId,\n types,\n initialData,\n prepend\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\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 (0, _react.useEffect)(() => {\n types.forEach(type => {\n const terminal = terminalRefs.current[type];\n\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 }); // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []); // 监听 log 数据, 写入 terminal\n\n useSubscription(\"log.\".concat(logId), log => {\n if (!logFiles) {\n setLogFiles(log.logFiles || {});\n }\n\n const terminal = terminalRefs.current[log.level];\n\n if (terminal) {\n terminal.write(log.data.replace(/.\\n/g, p => p === '\\r\\n' ? p : \"\".concat(p[0], \"\\r\\n\\r\\n\")));\n terminal.write('\\r\\n\\r\\n');\n }\n }, []);\n return /*#__PURE__*/(0, _jsxRuntime.jsxs)(LogTerminalGroupRoot, _objectSpread(_objectSpread({}, rest), {}, {\n children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(\"div\", {\n className: \"log-terminal-group-head\",\n children: [prepend, /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonGroup.default, {\n variant: \"outlined\",\n size: isMobile ? 'small' : 'medium',\n children: types.map(type => {\n const props = type === currentType ? {\n variant: 'contained'\n } : {};\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, _objectSpread(_objectSpread({}, props), {}, {\n onClick: () => setCurrentType(type),\n children: logTypeLabels[type]\n }), type);\n })\n })]\n }), /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n className: \"log-terminal-group-terminals\",\n children: types.map(type => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(LogTerminal, {\n ref: _ref2 => {\n terminalRefs.current[type] = _ref2;\n },\n logFile: logFiles === null || logFiles === void 0 ? void 0 : logFiles[type],\n style: {\n visibility: type === currentType ? 'visible' : 'hidden'\n }\n }, type);\n })\n })]\n }));\n}\n\nLogTerminalGroup.propTypes = {\n // log name, 比如: blocklet display name\n name: _propTypes.default.string.isRequired,\n // 比如: abtnode | blocklet-services | blocklet-<did>\n logId: _propTypes.default.string.isRequired,\n // 日志类型, info/error 或 stdin/stdout/access\n types: _propTypes.default.arrayOf(_propTypes.default.string),\n // 写入 terminal 的初始数据\n initialData: _propTypes.default.arrayOf(_propTypes.default.string),\n prepend: _propTypes.default.node\n};\nLogTerminalGroup.defaultProps = {\n types: ['error', 'info', 'access', 'stdout', 'stderr'],\n initialData: [],\n prepend: null\n};\n\nconst LogTerminalGroupRoot = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n .log-terminal-group-head {\\n flex: 0 0 auto;\\n display: flex;\\n align-items: center;\\n gap: 16px;\\n padding-bottom: 16px;\\n\\n \", \" {\\n flex-direction: column;\\n align-items: start;\\n }\\n }\\n .log-terminal-group-terminals {\\n flex: 1;\\n position: relative;\\n overflow: hidden;\\n > * {\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n }\\n }\\n\"])), props => props.theme.breakpoints.down('md'));\n\nconst LogTerminal = /*#__PURE__*/(0, _react.forwardRef)((_ref3, ref) => {\n let {\n logFile\n } = _ref3,\n rest = _objectWithoutProperties(_ref3, _excluded2);\n\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};\n\nconst LogTerminalRoot = _styled.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral([\"\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n .log-terminal-top {\\n flex: 0 0 auto;\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n flex-wrap: wrap;\\n padding: 8px;\\n font-size: 14px;\\n color: aquamarine;\\n background: darkgray;\\n word-break: break-word;\\n }\\n .log-terminal-container {\\n flex: 1;\\n height: 100%;\\n padding: 8px;\\n overflow: hidden;\\n background: #2c313c;\\n }\\n\\n .xterm-viewport::-webkit-scrollbar {\\n width: 10px;\\n }\\n .xterm-viewport::-webkit-scrollbar-track {\\n opacity: 0;\\n }\\n .xterm-viewport::-webkit-scrollbar-thumb {\\n min-height: 20px;\\n background-color: #ffffff20;\\n }\\n\"])));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportTag;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _Close = _interopRequireDefault(require(\"@mui/icons-material/Close\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nconst _excluded = [\"passport\", \"onDelete\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction PassportTag(props) {\n const {\n passport,\n onDelete\n } = props,\n rest = _objectWithoutProperties(props, _excluded);\n\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}\n\nPassportTag.propTypes = {\n passport: _propTypes.default.object.isRequired,\n onDelete: _propTypes.default.func\n};\nPassportTag.defaultProps = {\n onDelete: null\n};\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;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _session = require(\"./contexts/session\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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\n if (permissions.length) {\n const userPermissions = session.user && session.user.permissions || [];\n can = permissions.some(p => userPermissions.includes(p));\n }\n\n if (can && roles.length) {\n can = roles.includes(session.user.role);\n }\n\n if (typeof component === 'function') {\n return component(can);\n }\n\n if (typeof children === 'function') {\n return children(can);\n }\n\n if (can) {\n return component || children || null;\n }\n\n return null;\n}\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}\n\nPermission.propTypes = {\n permission: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),\n role: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),\n component: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.element]),\n children: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.element])\n};\nPermission.defaultProps = {\n permission: '',\n role: '',\n component: null,\n children: null\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = RelativeTime;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _prettyMsI18n = _interopRequireDefault(require(\"pretty-ms-i18n\"));\n\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _util = require(\"./util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction RelativeTime(_ref) {\n let {\n value\n } = _ref;\n const {\n t,\n locale\n } = (0, _context.useLocaleContext)();\n\n if (!value) {\n return '-';\n }\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\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\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}\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 = void 0;\n\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\n\nvar _Check = _interopRequireDefault(require(\"@mui/icons-material/Check\"));\n\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\n\nvar _Clear = _interopRequireDefault(require(\"@mui/icons-material/Clear\"));\n\nvar _SaveAlt = _interopRequireDefault(require(\"@mui/icons-material/SaveAlt\"));\n\nvar _Edit = _interopRequireDefault(require(\"@mui/icons-material/Edit\"));\n\nvar _Filter = _interopRequireDefault(require(\"@mui/icons-material/Filter\"));\n\nvar _FirstPage = _interopRequireDefault(require(\"@mui/icons-material/FirstPage\"));\n\nvar _LastPage = _interopRequireDefault(require(\"@mui/icons-material/LastPage\"));\n\nvar _ChevronRight = _interopRequireDefault(require(\"@mui/icons-material/ChevronRight\"));\n\nvar _ChevronLeft = _interopRequireDefault(require(\"@mui/icons-material/ChevronLeft\"));\n\nvar _Search = _interopRequireDefault(require(\"@mui/icons-material/Search\"));\n\nvar _ArrowDropDown = _interopRequireDefault(require(\"@mui/icons-material/ArrowDropDown\"));\n\nvar _Remove = _interopRequireDefault(require(\"@mui/icons-material/Remove\"));\n\nvar _ViewColumn = _interopRequireDefault(require(\"@mui/icons-material/ViewColumn\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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;\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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\"])));\n\nvar _default = TableStyle;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Wrapped;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Tag = _interopRequireDefault(require(\"@arcblock/ux/lib/Tag\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"children\", \"style\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction Wrapped(_ref) {\n let {\n children,\n style\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tag.default, _objectSpread(_objectSpread({\n style: style\n }, rest), {}, {\n children: children\n }));\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;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\n\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\n\nvar _ListItemIcon = _interopRequireDefault(require(\"@mui/material/ListItemIcon\"));\n\nvar _ListItemText = _interopRequireDefault(require(\"@mui/material/ListItemText\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _ForbidLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ForbidLoginIcon\"));\n\nvar _AllowLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/AllowLoginIcon\"));\n\nvar _team = require(\"../../contexts/team\");\n\nvar _actions = _interopRequireDefault(require(\"../../actions\"));\n\nvar _issuePassport = _interopRequireDefault(require(\"./issue-passport\"));\n\nvar _toggleUserApproval = _interopRequireDefault(require(\"./toggle-user-approval\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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 }, // 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}\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;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\n\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\n\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\n\nvar _Loop = _interopRequireDefault(require(\"@mui/icons-material/Loop\"));\n\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\n\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _PersonIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/PersonIcon\"));\n\nvar _ExternalIssuerIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ExternalIssuerIcon\"));\n\nvar _Datatable = _interopRequireWildcard(require(\"@arcblock/ux/lib/Datatable\"));\n\nvar _RelativeTime = _interopRequireDefault(require(\"@arcblock/ux/lib/RelativeTime\"));\n\nvar _constant = require(\"@abtnode/constant\");\n\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\n\nvar _util = require(\"../../util\");\n\nvar _inviteMember = _interopRequireDefault(require(\"./invite-member\"));\n\nvar _transferNode = _interopRequireDefault(require(\"./transfer-node\"));\n\nvar _member = _interopRequireDefault(require(\"./member\"));\n\nvar _invitations = _interopRequireDefault(require(\"./invitations\"));\n\nvar _actions = _interopRequireDefault(require(\"./actions\"));\n\nvar _util2 = require(\"./util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\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); }\n\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; }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nconst ROLE_ALL = '$all';\nconst ROLE_NONE = '$none';\n\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};\n\nconst isFromExternal = (user, teamIssuerDid) => {\n const list = user.passports || [];\n\n if (!list.length) {\n return false;\n }\n\n return !list.some(z => 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}\n\nSimpleInfo.propTypes = {\n user: _propTypes.default.object.isRequired\n};\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\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\n const getUsers = () => {\n const query = {};\n\n if (search.hideBlocked) {\n query.approved = true;\n }\n\n query.role = search.role;\n\n if (search.searchText) {\n query.search = search.searchText;\n }\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 setUsers(res.users || []);\n setRowCount(res.paging.total);\n }).catch(err => {\n setLoading(false);\n\n _toast.default.error(err.message);\n });\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 // user counts\n\n (0, _react.useEffect)(() => {\n api.getUsersCountPerRole().then(res => {\n setUserCounts(res.counts || []);\n }).catch(err => {\n _toast.default.error(err.message);\n });\n }, []); //eslint-disable-line\n\n useSubscription(_constant.EVENTS.USER_UPDATED, data => {\n if (data.teamDid === teamDid) {\n getUsers();\n }\n }, [search]);\n const isInvitationEnabled = enablePassportIssuance;\n const columns = [{\n label: t('common.name'),\n name: 'fullName',\n options: {\n customBodyRenderLite: rawIndex => {\n const x = users[rawIndex];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(\"div\", {\n \"data-cy\": \"member-name-\".concat(x.fullName),\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(SimpleInfo, {\n user: x\n })\n }, x.did);\n }\n }\n }, {\n label: t('common.address'),\n name: 'did',\n options: {\n customBodyRender: e => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Address.default, {\n size: 14,\n copyable: false,\n children: e\n });\n }\n }\n }, {\n label: t('team.member.lastLogin'),\n name: 'lastLoginAt',\n options: {\n customBodyRender: e => {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_RelativeTime.default, {\n value: e,\n locale: locale\n });\n }\n }\n }, {\n label: t('common.actions'),\n name: '',\n width: 100,\n align: 'center',\n verticalKeyAlign: 'center',\n options: {\n customBodyRenderLite: rawIndex => {\n const x = users[rawIndex];\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_permission.default, {\n permission: inService ? '' : 'mutate_team',\n role: inService ? _util.BlockletAdminRoles : [],\n children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_actions.default, {\n user: x,\n onIssuePassport: () => setMemberDialog(_objectSpread(_objectSpread({}, x), {}, {\n initTab: 'issuances'\n }))\n })\n });\n }\n }\n }];\n const customButtons = [];\n\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\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\n const onRoleChange = role => {\n if (loading) {\n return;\n }\n\n setSearch(x => _objectSpread(_objectSpread({}, x), {}, {\n role,\n hideBlocked: false,\n searchText: '',\n page: 1\n }));\n };\n\n const onHideBlockedChange = value => {\n setSearch(x => _objectSpread(_objectSpread({}, x), {}, {\n hideBlocked: value,\n page: 1\n }));\n };\n\n const onTableChange = _ref3 => {\n let {\n page,\n rowsPerPage,\n searchText\n } = _ref3;\n\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\n const tableOptions = {\n sort: false,\n download: false,\n filter: false,\n print: false,\n expandableRowsOnClick: true,\n\n onRowClick(e, _ref4) {\n let {\n dataIndex\n } = _ref4;\n const x = users[dataIndex];\n setMemberDialog(x);\n },\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}\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);\n\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;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _Delete = _interopRequireDefault(require(\"@mui/icons-material/Delete\"));\n\nvar _CircularProgress = _interopRequireDefault(require(\"@mui/material/CircularProgress\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\n\nvar _Datatable = _interopRequireDefault(require(\"@arcblock/ux/lib/Datatable\"));\n\nvar _RelativeTime = _interopRequireDefault(require(\"@arcblock/ux/lib/RelativeTime\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\n\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\n\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\n\nvar _util = require(\"../../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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\n const deleteInvitation = async _ref => {\n let {\n inviteId\n } = _ref;\n\n if (loading) {\n return;\n }\n\n setLoading(true);\n\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\n const onCancel = () => {\n setLoading(false);\n setDelConfirm(null);\n };\n\n const getLink = column => {\n if (!endpoint) {\n return '';\n }\n\n return (0, _util.getInviteLink)({\n inviteId: column.inviteId,\n endpoint\n });\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\n if (!endpoint) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {\n size: 16\n });\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\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}\n\nconst Div = _styled.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral([\"\\n margin-top: -20px;\\n\"])));\n\nInvitations.propTypes = {};\nInvitations.defaultProps = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = InviteMember;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\n\nvar _Select = _interopRequireDefault(require(\"@mui/material/Select\"));\n\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\n\nvar _InputLabel = _interopRequireDefault(require(\"@mui/material/InputLabel\"));\n\nvar _FormControl = _interopRequireDefault(require(\"@mui/material/FormControl\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\n\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _util = require(\"../../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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\n const onCreate = async () => {\n if (!role) {\n setError(t('team.member.error.passportEmpty'));\n return;\n }\n\n const trimRemark = remark.trim();\n setError(null);\n setLoading(true);\n\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\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}\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};\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;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\n\nvar _Select = _interopRequireDefault(require(\"@mui/material/Select\"));\n\nvar _InputLabel = _interopRequireDefault(require(\"@mui/material/InputLabel\"));\n\nvar _FormControl = _interopRequireDefault(require(\"@mui/material/FormControl\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _util = require(\"../../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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\n const onCreate = async () => {\n if (!role) {\n setError(t('team.member.error.passportEmpty'));\n return;\n }\n\n setError(null);\n setLoading(true);\n\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\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}\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;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _notistack = require(\"notistack\");\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _Avatar = _interopRequireDefault(require(\"@mui/material/Avatar\"));\n\nvar _Tabs = _interopRequireDefault(require(\"@arcblock/ux/lib/Tabs\"));\n\nvar _InfoRow = _interopRequireDefault(require(\"@arcblock/ux/lib/InfoRow\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\n\nvar _ForbidLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ForbidLoginIcon\"));\n\nvar _AllowLoginIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/AllowLoginIcon\"));\n\nvar _constant = require(\"@abtnode/constant\");\n\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _util = require(\"../../util\");\n\nvar _passportIssuances = _interopRequireDefault(require(\"./passport-issuances\"));\n\nvar _passports = _interopRequireDefault(require(\"./passports\"));\n\nvar _toggleUserApproval = _interopRequireDefault(require(\"./toggle-user-approval\"));\n\nvar _util2 = require(\"./util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject, _templateObject2, _templateObject3;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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\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\n if (res.getUser.user) {\n res.getUser.user.avatar = (0, _util2.parseAvatar)(res.getUser.user.avatar, teamDid, inService);\n }\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\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\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 // tab\n\n const Info = () => {\n const rows = user ? [{\n name: t('team.member.name'),\n value: user.fullName\n }, {\n name: t('common.email'),\n value: user.email\n }, {\n name: t('team.member.allowLogin'),\n value: user.approved ? t('common.yes') : t('common.no')\n }, {\n name: t('team.member.lastLogin'),\n value: (0, _util.formatToDatetime)(user.updatedAt)\n }, {\n name: t('common.createdAt'),\n value: (0, _util.formatToDatetime)(user.createdAt)\n }, {\n name: t('common.remark'),\n value: user.remark || '--'\n }].filter(Boolean) : [];\n return rows.map(row => {\n if (row.name === t('common.did')) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(_InfoRow.default, {\n valueComponent: \"div\",\n nameWidth: 120,\n name: row.name,\n nameFormatter: () => t('common.did'),\n children: row.value\n }, row.name);\n }\n\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\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\n return true;\n });\n const tabConfig = tabConfigs[tab] || tabConfigs.info;\n\n const onTabChange = newTab => {\n setTab(newTab);\n };\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}\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};\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\"])));\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\"])));\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;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _notistack = require(\"notistack\");\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _node = require(\"../../contexts/node\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\n\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\n\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\n\nvar _passportTag = _interopRequireDefault(require(\"../../passport-tag\"));\n\nvar _util = require(\"../../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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\n const deleteIssuance = async _ref2 => {\n let {\n id\n } = _ref2;\n\n if (loading) {\n return;\n }\n\n setLoading(true);\n\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\n const onCancel = () => {\n setLoading(false);\n setDelConfirm(null);\n };\n\n const getLink = column => endpoint ? (0, _util.getIssuePassportLink)({\n id: column.id,\n endpoint\n }) : ''; // eslint-disable-next-line react/prop-types\n // eslint-disable-next-line react/no-unstable-nested-components\n\n\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\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}\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\"])));\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;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _notistack = require(\"notistack\");\n\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\n\nvar _upperFirst = _interopRequireDefault(require(\"lodash/upperFirst\"));\n\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _Tooltip = _interopRequireDefault(require(\"@mui/material/Tooltip\"));\n\nvar _ErrorOutline = _interopRequireDefault(require(\"@mui/icons-material/ErrorOutline\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _RevokeIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/RevokeIcon\"));\n\nvar _ExternalIssuerIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ExternalIssuerIcon\"));\n\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\n\nvar _constant = require(\"@abtnode/constant\");\n\nvar _createPassportSvg = _interopRequireDefault(require(\"@abtnode/auth/lib/util/create-passport-svg\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _session = require(\"../../contexts/session\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _util = require(\"../../util\");\n\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\n\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\n\nvar _searchInput = _interopRequireDefault(require(\"../search-input\"));\n\nvar _listHeader = _interopRequireDefault(require(\"../styles/list-header\"));\n\nvar _issuePassport = _interopRequireDefault(require(\"./issue-passport\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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}\n\nConfirmDescription.propTypes = {\n action: _propTypes.default.string.isRequired,\n passport: _propTypes.default.object.isRequired\n};\nConfirmDescription.defaultProps = {};\n\nfunction Passports(_ref2) {\n var _blocklet$settings;\n\n let {\n user,\n onCreate\n } = _ref2;\n const {\n t\n } = (0, _context.useLocaleContext)();\n const {\n session,\n inService\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 } = (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\n const togglePassportStatus = async passport => {\n if (loading) {\n return;\n }\n\n setLoading(true);\n\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\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\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\n if (!hasPermission) {\n return {\n revokable: false,\n message: t('team.passport.noPermission')\n };\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\n return {\n revokable: true\n };\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}\n\nPassports.propTypes = {\n user: _propTypes.default.object.isRequired,\n onCreate: _propTypes.default.func\n};\nPassports.defaultProps = {\n onCreate: () => {}\n};\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;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\n\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _session = require(\"../../contexts/session\");\n\nvar _util = require(\"../../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nconst isNodeOwner = (nodeInfo, userDid) => nodeInfo.nodeOwner && nodeInfo.nodeOwner.did === userDid;\n\nconst isSelf = (sessionUser, userDid) => sessionUser && sessionUser.did === userDid;\n\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\n const open = () => setShow(true);\n\n const updateUserApproval = async d => {\n const {\n did,\n approved\n } = d;\n\n if (loading) {\n return;\n }\n\n setLoading(true);\n\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\n onError();\n } finally {\n setLoading(false);\n }\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\n _onCancel();\n },\n color: user.approved ? 'error' : 'primary'\n };\n let can;\n\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\n if (!can) {\n return null;\n }\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}\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;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _useAsync = _interopRequireDefault(require(\"react-use/lib/useAsync\"));\n\nvar _get = _interopRequireDefault(require(\"lodash/get\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\n\nvar _Connect = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Connect\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\n\nvar _clickToCopy = _interopRequireDefault(require(\"../../click-to-copy\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _util = require(\"../../util\");\n\nvar _session = require(\"../../contexts/session\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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\n return {\n delegated: true\n };\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\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\n const onCreate = async () => {\n setError(null);\n setLoading(true);\n\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\n const handleTransferNFT = () => {\n setOpenTransferNFTAuth(true);\n setActiveStep(1);\n };\n\n const handleCancelTransferNFT = () => {\n setOpenTransferNFTAuth(false);\n setActiveStep(0);\n };\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}\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};\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;\n\nvar _urlJoin = _interopRequireDefault(require(\"url-join\"));\n\nvar _constant = require(\"@abtnode/constant\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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\n if (inService) {\n return (0, _urlJoin.default)(prefix, '/user', avatar.replace(_constant.USER_AVATAR_URL_PREFIX, ''));\n }\n\n return (0, _urlJoin.default)(prefix, '/user/avatar', teamDid, avatar.replace(_constant.USER_AVATAR_URL_PREFIX, ''));\n }\n\n return avatar;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = PassportDetailWithPermission;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _FormControlLabel = _interopRequireDefault(require(\"@mui/material/FormControlLabel\"));\n\nvar _Checkbox = _interopRequireDefault(require(\"@mui/material/Checkbox\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\n\nvar _DeleteIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/DeleteIcon\"));\n\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _util = require(\"../../util\");\n\nvar _permission = require(\"../../permission\");\n\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\n\nvar _mutateRole = _interopRequireDefault(require(\"./mutate-role\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject, _templateObject2;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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\n const deletePassport = async name => {\n if (loading) return;\n\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\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\n const onBind = async () => {\n setLoading(true);\n const grantNames = binds.filter(x => x.bind).map(x => x.name);\n\n try {\n await api.updatePermissionsForRole({\n input: {\n teamDid,\n roleName: role.name,\n grantNames\n }\n });\n\n _toast.default.success(t('common.saveSuccess'));\n\n onSuccess();\n } catch (err) {\n _toast.default.error((0, _util.formatError)(err));\n } finally {\n setLoading(false);\n }\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 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 fill: \"#bfbfbf\"\n })\n })]\n }),\n actions: !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 children: role.description\n })]\n }), /*#__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 // 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\n return y;\n }));\n },\n name: x.name\n }),\n label: x.description\n })\n }))\n })]\n })]\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}\n\nconst PassportDetailInDaemon = (0, _permission.withPermission)(PassportDetail, 'mutate_team');\nconst PassportDetailInService = (0, _permission.withPermission)(PassportDetail, '', _util.BlockletAdminRoles);\n\nfunction PassportDetailWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportDetailInService, _objectSpread({}, props));\n }\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(PassportDetailInDaemon, _objectSpread({}, props));\n}\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};\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\"])));\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;\n\nvar _react = require(\"react\");\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _SplitButton = _interopRequireDefault(require(\"@arcblock/ux/lib/SplitButton\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\n\nvar _LockIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/LockIcon\"));\n\nvar _ExternalIssuerIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/ExternalIssuerIcon\"));\n\nvar _createPassportSvg = _interopRequireDefault(require(\"@abtnode/auth/lib/util/create-passport-svg\"));\n\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _util = require(\"../../util\");\n\nvar _permission = _interopRequireDefault(require(\"../../permission\"));\n\nvar _searchInput = _interopRequireDefault(require(\"../search-input\"));\n\nvar _listHeader = _interopRequireDefault(require(\"../styles/list-header\"));\n\nvar _detail = _interopRequireDefault(require(\"./detail\"));\n\nvar _mutateRole = _interopRequireDefault(require(\"./mutate-role\"));\n\nvar _trustedIssuers = _interopRequireDefault(require(\"./trusted-issuers\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\nfunction PassportList() {\n const {\n t\n } = (0, _react.useContext)(_context.LocaleContext);\n const {\n api,\n info: nodeInfo,\n inService\n } = (0, _node.useNodeContext)();\n const {\n roles,\n teamDid,\n teamIssuerDid,\n teamName,\n refresh: refreshTeam,\n enablePassportIssuance,\n passportColor\n } = (0, _team.useTeamContext)();\n const [showCreate, setShowCreate] = (0, _react.useState)(false);\n const [updateForm, setUpdateForm] = (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\n const toggleShowIssue = async () => {\n if (loading) {\n return;\n }\n\n setLoading(true);\n\n try {\n await api.configPassportIssuance({\n input: {\n teamDid,\n enable: !enablePassportIssuance\n }\n });\n refreshTeam();\n await (0, _util.sleep)(800);\n\n _toast.default.success(t('common.configSuccess'));\n\n setLoading(false);\n } catch (error) {\n _toast.default.error(error.message);\n\n setLoading(false);\n }\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.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 }),\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 }), (inService || nodeInfo.did !== teamDid) && /*#__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 })]\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\"])));\n\nPassportList.propTypes = {};\nPassportList.defaultProps = {};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = MutateRole;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _md = _interopRequireDefault(require(\"md5\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _DialogContentText = _interopRequireDefault(require(\"@mui/material/DialogContentText\"));\n\nvar _Typography = _interopRequireDefault(require(\"@mui/material/Typography\"));\n\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _Alert = _interopRequireDefault(require(\"@arcblock/ux/lib/Alert\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _util = require(\"../../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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\n const onCreate = async () => {\n const _title = title.trim();\n\n if (!_title) {\n setError(t('team.passport.error.titleEmpty'));\n return;\n }\n\n if (_title.length > 64) {\n setError(t('team.passport.error.titleTooLong', {\n length: 64\n }));\n return;\n }\n\n const desc = description.replace(/\\n/g, ' ');\n\n if (!desc) {\n setError(t('team.passport.error.descriptionEmpty'));\n return;\n }\n\n const name = mode === 'create' ? (0, _md.default)(_title) : item.name;\n setError(null);\n setLoading(true);\n\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\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\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}\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;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Spinner = _interopRequireDefault(require(\"@arcblock/ux/lib/Spinner\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _ArrowBack = _interopRequireDefault(require(\"@mui/icons-material/ArrowBack\"));\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _MenuItem = _interopRequireDefault(require(\"@mui/material/MenuItem\"));\n\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _DeleteIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/DeleteIcon\"));\n\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\n\nvar _constant = require(\"@abtnode/constant\");\n\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\n\nvar _node = require(\"../../contexts/node\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _util = require(\"../../util\");\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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); }\n\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; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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};\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};\n\nconst canSave = (issuerDid, mappings) => {\n if (!issuerDid) {\n return false;\n }\n\n return !mappings.some(x => !x.from.passport || !x.to.role);\n};\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\n const configTrustedPassports = async () => {\n if (loading) {\n return;\n }\n\n const item = {\n issuerDid,\n remark,\n mappings\n };\n const trustedList = [...trustedPassports];\n\n if (editIndex === -1) {\n trustedList.unshift(item);\n } else {\n trustedList[editIndex] = item;\n }\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\n _toast.default.success(t('common.saveSuccess'));\n\n onSuccess();\n } catch (err) {\n setLoading(false);\n\n _toast.default.error(err.message);\n }\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) || 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}\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};\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;\n\nvar _react = require(\"react\");\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _cloneDeep = _interopRequireDefault(require(\"lodash/cloneDeep\"));\n\nvar _Dialog = _interopRequireDefault(require(\"@arcblock/ux/lib/Dialog\"));\n\nvar _Box = _interopRequireDefault(require(\"@mui/material/Box\"));\n\nvar _Add = _interopRequireDefault(require(\"@mui/icons-material/Add\"));\n\nvar _IconButton = _interopRequireDefault(require(\"@mui/material/IconButton\"));\n\nvar _context = require(\"@arcblock/ux/lib/Locale/context\");\n\nvar _Button = _interopRequireDefault(require(\"@arcblock/ux/lib/Button\"));\n\nvar _Empty = _interopRequireDefault(require(\"@arcblock/ux/lib/Empty\"));\n\nvar _Address = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Address\"));\n\nvar _EditIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/EditIcon\"));\n\nvar _DeleteIcon = _interopRequireDefault(require(\"@arcblock/icons/lib/DeleteIcon\"));\n\nvar _Avatar = _interopRequireDefault(require(\"@arcblock/did-connect/lib/Avatar\"));\n\nvar _toast = _interopRequireDefault(require(\"../../toast\"));\n\nvar _permission = require(\"../../permission\");\n\nvar _node = require(\"../../contexts/node\");\n\nvar _team = require(\"../../contexts/team\");\n\nvar _util = require(\"../../util\");\n\nvar _confirm = _interopRequireDefault(require(\"../../confirm\"));\n\nvar _listHeader = _interopRequireDefault(require(\"../styles/list-header\"));\n\nvar _searchInput = _interopRequireDefault(require(\"../search-input\"));\n\nvar _trustedIssuer = _interopRequireDefault(require(\"./trusted-issuer\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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\n const deleteTrustedIssuer = async did => {\n if (loading) {\n return;\n }\n\n const index = trustedPassports.findIndex(x => x.issuerDid === did);\n\n if (index === -1) {\n // should not be here\n _toast.default.error('Cannot find passports');\n }\n\n const trustedList = [...trustedPassports];\n trustedList.splice(index, 1);\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\n _toast.default.success(t('common.saveSuccess'));\n\n setDelConfirm(false);\n } catch (err) {\n setLoading(false);\n\n _toast.default.error(err.message);\n }\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}\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);\n\nfunction TrustedIssuersWithPermission(props) {\n const {\n inService\n } = (0, _node.useNodeContext)();\n\n if (inService) {\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(TrustedIssuersInService, _objectSpread({}, props));\n }\n\n return /*#__PURE__*/(0, _jsxRuntime.jsx)(TrustedIssuersInDaemon, _objectSpread({}, props));\n}\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;\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _TextField = _interopRequireDefault(require(\"@mui/material/TextField\"));\n\nvar _Search = _interopRequireDefault(require(\"@mui/icons-material/Search\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nconst _excluded = [\"children\"];\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\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; }\n\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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\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; }\n\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\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\nconst SearchInput = (0, _styled.default)(_ref => {\n let {\n children\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\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;\n\nvar _styled = _interopRequireDefault(require(\"@emotion/styled\"));\n\nvar _templateObject;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\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\"])));\n\nvar _default = ListHeader;\nexports.default = _default;"],"names":["client","create","pathPrefix","window","env","apiPrefix","replace","url","location","host","WsClient","heartbeatIntervalMs","params","token","Cookie","getWsClient","useSubscription","event","cb","deps","blocklet","did","useSessionContext","session","user","connect","useEffect","on","off","Provider","NodeContext","NodeProvider","children","value","api","ws","type","node","TeamContext","appId","TeamProvider","useBlockletContext","useState","invitations","setInvitations","roles","setRoles","permissions","setPermissions","teamName","getDisplayName","passportColor","environments","find","x","key","BLOCKLET_CONFIGURABLE_KEY","trustedPassports","enablePassportIssuance","getTeamData","getRoles","input","teamDid","getPermissions","getInvitations","res","filter","RBAC_CONFIG","y","name","passport","ci","map","description","title","Toast","message","getUsers","query","paging","sort","lastLoginAt","meta","teamIssuerDid","isNodeTeam","refresh","endpoint","origin","getUsersCountPerRole","BlockletComponent","props","getComponentUrl","mountPoint","joinUrl","defaultProps","Layout","loading","error","useLocation","StyledDashboard","legacy","fullWidth","className","Box","flex","display","alignItems","justifyContent","CircularProgress","padding","flexDirection","ErrorBoundary","FallbackComponent","ErrorFallback","resetKeys","pathname","styled","Dashboard","Access","BlockletService","navigate","useNavigate","useParams","tab","currentTab","refreshBlocklet","actions","t","useLocaleContext","BlockletEvents","Spinner","onUpdate","missingRequiredConfigs","isInstalling","status","getAppMissingConfigs","tabs","label","Badge","color","variant","invisible","length","push","getBlockletServices","renderAuditLogs","scope","renders","overview","Overview","access","services","members","passports","Passports","components","Components","configuration","logs","Logs","TabComponent","content","DeletingBlockletProvider","Tabs","current","onChange","newTab","WELLKNOWN_SERVICE_PATH_PREFIX","scrollButtons","isValidElement","Main","component","style","marginRight","size","marginLeft","source","hasPermission","onStart","onComplete","Alert","margin","Wrap","wsClient","isConnected","disconnect","theme","breakpoints","values","md","types","require","toHex","fromPublicKey","module","exports","pk","Buffer","from","trim","role","RoleType","ROLE_ANY","Object","defineProperty","Actions","_templateObject","_react","_propTypes","_interopRequireDefault","_styled","_IconButton","_Menu","_MenuItem","_MoreHoriz","_ListItemIcon","_ListItemText","_jsxRuntime","_excluded","_excluded2","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","enumerable","apply","_objectSpread","target","i","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","configurable","writable","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","prototype","propertyIsEnumerable","call","_ref","anchorEl","setAnchorEl","open","Boolean","onClose","e","stopPropagation","preventDefault","_unused2","jsxs","Div","jsx","onClick","_unused","currentTarget","id","keepMounted","PaperProps","action","index","close","icon","text","_onClick","disabled","opts","createElement","dense","minWidth","primary","propTypes","array","strings","raw","div","slice","freeze","BlockletActions","_reactRouterDom","_useLocalStorage","_Divider","_ButtonGroup","_Spinner","_MoreVert","_Typography","_Radio","_RadioGroup","_FormControlLabel","_Alert","_Button","_util","_context","_constant","_toast","_util2","_util3","_node","_confirm","_icons","useBlockletUrlEvaluation","rest","useNodeContext","currentAction","setCurrentAction","setLoading","confirmSetting","setConfirmSetting","useContext","LocaleContext","skipSetup","recommendedUrlLoading","recommendedUrl","inProgress","isInProgress","inService","createHandler","fn","requireUserConfirm","undefined","onConfirm","isRemoved","keepData","removeType","_blocklet$settings","settings","initialized","getLaunchURL","info","serverUrl","URL","searchParams","set","href","sleep","success","errMsg","concat","formatError","Error","onCancel","removeSetting","fromBlockletSource","BlockletSource","custom","gutterBottom","setParams","control","confirmSettings","stop","confirm","cancel","restart","remove","cancelDownload","onAction","_unused3","handler","console","removeAction","isDeletableBlocklet","Remove","deleteBlocklet","cancelDownloadAction","cancelDownloadBlocklet","Start","startBlocklet","hasRunnableComponent","isDownloading","mode","BLOCKLET_MODES","DEVELOPMENT","Stop","stopBlocklet","includes","Restart","restartBlocklet","Reload","reloadBlocklet","separator","onlyInMenu","Config","Group","Log","maxWidth","severity","Link","to","fontSize","isRequired","func","oneOf","bool","_window","_window$location","sm","_ref3","_auditLog","AuditLogProvider","AuditLogs","_reactMarkdownPreview","_Avatar","_Empty","_Box","_Pagination","_Select","_InputLabel","_FormControl","_relativeTime","getUserLink","log","actor","AuditLog","_ref2","_log$env$os","_log$env$browser","shape","fullName","linkTarget","ip","os","version","browser","createdAt","useAuditLogContext","data","categories","setCategory","fetch","textAlign","marginTop","width","category","pageCount","page","count","showFirstButton","showLastButton","_ref4","palette","main","BlockletAvatar","_urlJoin","_Avatar2","_blocklet$meta","ancestors","logoUrl","APP_PREFIX","prefix","deployedFrom","blockletRegistry","getDeployedFrom","logo","formatRegistryLogoPath","bundleDid","join","setFallBackUrl","ev","src","imgEle","onError","alt","responsive","assign","backgroundColor","height","borderRadius","oneOfType","number","string","_toUpper","_Tag","_Link","sourceInfo","underline","ComponentConfiguration","_Edit","_Dialog","_Tabs","_environment","_setting","showDialog","setShowDialog","isRoot","isDynamic","dynamic","setTab","onOpen","tabConfigs","tabConfig","StyledDialog","minHeight","mt","any","DeleteComponent","_Delete","_Tooltip","tip","deleteSetting","setDeleteSetting","deleteComponent","param","componentDisabled","btn","StyledButton","btnWithToolTip","Fragment","ComponentEnvironment","_templateObject2","_core","_TextField","_clickToCopy","_tableIcons","_table","_permission","_taggedTemplateLiteral","dids","onConfigChanged","isConfigEditable","onAddConfig","startsWith","configBlocklet","configs","result","code","onEditConfig","newData","oldData","required","BLOCKLET_CLUSTER_SIZE","errMessage","isValidClusterSize","onDeleteConfig","componentConfigs","sharedConfigObj","getSharedConfigObj","getComponentMissingConfigs","hasBWAConfig","some","onRowAdd","onRowUpdate","onRowDelete","isDeletable","permission","BlockletAdminRoles","isBlockletDev","columns","field","initialEditValue","render","d","fontWeight","editComponent","rowData","_onChange","EditDiv","placeholder","autoFocus","secure","unstyled","wordBreak","_onChange2","icons","options","emptyRowsWhenPaging","actionsColumnIndex","tableLayout","maxBodyHeight","search","localization","header","body","emptyDataSourceMessage","editable","_semver","_DialogContent","_DialogTitle","_DialogActions","_Update","_Add","_Badge","_SettingsOutlined","_InfoOutlined","_Launch","_Grid","_Collapse","_ArrowForward","_ExpandMore","_ChevronRight","_InfoRow","_deletingBlocklets","_didAddress","_tag","_blockletSource","_runtimeInfo","_status","_version","_avatar","_mode","_configuration","_delete","getEngineRows","engine","displayName","ComponentItem","_blocklet$children","depth","onRemove","expand","setExpand","componentInfo","setComponentInfo","deletingComponents","useDeletingBlockletContext","deletingBlocklets","rows","showStatus","canExpand","expandIcon","root","bundleSource","Array","isArray","store","getSourceInfo","componentRows","checkUpgrade","group","formatPerson","author","noRunningMessage","marginBottom","nameWidth","deleteDisabledTip","py","pl","Math","max","xs","cursor","ml","sx","flexGrow","rel","px","overflow","whiteSpace","textOverflow","StyledBadge","badgeContent","borderBottom","borderColor","in","paddingY","row","valueComponent","nameFormatter","top","right","AddComponent","addDeletingDid","removeDeletingDid","matchDeletingDid","updateConfirm","setUpdateConfirm","showUpdateDot","setShowUpdateDot","unshift","getLatestBlockletVersion","then","gt","catch","err","checkForUpdates","registryUrl","list","newVersion","checkComponentsForUpdates","preUpdateInfo","updateId","updateList","forEachChildSync","b","_ref5","updateItem","onConfirmUpdate","upgradeBlocklet","bind","upgradeComponents","rootDid","removeComponent","mr","_ref6","item","container","spacing","element","ComponentSettingInService","ComponentSettingInDaemon","_formTextInput","ComponentSetting","onSubmitTitle","updateComponentTitle","onSubmitMountPoint","updateComponentMountPoint","initialValue","onSubmit","withPermission","BlockletEnvironmentInService","BlockletEnvironmentInDaemon","_get","_omit","_useTheme","_Switch","_schemaForm","_config","BlockletEnvironment","locale","cpuCores","setCpuCores","whoCanAccess","getWhoCanAccess","publicToStore","editingItem","setEditingItem","clusterMode","customType","customDelete","deletable","customColor","customUrl","customLogo","configurableEnvs","BLOCKLET_APP_NAME","BLOCKLET_APP_DESCRIPTION","BLOCKLET_PASSPORT_COLOR","componentType","componentProps","BLOCKLET_APP_URL","BLOCKLET_APP_LOGO","exist","defaultValue","schemaList","onWhoCanAccessChange","updateWhoCanAccess","onPublicToStoreChange","checked","configPublicToStore","iconStyle","verticalAlign","secondary","onSubmitConfig","onDeletableChange","BLOCKLET_DELETABLE","onWalletTypeChange","BLOCKLET_WALLET_TYPE","schema","changeValue","currentItem","select","SelectProps","renderValue","selected","StyledMenuItem","defaultChecked","my","BLOCKLET_APP_SK","down","BlockletDiskInfo","_filesize","diskInfo","renderDiskInfo","dir","reduce","acc","BLOCKLET_APP_DIR","app","BLOCKLET_DATA_DIR","BLOCKLET_LOG_DIR","BLOCKLET_CACHE_DIR","cache","_PlayArrow","_Stop","_Replay","_Autorenew","_Settings","_Receipt","_Group","_default","BlockletLog","_logTerminal","LogTerminalGroup","logId","initialData","BlockletMode","BlockletOverview","_diskInfo","appDid","infoRows","formatToDatetime","installedAt","startedAt","stoppedAt","owner","engineRows","BlockletRuntimeInfo","_prettyMsI18n","_isEmpty","runtimeInfo","memoryUsage","cpuUsage","Number","Date","startAt","formatLocale","pid","BlockletStatus","_dot","colors","colorMap","added","waiting","downloading","downloaded","installing","installed","starting","running","stopping","stopped","upgrading","restarting","corrupted","deleting","statusTxt","downloadExportedSource","genExportedMeta","_pickBy","_cloneDeep","_did","interfaces","child","capabilities","getLaunchAgreementUrl","getNameByTitle","toLowerCase","_jszip","_jsYaml","_fileSaver","_didMotif","getLogo","base64","bufStr","atob","bytes","Uint8Array","charCodeAt","base64ToArrayBuffer","toDataURL","license","holder","Gitignore","GithubAction","folderName","split","pop","readme","zip","folder","file","dump","Promise","resolve","reject","generateAsync","encodeURI","adminPath","routing","encodeURIComponent","metaUrl","BlockletVersionInService","BlockletVersionInDaemon","_notistack","_ArrowUpward","_Toast","Version","setError","newVersionBlocklet","setNewVersionBlocklet","enqueueSnackbar","useSnackbar","autoHideDuration","setting","ClickToCopy","_ClickToCopy","copiedTip","ConfirmDialog","_DialogContentText","_useMediaQuery","_mobileWidth","showCancel","initialParams","setOpen","changeLocale","onCallback","isBreakpointsDownSm","fullScreen","__disableConfirm","AuditLogContext","AuditLogConsumer","auditLogs","setAuditLogs","total","pageSize","setPaging","fetchLogs","silent","getAuditLogs","createContext","Consumer","DeletingBlockletContext","_xorWith","setDeletingBlocklets","deletingBlockletsDid","useRef","reDeleteings","existDids","inDeleting","NodeConsumer","inDaemon","get","_Session","SessionContext","TeamConsumer","useTeamContext","_Address","WrappedDidAddress","external","avatarProps","Content","prepend","defaultSize","FormTextInput","_CircularProgress","_EditIcon","_Close","_Done","_required","_formWrapper","editing","setEditing","setDefaultValue","setValue","handleSubmit","onInputChange","onKeyDown","_styles","useTheme","_useInterval","currentTime","setCurrentTime","formatTime","LogTerminal","_Terminal","_clock","logTypeLabels","stdout","stderr","isMobile","currentType","setCurrentType","logFiles","setLogFiles","terminalRefs","terminal","write","level","p","LogTerminalGroupRoot","ref","logFile","visibility","arrayOf","forwardRef","LogTerminalRoot","position","boxSizing","background","foreground","PassportTag","onDelete","Tag","span","Permission","Component","permissionName","_session","can","userPermissions","RelativeTime","prettyOption","compact","valTime","getTime","now","time","placement","enterTouchDelay","_Check","_Clear","_SaveAlt","_Filter","_FirstPage","_LastPage","_ChevronLeft","_Search","_ArrowDropDown","_Remove","_ViewColumn","Add","Check","Delete","Edit","Clear","DetailPanel","Filter","FirstPage","LastPage","NextPage","PreviousPage","Search","ResetSearch","SortArrow","Export","ThirdStateCheck","ViewColumn","Wrapped","MemberActions","_ForbidLoginIcon","_AllowLoginIcon","_team","_actions","_issuePassport","_toggleUserApproval","onIssuePassport","setEnablePassportIssuance","o","approved","ownerDid","onSuccess","MemberList","_classnames","_Checkbox","_Loop","_PersonIcon","_ExternalIssuerIcon","_Datatable","nodeInterop","_getRequireWildcardCache","has","newObj","hasPropertyDescriptor","hasOwnProperty","desc","_interopRequireWildcard","_RelativeTime","_inviteMember","_transferNode","_member","_invitations","WeakMap","cacheBabelInterop","cacheNodeInterop","ROLE_ALL","ROLE_NONE","getCount","counts","SimpleInfo","avatar","isFromExternal","showInviteMember","setShowInviteMember","showTransferMember","setShowTransferMember","showInviting","setShowInviting","memberDialog","setMemberDialog","users","setUsers","rowCount","setRowCount","userCounts","setUserCounts","durableKey","tableDurableData","getDurableData","searchText","hideBlocked","rowsPerPage","setSearch","sideList","num","z","issuer","parseAvatar","EVENTS","USER_UPDATED","isInvitationEnabled","customBodyRenderLite","rawIndex","customBodyRender","copyable","align","verticalKeyAlign","initTab","customButtons","flexShrink","edge","tableOptions","download","print","expandableRowsOnClick","onRowClick","dataIndex","searchDebounceTime","verticalKeyWidth","durable","durableKeys","userDid","Invitations","delConfirm","setDelConfirm","deleteInvitation","inviteId","getLink","column","getInviteLink","widtn","_d$inviter","rowIndex","inviter","link","InviteMember","activeStep","setActiveStep","inviteInfo","setInviteInfo","setRole","remark","setRemark","onCreate","trimRemark","createMemberInvitation","step","onKeyPress","r","autoComplete","Bold","expireDate","showCloseButton","IssuePassport","showOwnerPassport","createPassportIssuance","disableEscapeKeyDown","Member","_templateObject3","_passportIssuances","_passports","issuances","setIssuances","setUser","getData","doBatchQuery","getUser","getPassportIssuances","email","updatedAt","onRefresh","BlockButton","Center","mx","PassportIssuances","_passportTag","deleteIssuance","deletePassportIssuance","sessionId","getIssuePassportLink","Issuance","_upperFirst","_ErrorOutline","_RevokeIcon","_createPassportSvg","_searchInput","_listHeader","ConfirmDescription","refreshTeam","toggleConfirm","setToggleConfirm","showIssueDialog","setShowIssueDialog","revoked","PASSPORT_STATUS","REVOKED","togglePassportStatus","method","passportId","revokeInfo","revokable","filteredPassports","dangerouslySetInnerHTML","__html","issuerDid","ownerName","ownerAvatarUrl","preferredColor","ToggleUserApproval","isSelf","sessionUser","_onCancel","nodeInfo","show","setShow","updateUserApproval","approveConfirm","nodeOwner","isNodeOwner","TransferMember","_useAsync","_Connect","sessionAPI","openTransferNFTAuth","setOpenTransferNFTAuth","needTransferNFT","delegationState","getDelegationState","state","delegated","createTransferInvitation","tmpInviteInfo","steps","handleCancelTransferNFT","checkFn","checkTimeout","webWalletUrl","getWebWalletUrl","extraParams","targetDID","messages","scan","popup","USER_AVATAR_URL_PREFIX","PassportDetailInService","PassportDetailInDaemon","_DeleteIcon","_mutateRole","PassportDetail","roleName","binds","setBinds","updateForm","setUpdateForm","isProtected","isProtectedRole","deletePassport","deleteRole","team","getPermissionsByRole","permissionList","bindList","onBind","grantNames","updatePermissionsForRole","readPermissionsOnly","toolbar","fill","PassportList","_SplitButton","_LockIcon","_detail","_trustedIssuers","showCreate","setShowCreate","showTrustedIssuers","setShowTrustedIssuers","toggleShowIssue","configPassportIssuance","enable","filteredRoles","menuButtonProps","menu","Item","isDataUrl","MutateRole","_md","setTitle","setDescription","_title","createRole","updateRole","paddingTop","helperText","multiline","TrustedIssuer","_ArrowBack","LongArrow","viewBox","xmlns","canSave","mappings","setIssuerDid","setMappings","editIndex","findIndex","configTrustedPassports","trustedList","ROLES","GUEST","flexBasis","splice","TrustedIssuersInService","TrustedIssuersInDaemon","_trustedIssuer","TrustedIssuers","trustedIssuer","setTrustedIssuer","deleteTrustedIssuer","filteredIssuers","showDidLogo","InputProps","startAdornment"],"sourceRoot":""}