@abtnode/webapp 1.8.14 → 1.8.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- {"version":3,"file":"static/js/4897.9f296b57.chunk.js","mappings":"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","sources":["components/blocklet/install.js","components/blocklet/list.js","components/blocklet/purchase/common.js","components/blocklet/purchase/launch-purchase.js","components/blocklet/purchase/server-purchase.js","components/blocklet/purchase/component-purchase.js","components/blocklet/util.js","components/registry/add.js","components/registry/delete.js","components/registry/switch.js","hooks/blocklet-purchase.js","libs/api.js","../../../blocklet/meta/lib/did.js"],"sourcesContent":["/* eslint-disable react/jsx-one-expression-per-line */\nimport { useState, useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useNavigate } from 'react-router-dom';\nimport { isFreeBlocklet } from '@blocklet/meta/lib/util';\nimport { useSnackbar } from 'notistack';\nimport { ActionButton } from '@arcblock/ux/lib/Blocklet';\nimport useLocalStorage from 'react-use/lib/useLocalStorage';\n\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport Typography from '@mui/material/Typography';\nimport Button from '@arcblock/ux/lib/Button';\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\n\nimport { gt } from 'semver';\n\nimport { useBlockletContext } from '../../contexts/blocklets';\nimport { isInstalling, formatError } from '../../libs/util';\nimport useBlockletPurchase from '../../hooks/blocklet-purchase';\nimport Permission from '../permission';\nimport { LaunchPurchaseDialog } from './purchase';\nimport { useNodeContext } from '../../contexts/node';\nimport { getLaunchAgreementUrl } from './util';\n\nexport default function InstallOrUpgrade(props) {\n const { showPay, meta, lastVersion, buttonText, registryUrl, handleButtonText, handleButtonClick, ...rest } = props;\n const { enqueueSnackbar } = useSnackbar();\n const { t } = useLocaleContext();\n const navigate = useNavigate();\n const { info } = useNodeContext();\n\n const { api, data: installedBlocklets } = useBlockletContext();\n const state = installedBlocklets.find(d => d.meta.did === meta.did) || {};\n\n const installed = useMemo(() => !!state.status, [state.status]);\n const installedVersion = useMemo(() => (installed ? state.meta?.version : null), [installed, state.meta]);\n const requirePurchase = isFreeBlocklet(meta) === false;\n\n const [loading, setLoading] = useState(false);\n const { hasPurchased } = useBlockletPurchase(meta.did);\n const [showPurchaseDialog, setShowPurchaseDialog] = useState(false);\n const [instantLaunch] = useLocalStorage('instant-blocklet-install', false);\n\n const loadingText = useMemo(() => {\n if (loading) {\n if (installed) {\n return t('blocklet.status.upgrading');\n }\n if (requirePurchase) {\n return t('blocklet.status.purchasing');\n }\n return t('blocklet.status.waiting');\n }\n if (isInstalling(state.status)) return t(`common.${state.status}`);\n return '';\n }, [loading, state.status, installed, t, requirePurchase]);\n\n const needUpgrade = useMemo(() => {\n if (!lastVersion || !installedVersion) {\n return false;\n }\n\n if (lastVersion) {\n if (gt(lastVersion, installedVersion)) {\n return true;\n }\n }\n\n return false;\n }, [lastVersion, installedVersion]);\n\n const btnProps = { ...props, state };\n\n const btnTxt = useMemo(() => {\n // use handleButtonText if provided\n if (handleButtonText && typeof handleButtonText === 'function') return handleButtonText(btnProps);\n if (needUpgrade) return buttonText.upgrade;\n if (installed) return buttonText.open;\n if (requirePurchase) return buttonText.purchase;\n return buttonText.launch;\n }, [installed, needUpgrade, requirePurchase, buttonText, handleButtonText]); // eslint-disable-line\n\n // only installed without upgrade show open button\n const showInstallBtn = useMemo(() => {\n // if provided handleButtonClick, always show install button\n if (handleButtonClick && typeof handleButtonClick === 'function') {\n return true;\n }\n return !(installed && !needUpgrade);\n }, [installed, needUpgrade, handleButtonClick]);\n\n const onAction = async e => {\n e.preventDefault();\n e.stopPropagation();\n\n try {\n setLoading(true);\n\n // use handleButtonClick if provided\n if (handleButtonClick && typeof handleButtonClick === 'function') {\n handleButtonClick({ ...props, state });\n return;\n }\n\n // The purchase dialog should only show on install\n if (!installed && requirePurchase) {\n setShowPurchaseDialog(true);\n return;\n }\n\n if (instantLaunch) {\n const fn = !installed ? 'installBlocklet' : 'upgradeBlocklet';\n await api[fn]({ input: { did: meta.did, registryUrl } });\n return;\n }\n\n if (!installed && !requirePurchase) {\n const url = getLaunchAgreementUrl(meta, info);\n window.location.href = url;\n return;\n }\n if (installed) {\n await api.upgradeBlocklet({ input: { did: meta.did, registryUrl } });\n }\n } catch (err) {\n enqueueSnackbar(formatError(err), { autoHideDuration: 5000, variant: 'error' });\n console.error('Blocklet installed failed', err);\n } finally {\n setLoading(false);\n }\n };\n\n // eslint-disable-next-line react/no-unstable-nested-components\n function InstallButton({ disabled }) {\n return (\n <Button\n key={meta.did}\n onClick={onAction}\n size=\"small\"\n disabled={Boolean(loadingText || disabled)}\n variant=\"outlined\"\n color=\"primary\"\n data-cy=\"install-blocklet\"\n {...rest}>\n {loadingText ? (\n <>\n <Spinner size={[16, 10]} style={{ marginRight: 3 }} />\n {loadingText}\n </>\n ) : (\n btnTxt\n )}\n </Button>\n );\n }\n\n InstallButton.propTypes = {\n disabled: PropTypes.bool,\n };\n\n InstallButton.defaultProps = {\n disabled: false,\n };\n const getTab = d => {\n if (d) {\n return (d.configs || []).some(x => x.required && !x.value) ? 'configuration' : 'overview';\n }\n\n return 'overview';\n };\n\n const onGoDetail = e => {\n e.preventDefault();\n e.stopPropagation();\n navigate(`/blocklets/${meta.did}/${getTab(state)}`);\n };\n\n const onCancelPurchase = () => {\n setLoading(false);\n setShowPurchaseDialog(false);\n };\n\n return (\n <>\n <ActionButton>\n {showInstallBtn ? (\n <Permission permission=\"mutate_blocklet\">\n {hasPermission => <InstallButton disabled={!hasPermission} />}\n </Permission>\n ) : (\n <Button\n className=\"action-button\"\n variant=\"outlined\"\n color=\"primary\"\n size=\"small\"\n disabled={Boolean(loadingText)}\n data-cy=\"open-blocklet\"\n onClick={onGoDetail}>\n {loadingText ? (\n <>\n <Spinner size={[16, 10]} style={{ marginRight: 3 }} />\n {loadingText}\n </>\n ) : (\n btnTxt\n )}\n </Button>\n )}\n </ActionButton>\n\n {installed && requirePurchase && showPay && (\n <Typography component=\"small\" style={{ fontSize: 12, color: '#666', marginLeft: 4 }}>\n {t('blocklet.status.purchased')}\n </Typography>\n )}\n {((hasPurchased && !installed) || showPurchaseDialog) && (\n <LaunchPurchaseDialog method=\"launch\" meta={meta} mode=\"both\" onCancel={onCancelPurchase} />\n )}\n </>\n );\n}\n\nInstallOrUpgrade.propTypes = {\n meta: PropTypes.object.isRequired,\n lastVersion: PropTypes.string,\n buttonText: PropTypes.shape({\n purchase: PropTypes.string.isRequired,\n open: PropTypes.string.isRequired,\n launch: PropTypes.string.isRequired,\n upgrade: PropTypes.string.isRequired,\n }).isRequired,\n showPay: PropTypes.bool,\n registryUrl: PropTypes.string.isRequired,\n handleButtonText: PropTypes.func,\n handleButtonClick: PropTypes.func,\n};\n\nInstallOrUpgrade.defaultProps = {\n lastVersion: '',\n showPay: true,\n handleButtonText: () => null,\n handleButtonClick: () => null,\n};\n","/* eslint-disable react/jsx-wrap-multilines */\nimport { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport joinURL from 'url-join';\nimport Link from '@mui/material/Link';\nimport { ErrorBoundary } from 'react-error-boundary';\nimport { ErrorFallback } from '@arcblock/ux/lib/ErrorBoundary';\nimport InnerList from '@blocklet/list';\n\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport Blocklet from '@arcblock/ux/lib/Blocklet';\n\nimport { formatRegistryLogoPath } from '../../libs/util';\nimport { useNodeContext } from '../../contexts/node';\nimport InstallOrUpgrade from './install';\nimport { getLaunchURL } from './util';\n\nconst getStoreDetail = (blocklet, info, endpoint) => {\n const { serverUrl } = getLaunchURL(blocklet, info);\n return joinURL(endpoint, `/blocklets/${blocklet.did}/?server-url=${serverUrl}`);\n};\n\nfunction BlockletItem({ blocklet, blocklets, handleButtonClick, handleButtonText, endpoint }) {\n const { t } = useLocaleContext();\n const node = useNodeContext();\n let logoUrl = joinURL(node.prefix, 'blocklet.png');\n\n const blockletRegistry = endpoint;\n\n if (blockletRegistry.startsWith('http') && blocklet.logo) {\n logoUrl = joinURL(blockletRegistry, formatRegistryLogoPath(blocklet.did, blocklet.logo));\n } else {\n const prefix = window.env.apiPrefix || '/';\n let apiPrefix = prefix.replace(/^\\/+/, '').replace(/\\/+$/, '');\n if (apiPrefix) {\n apiPrefix = `/${apiPrefix}`;\n }\n logoUrl = joinURL(apiPrefix, `/blocklet/logo/${blocklet.did}`);\n }\n\n const versions = blocklets.reduce((totalVal, { did, version }) => {\n totalVal[did] = version;\n return totalVal;\n }, {});\n\n const onClickLink = e => {\n if (!e.currentTarget.contains(e.target)) {\n e.preventDefault();\n return false;\n }\n return true;\n };\n\n const buttonProps = {\n meta: blocklet,\n lastVersion: versions[blocklet.did],\n buttonText: {\n purchase: t('common.purchase'),\n open: t('common.open'),\n launch: t('common.launch'),\n upgrade: t('common.upgrade'),\n },\n registryUrl: blockletRegistry,\n // handle the props of button\n handleButtonClick: handleButtonClick\n ? rest => {\n return handleButtonClick({\n ...rest,\n blocklets,\n });\n }\n : false,\n handleButtonText,\n };\n\n return (\n <Link\n href={getStoreDetail(blocklet, node.info, endpoint)}\n style={{ color: 'initial', textDecoration: 'none' }}\n onClick={onClickLink}\n target=\"_blank\">\n <Blocklet\n title={blocklet.title || blocklet.name}\n description={blocklet.description}\n did={blocklet.did}\n cover={blocklet.logo ? logoUrl : ''}\n version={blocklet.version}\n button={\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <InstallOrUpgrade {...buttonProps} />\n </div>\n }\n />\n </Link>\n );\n}\nBlockletItem.propTypes = {\n blocklet: PropTypes.object.isRequired,\n blocklets: PropTypes.array,\n handleButtonClick: PropTypes.func,\n handleButtonText: PropTypes.func,\n endpoint: PropTypes.string,\n};\n\nBlockletItem.defaultProps = {\n handleButtonClick: null,\n handleButtonText: null,\n endpoint: '',\n blocklets: [],\n};\n\nexport default function BlockletList({\n handleButtonClick,\n handleSearchSelect,\n handleButtonText,\n handleBlockletRegistry,\n handleBlockletRender,\n extraFilter,\n ...rest\n}) {\n const { info } = useNodeContext();\n const { locale } = useLocaleContext();\n const [filters, setFilters] = useState({});\n const handleChange = changeData => {\n setFilters(changeData);\n };\n\n const onSearchSelect = ({ blocklet, storeUrl, detailUrl }) => {\n if (handleButtonClick) {\n handleButtonClick({ meta: blocklet, registryUrl: storeUrl });\n } else if (handleSearchSelect) {\n handleSearchSelect({ blocklet, storeUrl, detailUrl });\n }\n };\n const endpoint = handleBlockletRegistry || info?.blockletRegistry;\n\n useEffect(() => {\n setFilters({});\n }, [endpoint]);\n\n return (\n <ErrorBoundary FallbackComponent={ErrorFallback} resetKeys={[endpoint]}>\n <div {...rest}>\n <InnerList\n blockletRender={blockletRenderProps => {\n const defaultRender = BlockletItem({\n ...blockletRenderProps,\n handleButtonClick,\n handleButtonText,\n endpoint,\n });\n\n // use handleBlockletRender if provided\n if (handleBlockletRender && typeof handleBlockletRender === 'function') {\n return handleBlockletRender({\n ...blockletRenderProps,\n defaultRender,\n });\n }\n\n return defaultRender;\n }}\n // use handleBlockletRegistry if provided\n endpoint={endpoint}\n locale={locale}\n onFilterChange={handleChange}\n onSearchSelect={onSearchSelect}\n filters={filters}\n extraFilter={extraFilter}\n />\n </div>\n </ErrorBoundary>\n );\n}\n\nBlockletList.propTypes = {\n blocklets: PropTypes.array,\n handleButtonClick: PropTypes.func,\n handleSearchSelect: PropTypes.func,\n handleButtonText: PropTypes.func,\n handleBlockletRegistry: PropTypes.string,\n handleBlockletRender: PropTypes.func,\n extraFilter: PropTypes.func,\n};\n\nBlockletList.defaultProps = {\n handleButtonClick: null,\n handleSearchSelect: null,\n handleButtonText: null,\n handleBlockletRegistry: '',\n handleBlockletRender: null,\n extraFilter: undefined,\n blocklets: [],\n};\n","import { makeStyles } from '@mui/styles';\nimport PropTypes from 'prop-types';\nimport List from '@mui/material/List';\nimport ListItem from '@mui/material/ListItem';\nimport ListItemText from '@mui/material/ListItemText';\nimport ListItemIcon from '@mui/material/ListItemIcon';\nimport IconPurchase from '@mui/icons-material/ShoppingCart';\nimport IconVerify from '@mui/icons-material/VerifiedUser';\nimport Button from '@arcblock/ux/lib/Button';\nimport colors from '@arcblock/ux/lib/Colors';\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\n\nconst commonProps = {\n meta: PropTypes.object.isRequired,\n onCancel: PropTypes.func.isRequired,\n};\nconst useStyles = makeStyles(() => ({\n dialogAuth: {\n padding: '0 0 24px !important',\n '& .auth-title': {\n textAlign: 'center !important',\n marginBottom: '4px !important',\n },\n '& .auth-tip--scan': {\n textAlign: 'center !important',\n },\n },\n iconRoot: {\n minWidth: 48,\n },\n}));\nfunction CustomSelect({ action, onSelect, onNext }) {\n const classes = useStyles();\n const { t } = useLocaleContext();\n const options = [\n {\n action: 'purchase',\n title: t('store.purchase.purchase.title'),\n description: t('store.purchase.purchase.description'),\n },\n {\n action: 'verify',\n title: t('store.purchase.verify.title'),\n description: t('store.purchase.verify.description'),\n },\n ];\n return (\n <>\n <List className={classes.tabPanel}>\n {options.map(x => (\n <ListItem button key={x.action} selected={action === x.action} onClick={() => onSelect(x.action)}>\n <ListItemIcon className={classes.iconRoot}>\n {x.action === 'purchase' ? (\n <IconPurchase style={{ color: action === 'purchase' ? colors.primary.main : '#AAA', fontSize: 32 }} />\n ) : (\n <IconVerify style={{ color: action === 'verify' ? colors.primary.main : '#AAA', fontSize: 32 }} />\n )}\n </ListItemIcon>\n <ListItemText primary={x.title} secondary={x.description} />\n </ListItem>\n ))}\n </List>\n {onNext && (\n <Button\n fullWidth\n disabled={!action}\n variant=\"contained\"\n color=\"primary\"\n style={{ marginTop: 16 }}\n onClick={onNext}>\n {t('common.next')}\n </Button>\n )}\n </>\n );\n}\nCustomSelect.propTypes = {\n action: PropTypes.oneOf(['both', 'purchase', 'verify']).isRequired,\n onSelect: PropTypes.func.isRequired,\n onNext: PropTypes.func.isRequired,\n};\nexport { useStyles, commonProps, CustomSelect };\n","/* eslint-disable react/jsx-one-expression-per-line */\nimport { useState } from 'react';\nimport joinURL from 'url-join';\nimport axios from 'axios';\nimport { getDisplayName } from '@blocklet/meta/lib/util';\nimport Dialog from '@arcblock/ux/lib/Dialog';\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport DidConnect from '@arcblock/did-connect/lib/Connect';\nimport Typography from '@mui/material/Typography';\nimport PropTypes from 'prop-types';\n\nimport { useNodeContext } from '../../../contexts/node';\nimport { getWebWalletUrl } from '../../../libs/util';\nimport { getLaunchAgreementUrl } from '../util';\nimport { commonProps, CustomSelect } from './common';\n\nfunction LaunchPurchaseDialog({ meta, onCancel, handlePaySuccess: handlePaySuccessFn }) {\n const { t } = useLocaleContext();\n const { info } = useNodeContext();\n\n const [action, setAction] = useState('both');\n const [step, setStep] = useState(1);\n const webWalletUrl = getWebWalletUrl(info);\n const registryUrl = info.blockletRegistry;\n const launchAddress = getLaunchAgreementUrl(meta, info);\n\n const onSelect = async act => {\n if (act === action) {\n return;\n }\n\n setAction(act);\n };\n\n const onNext = async () => {\n if (!action) {\n return;\n }\n setStep(2);\n if (action === 'verify') {\n window.location.href = launchAddress;\n }\n };\n\n const handleClose = (e, reason) => {\n if (reason === 'backdropClick') return;\n onCancel();\n };\n\n const handlePaySuccess = () => {\n handlePaySuccessFn(launchAddress);\n };\n\n const name = getDisplayName({ meta });\n\n if (action === 'purchase' && step === 2) {\n return (\n <DidConnect\n open\n popup\n baseUrl={registryUrl}\n action=\"acquire-asset\"\n checkFn={axios.create({ baseURL: joinURL(registryUrl, '/store') }).get}\n onSuccess={handlePaySuccess}\n onClose={onCancel}\n checkTimeout={60 * 5000}\n extraParams={{ factory: meta.nftFactory }}\n webWalletUrl={webWalletUrl}\n disableClose\n saveConnect={false}\n showDownload={false}\n messages={{\n title: t('store.purchase.auth.title', { name }),\n scan: t('store.purchase.auth.scan'),\n confirm: t('store.purchase.auth.confirm'),\n success: (\n <>\n <Typography gutterBottom>{t('store.purchase.auth.success')}</Typography>\n <Typography variant=\"subtitle2\"> {t('store.purchase.autoLaunch', { name })}</Typography>\n </>\n ),\n }}\n />\n );\n }\n\n const Wrapper = Dialog;\n\n return (\n <Wrapper title={t('store.purchase.title', { name })} disableEscapeKeyDown open fullWidth onClose={handleClose}>\n <div style={{ marginBottom: 16 }}>\n <CustomSelect action={action} onNext={onNext} onSelect={onSelect} />\n </div>\n </Wrapper>\n );\n}\nLaunchPurchaseDialog.propTypes = {\n ...commonProps,\n handlePaySuccess: PropTypes.func,\n};\n\nLaunchPurchaseDialog.defaultProps = {\n handlePaySuccess: url => {\n setTimeout(() => {\n window.location.href = url;\n }, 1000);\n },\n};\n\nexport default LaunchPurchaseDialog;\n","/* eslint-disable react/jsx-one-expression-per-line */\nimport { useState } from 'react';\nimport joinURL from 'url-join';\nimport PropTypes from 'prop-types';\n\nimport Dialog from '@arcblock/ux/lib/Dialog';\nimport Typography from '@mui/material/Typography';\nimport Spinner from '@arcblock/ux/lib/Spinner';\n\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport DidConnect from '@arcblock/did-connect/lib/Connect';\nimport { getDisplayName } from '@blocklet/meta/lib/util';\n\nimport { useNodeContext } from '../../../contexts/node';\nimport { getWebWalletUrl } from '../../../libs/util';\nimport { useSessionContext } from '../../../contexts/session';\nimport useBlockletPurchase from '../../../hooks/blocklet-purchase';\nimport { useStyles, commonProps, CustomSelect } from './common';\n\nfunction ServerPurchaseDialog({ meta, onCancel, mode, installOpts }) {\n const { t, locale } = useLocaleContext();\n const { info, api: gql } = useNodeContext();\n const { api } = useSessionContext();\n const classes = useStyles();\n const [action, setAction] = useState(mode !== 'both' ? mode : '');\n const [step, setStep] = useState(mode !== 'both' ? 2 : 1);\n const { session, setSession, hasCompleted, doRedirect } = useBlockletPurchase(meta.did);\n\n const webWalletUrl = getWebWalletUrl(info);\n const prefix = window.env && window.env.apiPrefix ? window.env.apiPrefix : '/';\n\n const onSelect = async act => {\n if (act === action) {\n return;\n }\n\n setAction(act);\n };\n\n const onNext = async () => {\n if (!action) {\n return;\n }\n if (step === 2) {\n return;\n }\n\n // Start a new session and persist session id to local storage\n let payload;\n if (installOpts && installOpts.type === 'component') {\n payload = { ...installOpts, blockletDid: meta.did, action };\n } else {\n payload = { registryUrl: info.blockletRegistry, blockletDid: meta.did, action };\n }\n\n const { session: initial } = await gql.startSession({ input: { data: JSON.stringify(payload) } });\n setSession(initial);\n setStep(2);\n\n if (action === 'purchase') {\n setTimeout(async () => {\n const cb = new URL(window.location.href);\n cb.searchParams.delete('assetDid');\n cb.searchParams.set('sid', initial.id);\n cb.searchParams.set('locale', locale);\n cb.searchParams.set('did', meta.did);\n const callback = encodeURIComponent(cb.href);\n\n const nw = new URL(window.location.href);\n nw.pathname = joinURL(prefix, '/api/did/verify-purchase/token');\n nw.searchParams.set('sid', initial.id);\n nw.searchParams.set('locale', locale);\n nw.searchParams.set('autoConnect', 'false');\n const { data } = await api.get(nw.href);\n const nextWorkflow = encodeURIComponent(data.url);\n\n window.location.href = joinURL(\n info.blockletRegistry,\n `/store/purchase/${meta.nftFactory}?cb=${callback}&nw=${nextWorkflow}`\n );\n }, 100);\n }\n };\n\n const onClose = (e, reason) => {\n if (reason === 'backdropClick') return;\n doRedirect();\n onCancel();\n setStep(1);\n };\n\n const onVerifySuccess = () => {\n setTimeout(onCancel, 2000);\n };\n\n const getMessage = () => {\n if (session) {\n if (session.status === 'confirmed') {\n return t('store.purchase.confirmed');\n }\n if (session.status === 'declined') {\n return t('store.purchase.declined');\n }\n if (session.status === 'error') {\n return session.message;\n }\n }\n\n return t('store.purchase.waiting');\n };\n\n const name = getDisplayName({ meta });\n\n if (step === 2 && action === 'verify' && session) {\n return (\n <DidConnect\n popup\n open\n className={classes.dialogAuth}\n action=\"verify-purchase\"\n checkFn={api.get}\n checkTimeout={10 * 60 * 1000}\n socketUrl={api.socketUrl}\n webWalletUrl={webWalletUrl}\n extraParams={{ locale, sid: session.id }}\n onSuccess={onVerifySuccess}\n onClose={onClose}\n showDownload={false}\n saveConnect={false}\n locale={locale}\n messages={{\n title: t('store.purchase.verify.auth.title', { name }),\n scan: t('store.purchase.verify.auth.scan'),\n confirm: t('store.purchase.verify.auth.confirm'),\n success: t('store.purchase.verify.auth.success'),\n }}\n />\n );\n }\n\n return (\n <Dialog title={t('store.purchase.title', { name })} disableEscapeKeyDown open fullWidth onClose={onClose}>\n {step === 1 && (\n <div style={{ marginBottom: 16 }}>\n <CustomSelect action={action} onNext={onNext} onSelect={onSelect} />\n </div>\n )}\n {step === 2 && action === 'purchase' && (\n <div style={{ textAlign: 'center' }}>\n {!hasCompleted && <Spinner />}\n <Typography component=\"p\">{getMessage()}</Typography>\n </div>\n )}\n </Dialog>\n );\n}\nconst installOptsProps = {\n // blocklet: install blocklet. component: install blocklet component\n type: 'blocklet',\n\n // component install params\n rootDid: '',\n mountPoint: '',\n url: '',\n name: '',\n did: '',\n title: '',\n};\nServerPurchaseDialog.propTypes = {\n ...commonProps,\n mode: PropTypes.oneOf(['both', 'purchase']).isRequired,\n installOpts: PropTypes.object,\n};\nServerPurchaseDialog.defaultProps = {\n installOpts: installOptsProps,\n};\n\nexport default ServerPurchaseDialog;\n","/* eslint-disable react/jsx-one-expression-per-line */\nimport { useState, useEffect, useImperativeHandle, forwardRef } from 'react';\nimport joinURL from 'url-join';\n\nimport { getDisplayName } from '@blocklet/meta/lib/util';\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport DidConnect from '@arcblock/did-connect/lib/Connect';\nimport PropTypes from 'prop-types';\nimport Toast from '@abtnode/ux/lib/toast';\nimport pWaitFor from 'p-wait-for';\nimport { useNodeContext } from '../../../contexts/node';\nimport { getWebWalletUrl, extractStatusUrlFromNextWorkflow } from '../../../libs/util';\n\nimport { commonProps, CustomSelect } from './common';\n\nimport { api as $api, axios } from '../../../libs/api';\n\nexport function ComponentPurchase({ meta, onCancel, mode, handlePaySuccess }) {\n const { t, locale } = useLocaleContext();\n const { info } = useNodeContext();\n const webWalletUrl = getWebWalletUrl(info);\n const [nw, setNw] = useState(null);\n\n const baseUrl = new URL(meta?.registryUrl).origin;\n\n const name = getDisplayName({ meta });\n\n const handleConnectSuccess = async (result, decrypt) => {\n const success = async ({ downloadToken }) => {\n handlePaySuccess({ downloadToken });\n };\n\n const failure = async errorMessage => {\n Toast.error(errorMessage);\n onCancel(errorMessage);\n };\n\n async function handleConnectSessionStatus(url) {\n return pWaitFor(\n () => {\n return $api.get(url).then(async ({ data }) => {\n const downloadToken = data?.downloadToken;\n if (data.status === 'succeed') {\n if (downloadToken) {\n await success({\n downloadToken,\n });\n } else {\n await failure(t('blocklet.component.missDownloadTokenTip'));\n return true;\n }\n\n return true;\n }\n\n if (data.status === 'error') {\n console.error('vc error: ', data);\n await failure(data?.error);\n return true;\n }\n return false;\n });\n },\n {\n interval: 1000,\n }\n );\n }\n\n if (mode === 'purchase' && nw) {\n const { statusUrl } = extractStatusUrlFromNextWorkflow(nw);\n // poll status url, to get download token\n await handleConnectSessionStatus(statusUrl);\n } else {\n await success({\n downloadToken: result.downloadToken && decrypt(result.downloadToken),\n });\n }\n };\n\n useEffect(() => {\n // only purchase mode has nw\n if (mode === 'purchase') {\n const nextWorkflowUrl = new URL(baseUrl);\n nextWorkflowUrl.pathname = '/api/did/verify-purchase-blocklet/token';\n nextWorkflowUrl.searchParams.set('serverDid', info.did);\n nextWorkflowUrl.searchParams.set('blockletDid', meta?.did);\n\n try {\n $api.get(nextWorkflowUrl.href).then(({ data }) => {\n const url = `${data.url}`;\n setNw(url);\n });\n } catch (error) {\n console.error('get next workflow url error: ', error);\n }\n }\n return () => {\n setNw(null);\n };\n }, [mode]); // eslint-disable-line\n\n // If nw does not exist, then connect should not be render\n if (mode === 'purchase' && !nw) {\n return '';\n }\n\n const modePropsMap = {\n verify: {\n action: 'verify-purchase-blocklet',\n checkFn: axios.create({ baseURL: baseUrl }).get,\n extraParams: {\n serverDid: info.did,\n blockletDid: meta?.did,\n },\n messages: {\n title: t('store.purchase.verify.auth.title', { name }),\n scan: t('store.purchase.verify.auth.scan'),\n confirm: t('store.purchase.verify.auth.confirm'),\n success: t('store.purchase.verify.auth.success'),\n },\n },\n purchase: {\n action: 'acquire-asset',\n checkFn: axios.create({ baseURL: joinURL(baseUrl, '/store') }).get,\n extraParams: {\n factory: meta.nftFactory,\n nw,\n },\n messages: {\n title: t('store.purchase.auth.title', { name }),\n scan: t('store.purchase.auth.scan'),\n confirm: t('store.purchase.auth.confirm'),\n success: (\n <>\n <p>{t('store.purchase.auth.success')}</p>\n <p>{t('blocklet.component.purchaseComponentSecondCheckTip')}</p>\n </>\n ),\n },\n },\n };\n\n return (\n <DidConnect\n open\n locale={locale}\n popup={false}\n saveConnect={false}\n className=\"connect\"\n baseUrl={baseUrl}\n onSuccess={handleConnectSuccess}\n cancelWhenScanned={onCancel}\n onClose={onCancel}\n checkTimeout={60 * 5000}\n webWalletUrl={webWalletUrl}\n disableClose\n showDownload={false}\n {...modePropsMap[mode]}\n />\n );\n}\n\nComponentPurchase.propTypes = {\n ...commonProps,\n handlePaySuccess: PropTypes.func,\n mode: PropTypes.oneOf(['verify', 'purchase']).isRequired,\n};\n\nComponentPurchase.defaultProps = {\n handlePaySuccess: () => {},\n};\n\nconst ComponentPurchaseSelect = forwardRef(({ mode, ...rest }, ref) => {\n const [action, setAction] = useState(mode !== 'both' ? mode : 'verify');\n const [step, setStep] = useState(mode !== 'both' ? 2 : 1);\n\n const onSelect = async act => {\n if (act === action) {\n return;\n }\n\n setAction(act);\n };\n\n const onNext = async () => {\n if (!action) {\n return;\n }\n if (step === 2) {\n return;\n }\n setStep(2);\n };\n\n // expose the func and activeStep\n useImperativeHandle(ref, () => ({\n onNext,\n getCurrentStep: () => {\n return step;\n },\n }));\n\n if (step === 1) {\n return (\n <div\n style={{\n maxWidth: 520,\n }}>\n <CustomSelect action={action} onNext={null} onSelect={onSelect} />\n </div>\n );\n }\n\n return <ComponentPurchase {...rest} mode={action} />;\n});\n\nComponentPurchaseSelect.propTypes = {\n mode: PropTypes.oneOf(['both', 'verify', 'purchase']).isRequired,\n ref: PropTypes.any,\n};\n\nComponentPurchaseSelect.defaultProps = {\n ref: {},\n};\n\nexport default ComponentPurchaseSelect;\n","import cloneDeep from 'lodash/cloneDeep';\nimport pickBy from 'lodash/pickBy';\nimport JSZip from 'jszip';\nimport yaml from 'js-yaml';\nimport saveAs from 'file-saver';\nimport joinURL from 'url-join';\n\nimport toBlockletDid from '@blocklet/meta/lib/did';\n\nimport { toDataURL } from '@arcblock/did-motif';\n\nconst base64ToArrayBuffer = base64 => {\n const bufStr = window.atob(base64);\n const bytes = new Uint8Array(bufStr.length);\n for (let i = 0; i < bufStr.length; i++) {\n bytes[i] = bufStr.charCodeAt(i);\n }\n return bytes;\n};\n\nconst getLogo = did => {\n const url = toDataURL(did, { size: 200 });\n const base64 = url.replace(/^[^,]*,/, '');\n return base64ToArrayBuffer(base64);\n};\n\nexport function getNameByTitle(title) {\n return title\n .replace(/[\\s/@_]/g, '-')\n .replace(/[^a-zA-Z0-9_-]/g, '')\n .replace(/(^[-\\s]+)|([-\\s]+$)/g, '')\n .toLowerCase();\n}\n\nexport function genExportedMeta(name, blocklet) {\n const meta = pickBy(cloneDeep(blocklet.meta), x => x !== null);\n\n meta.name = name;\n meta.did = toBlockletDid(name);\n meta.logo = 'logo.png';\n\n meta.interfaces.forEach(x => {\n // filter null or undefined\n if (!x.services) {\n delete x.services;\n }\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\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\n meta.capabilities.component = false;\n\n return meta;\n}\n\nconst license = holder => `Copyright © 2022 ${holder || ''}\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), 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 “AS IS”, 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`;\n\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\nexport async function downloadExportedSource(meta, { holder } = {}) {\n const folderName = `${meta.name.split('/').pop()}`;\n const readme = `# ${meta.title}\\n\\n## Introduction\\n\\n${meta.description}`;\n\n const zip = new JSZip();\n const folder = zip.folder(folderName);\n folder.file('blocklet.yml', yaml.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\n .generateAsync({ type: 'blob' })\n .then(content => {\n saveAs(content, `${folderName}.zip`);\n resolve();\n })\n .catch(err => {\n reject(err);\n });\n });\n}\nexport const getLaunchURL = (meta, info, encodeURI = false) => {\n const adminPath = process.env.NODE_ENV === 'production' ? info.routing.adminPath : '';\n const serverUrl = encodeURI\n ? encodeURIComponent(joinURL(window.location.origin, adminPath))\n : joinURL(window.location.origin, adminPath);\n const metaUrl = joinURL(info?.blockletRegistry, `/api/blocklets/${meta.did}/blocklet.json`);\n return { serverUrl, metaUrl };\n};\nexport const getLaunchAgreementUrl = (meta, info) => {\n const { metaUrl, serverUrl } = getLaunchURL(meta, info);\n\n const url = new URL(joinURL(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","import { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { makeStyles } from '@mui/styles';\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport Dialog from '@arcblock/ux/lib/Dialog';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport Typography from '@mui/material/Typography';\nimport TextField from '@mui/material/TextField';\nimport ListItem from '@mui/material/ListItem';\nimport AddIcon from '@mui/icons-material/Add';\n\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport Button from '@arcblock/ux/lib/Button';\nimport Alert from '@arcblock/ux/lib/Alert';\n\nimport { useNodeContext } from '../../contexts/node';\nimport { formatError, isNewRegistryUrl } from '../../libs/util';\n\nconst useStyles = makeStyles(theme => ({\n addMenuItemRoot: {\n justifyContent: 'center',\n color: theme.palette.primary.main,\n lineHeight: '3.2',\n },\n}));\n\nexport default function AddBlockletRegistry({ disabled, reloadPage }) {\n const { api, info } = useNodeContext();\n const [loading, setLoading] = useState(false);\n const [disable, setDisable] = useState(true);\n const [open, setOpen] = useState(false);\n const [url, setUrl] = useState('');\n const [error, setError] = useState('');\n const { t } = useLocaleContext();\n const classes = useStyles();\n\n const onConfirm = async () => {\n setLoading(true);\n try {\n const { isNew, decoded } = isNewRegistryUrl(url, info.blockletRegistryList);\n\n if (!isNew) {\n throw new Error(t('store.blockletRegistry.haveSameRegistry'));\n }\n\n await api.addBlockletStore({ input: { url: decoded } });\n\n setOpen(false);\n if (reloadPage) {\n window.location.reload();\n }\n } catch (err) {\n const errMsg = `${t('store.blockletRegistry.addFailed')} ${formatError(err)}`;\n setError(errMsg);\n } finally {\n setLoading(false);\n }\n };\n\n return (\n <>\n <ListItem\n button\n disabled={disabled}\n className={classes.addMenuItemRoot}\n onClick={() => {\n setOpen(true);\n }}>\n <AddIcon fontSize=\"small\" />\n <Typography variant=\"inherit\">{t('store.blockletRegistry.addRegistry')}</Typography>\n </ListItem>\n <Dialog\n title={t('store.blockletRegistry.addRegistry')}\n fullWidth\n maxWidth=\"md\"\n open={open}\n onClose={() => setOpen(false)}\n PaperProps={{ style: { minHeight: 'auto' } }}\n actions={\n <>\n <Button\n onClick={e => {\n e.stopPropagation();\n setOpen(false);\n }}\n color=\"inherit\"\n size=\"small\">\n {t('common.cancel')}\n </Button>\n <Button\n onClick={e => {\n e.stopPropagation();\n onConfirm();\n }}\n color=\"primary\"\n size=\"small\"\n data-cy=\"install-blocklet-next-step\"\n disabled={loading || !url || disable}\n variant=\"contained\"\n autoFocus>\n {loading && <Spinner size={[16, 10]} />}\n {t('common.confirm')}\n </Button>\n </>\n }>\n <div style={{ paddingTop: 12, overflowY: 'hidden' }}>\n <DialogContentText component=\"div\">\n <Typography component=\"div\">\n <TextField\n label={t('store.blockletRegistry.registryUrl')}\n autoComplete=\"off\"\n variant=\"outlined\"\n name=\"url\"\n fullWidth\n value={url}\n onChange={e => {\n setError(null);\n let isDisabled = false;\n if (!e.target.value.trim()) {\n isDisabled = true;\n }\n if (!e.target.value.trim()) {\n setError(t('store.blockletRegistry.registryUrlEmpty'));\n }\n setUrl(e.target.value);\n setDisable(isDisabled);\n }}\n disabled={loading}\n onKeyPress={e => {\n if (e.key === 'Enter') {\n e.preventDefault();\n if (!e.target.value.trim()) {\n setError(t('store.blockletRegistry.registryUrlEmpty'));\n } else {\n onConfirm();\n }\n }\n }}\n />\n </Typography>\n </DialogContentText>\n </div>\n {!!error && (\n <Alert type=\"error\" style={{ width: '100%' }}>\n {error}\n </Alert>\n )}\n </Dialog>\n </>\n );\n}\n\nAddBlockletRegistry.propTypes = {\n disabled: PropTypes.bool,\n reloadPage: PropTypes.bool,\n};\n\nAddBlockletRegistry.defaultProps = {\n disabled: false,\n reloadPage: true,\n};\n","/* eslint-disable react/prop-types */\nimport { useState } from 'react';\nimport { useSnackbar } from 'notistack';\nimport IconButton from '@mui/material/IconButton';\nimport useTheme from '@mui/material/styles/useTheme';\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport DeleteOutlineIcon from '@mui/icons-material/DeleteOutline';\nimport DelConfirm from '../delete-confirm';\nimport { useNodeContext } from '../../contexts/node';\nimport { formatError } from '../../libs/util';\n\nexport default function DeleteBlockletRegistry(props) {\n const { enqueueSnackbar } = useSnackbar();\n const { api } = useNodeContext();\n const { t } = useLocaleContext();\n const [loading, setLoading] = useState(false);\n const [confirmSetting, setConfirmSetting] = useState(null);\n const { blockletRegistry, reloadPage, onDelete } = props;\n const theme = useTheme();\n\n const onCancel = () => {\n setLoading(false);\n setConfirmSetting(null);\n };\n\n const onConfirm = async () => {\n try {\n setLoading(true);\n await api.deleteBlockletStore({ input: { url: blockletRegistry.url } });\n if (onDelete && typeof onDelete === 'function') {\n onDelete();\n }\n if (reloadPage) {\n window.location.reload();\n }\n } catch (err) {\n enqueueSnackbar(`Remove Blocklet Store Error: ${formatError(err)}`, {\n autoHideDuration: 2000,\n variant: 'error',\n });\n } finally {\n setLoading(false);\n setConfirmSetting(null);\n }\n };\n\n const setting = {\n keyName: blockletRegistry.url,\n title: t('store.blockletRegistry.deleteRegistry'),\n description: t('store.blockletRegistry.deleteDesc', {\n name: `<b>${blockletRegistry.url}</b>`,\n color: theme.palette.error.main,\n }),\n confirmPlaceholder: t('store.blockletRegistry.confirmDesc', { name: blockletRegistry.url }),\n confirm: t('common.delConfirm'),\n cancel: t('common.cancel'),\n onConfirm,\n onCancel,\n };\n\n const onMenuItemClick = e => {\n e.stopPropagation();\n setConfirmSetting(setting);\n };\n\n return (\n <>\n <IconButton disabled={loading} onClick={onMenuItemClick} size=\"large\">\n <DeleteOutlineIcon />\n </IconButton>\n {confirmSetting && (\n <DelConfirm\n keyName={confirmSetting.keyName}\n title={confirmSetting.title}\n description={confirmSetting.description}\n confirmPlaceholder={confirmSetting.confirmPlaceholder}\n confirm={confirmSetting.confirm}\n cancel={confirmSetting.cancel}\n params={confirmSetting.params}\n onConfirm={confirmSetting.onConfirm}\n onCancel={confirmSetting.onCancel}\n />\n )}\n </>\n );\n}\n","/* eslint-disable react/jsx-one-expression-per-line */\nimport { forwardRef, useImperativeHandle, useState } from 'react';\n\nimport { useSnackbar } from 'notistack';\nimport { makeStyles } from '@mui/styles';\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport Dialog from '@arcblock/ux/lib/Dialog';\nimport Typography from '@mui/material/Typography';\nimport List from '@mui/material/List';\nimport ListItem from '@mui/material/ListItem';\nimport ListItemText from '@mui/material/ListItemText';\nimport ListItemIcon from '@mui/material/ListItemIcon';\nimport ListItemSecondaryAction from '@mui/material/ListItemSecondaryAction';\nimport ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\nimport LaunchIcon from '@mui/icons-material/Launch';\nimport IconButton from '@mui/material/IconButton';\nimport PropTypes from 'prop-types';\n\nimport { useLocaleContext } from '@arcblock/ux/lib/Locale/context';\nimport Button from '@arcblock/ux/lib/Button';\nimport AddBlockletRegistry from './add';\nimport DeleteBlockletRegistry from './delete';\nimport Permission from '../permission';\n\nimport { useNodeContext } from '../../contexts/node';\nimport { formatError } from '../../libs/util';\n\nconst useStyles = makeStyles(() => ({\n buttonText: {\n textTransform: 'none !important',\n },\n iconRoot: {\n minWidth: 24,\n },\n menuName: {\n display: 'flex',\n flexDirection: 'column',\n marginRight: '100px',\n '& span': { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' },\n },\n}));\n\nexport function BlockletRegistryRenderItem(props) {\n const classes = useStyles();\n return (\n <div className={classes.menuName}>\n <Typography component=\"span\" variant=\"subtitle1\" style={{ fontWeight: '400' }}>\n {props.name}\n </Typography>\n <Typography className=\"url\" component=\"span\" variant=\"inherit\">\n {`${props.url}`}\n </Typography>\n <ListItemSecondaryAction>\n <IconButton\n onClick={e => {\n e.stopPropagation();\n window.open(props.url);\n }}\n size=\"large\">\n <LaunchIcon />\n </IconButton>\n {!props.protected && (\n <DeleteBlockletRegistry blockletRegistry={props} reloadPage={props.reloadPage} onDelete={props.onDelete} />\n )}\n </ListItemSecondaryAction>\n </div>\n );\n}\n\nBlockletRegistryRenderItem.propTypes = {\n name: PropTypes.string.isRequired,\n url: PropTypes.string.isRequired,\n protected: PropTypes.bool,\n reloadPage: PropTypes.bool,\n onDelete: PropTypes.func,\n};\n\nBlockletRegistryRenderItem.defaultProps = {\n protected: false,\n reloadPage: true,\n onDelete: () => {},\n};\n\nconst SwitchBlockletRegistry = forwardRef((props, ref) => {\n const { api, info } = useNodeContext();\n const { t } = useLocaleContext();\n const { enqueueSnackbar } = useSnackbar();\n const [loading, setLoading] = useState(false);\n const [open, setOpen] = useState(false);\n const [menuIndex, setMenuIndex] = useState(-1);\n const classes = useStyles();\n const selectedIndex = info.blockletRegistryList.findIndex(x => x.selected);\n\n const onSelect = async index => {\n try {\n setLoading(true);\n setMenuIndex(index);\n\n const blockletRegistry = info.blockletRegistryList[index];\n await api.selectBlockletStore({ input: { url: blockletRegistry.url } });\n setOpen(false);\n } catch (err) {\n console.error(err);\n enqueueSnackbar(`${t('store.blockletRegistry.changeFailed')} ${formatError(err)}`, {\n autoHideDuration: 2000,\n variant: 'error',\n });\n } finally {\n setLoading(false);\n }\n };\n\n useImperativeHandle(ref, () => ({\n setOpen,\n }));\n\n return (\n <>\n <Permission permission=\"mutate_node\">\n {hasPermission => (\n <Button\n disabled={!hasPermission}\n classes={{ text: classes.buttonText }}\n color=\"secondary\"\n data-cy=\"store-toggle\"\n onClick={() => {\n setOpen(true);\n }}\n endIcon={<ArrowDropDownIcon />}>\n <Typography color=\"secondary\">{info.blockletRegistryList[selectedIndex].name}</Typography>\n </Button>\n )}\n </Permission>\n <Dialog\n title={t('store.blockletRegistry.switchRegistry')}\n disableEscapeKeyDown\n disablePortal={false}\n fullWidth\n open={open}\n onClose={() => setOpen(false)}>\n <List className={classes.tabPanel}>\n {info.blockletRegistryList.map((x, index) => (\n <ListItem\n button\n disabled={loading}\n key={x.url}\n selected={selectedIndex === index}\n data-cy=\"store-switch\"\n onClick={() => {\n if (loading) {\n return;\n }\n\n if (index === selectedIndex) {\n setOpen(false);\n return;\n }\n\n onSelect(index);\n }}>\n <ListItemIcon className={classes.iconRoot}>\n {menuIndex === index && loading && <Spinner size={[16, 10]} />}\n </ListItemIcon>\n <ListItemText>\n <BlockletRegistryRenderItem {...x} />\n </ListItemText>\n </ListItem>\n ))}\n <AddBlockletRegistry disabled={loading} />\n </List>\n </Dialog>\n </>\n );\n});\n\nSwitchBlockletRegistry.propTypes = {};\n\nexport default SwitchBlockletRegistry;\n","import { useState, useEffect } from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport useLocalStorage from 'react-use/lib/useLocalStorage';\n\nimport { BlockletEvents } from '@blocklet/meta/lib/constants';\n\nimport useQuery from './query';\nimport { useSubscription } from '../libs/ws';\n\nexport default function useBlockletPurchase(did) {\n const query = useQuery();\n const navigate = useNavigate();\n const [sessionId, setSessionId] = useLocalStorage(`sid:blocklet:purchase:${did}`);\n const [hasCompleted, setCompleted] = useState(false);\n const [session, setSession] = useState(null);\n\n const doRedirect = () => {\n const { pathname, searchParams } = new URL(window.location.href);\n const prefix = window.env && window.env.apiPrefix ? window.env.apiPrefix : '/';\n if (searchParams.get('sid')) {\n setSessionId('');\n navigate(pathname.replace(prefix, '/'), { replace: true });\n }\n };\n\n const hasPurchased = !!(query.get('assetDid') && sessionId && query.get('sid') === sessionId);\n\n useSubscription(BlockletEvents.purchaseChange, e => {\n if (e.did === did) {\n setSession(e.session);\n\n if (['declined', 'confirmed', 'error'].includes(e.session.status)) {\n setCompleted(true);\n setTimeout(doRedirect, 2000);\n }\n }\n });\n\n useEffect(() => {\n if (session && session.id !== sessionId) {\n setSessionId(session.id);\n }\n }, [session]); // eslint-disable-line\n\n return {\n hasCompleted,\n hasPurchased,\n session,\n setSession,\n doRedirect,\n };\n}\n","import axios from 'axios';\n\naxios.defaults.timeout = 10 * 1000; // 超时时间设为10s\n\nconst api = axios.create();\n\nexport { axios, api };\nexport default api;\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"],"names":["InstallOrUpgrade","props","showPay","meta","lastVersion","buttonText","registryUrl","handleButtonText","handleButtonClick","rest","enqueueSnackbar","useSnackbar","t","useLocaleContext","navigate","useNavigate","info","useNodeContext","useBlockletContext","api","state","data","find","d","did","installed","useMemo","status","installedVersion","version","requirePurchase","isFreeBlocklet","useState","loading","setLoading","hasPurchased","useBlockletPurchase","showPurchaseDialog","setShowPurchaseDialog","useLocalStorage","instantLaunch","loadingText","isInstalling","needUpgrade","gt","btnProps","btnTxt","upgrade","open","purchase","launch","showInstallBtn","onAction","e","preventDefault","stopPropagation","fn","input","url","getLaunchAgreementUrl","window","location","href","upgradeBlocklet","formatError","autoHideDuration","variant","console","error","InstallButton","disabled","Button","onClick","size","Boolean","color","Spinner","style","marginRight","defaultProps","permission","hasPermission","className","configs","some","x","required","value","Typography","component","fontSize","marginLeft","method","mode","onCancel","getStoreDetail","blocklet","endpoint","serverUrl","getLaunchURL","joinURL","BlockletItem","blocklets","node","logoUrl","prefix","blockletRegistry","startsWith","logo","formatRegistryLogoPath","apiPrefix","env","replace","buttonProps","reduce","totalVal","Link","textDecoration","currentTarget","contains","target","Blocklet","title","name","description","cover","button","display","alignItems","BlockletList","handleSearchSelect","handleBlockletRegistry","handleBlockletRender","extraFilter","locale","filters","setFilters","useEffect","ErrorBoundary","FallbackComponent","ErrorFallback","resetKeys","blockletRender","blockletRenderProps","defaultRender","onFilterChange","changeData","onSearchSelect","storeUrl","detailUrl","undefined","useStyles","PropTypes","makeStyles","dialogAuth","padding","textAlign","marginBottom","iconRoot","minWidth","CustomSelect","action","onSelect","onNext","classes","options","List","tabPanel","map","ListItem","selected","ListItemIcon","colors","ListItemText","primary","secondary","fullWidth","marginTop","LaunchPurchaseDialog","handlePaySuccessFn","handlePaySuccess","setAction","step","setStep","webWalletUrl","getWebWalletUrl","launchAddress","act","getDisplayName","popup","baseUrl","checkFn","axios","baseURL","get","onSuccess","onClose","checkTimeout","extraParams","factory","nftFactory","disableClose","saveConnect","showDownload","messages","scan","confirm","success","gutterBottom","Wrapper","Dialog","disableEscapeKeyDown","reason","setTimeout","ServerPurchaseDialog","installOpts","gql","useSessionContext","session","setSession","hasCompleted","doRedirect","payload","type","blockletDid","startSession","JSON","stringify","initial","cb","URL","searchParams","delete","set","id","callback","encodeURIComponent","nw","pathname","nextWorkflow","socketUrl","sid","message","getMessage","rootDid","mountPoint","ComponentPurchase","setNw","origin","handleConnectSuccess","result","decrypt","handleConnectSessionStatus","pWaitFor","$api","then","downloadToken","failure","interval","errorMessage","Toast","extractStatusUrlFromNextWorkflow","statusUrl","nextWorkflowUrl","modePropsMap","verify","serverDid","cancelWhenScanned","ComponentPurchaseSelect","forwardRef","ref","useImperativeHandle","getCurrentStep","maxWidth","getLogo","base64","bufStr","atob","bytes","Uint8Array","length","i","charCodeAt","base64ToArrayBuffer","toDataURL","getNameByTitle","toLowerCase","genExportedMeta","pickBy","cloneDeep","toBlockletDid","interfaces","forEach","services","children","child","dynamic","bundleSource","push","source","environments","key","secure","default","capabilities","license","holder","Gitignore","GithubAction","downloadExportedSource","folderName","split","pop","readme","zip","JSZip","folder","file","yaml","Promise","resolve","reject","generateAsync","content","saveAs","catch","err","encodeURI","adminPath","routing","metaUrl","theme","addMenuItemRoot","justifyContent","palette","main","lineHeight","AddBlockletRegistry","reloadPage","disable","setDisable","setOpen","setUrl","setError","onConfirm","isNewRegistryUrl","blockletRegistryList","isNew","decoded","Error","addBlockletStore","reload","errMsg","PaperProps","minHeight","actions","autoFocus","paddingTop","overflowY","label","autoComplete","onChange","isDisabled","trim","onKeyPress","width","DeleteBlockletRegistry","confirmSetting","setConfirmSetting","onDelete","useTheme","deleteBlockletStore","setting","keyName","confirmPlaceholder","cancel","IconButton","DeleteOutline","params","textTransform","menuName","flexDirection","overflow","textOverflow","whiteSpace","BlockletRegistryRenderItem","fontWeight","ListItemSecondaryAction","Launch","protected","SwitchBlockletRegistry","menuIndex","setMenuIndex","selectedIndex","findIndex","index","selectBlockletStore","text","endIcon","ArrowDropDown","disablePortal","query","useQuery","sessionId","setSessionId","setCompleted","useSubscription","BlockletEvents","includes","types","require","toHex","fromPublicKey","module","exports","pk","Buffer","from","role","RoleType","ROLE_ANY"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_abtnode_webapp=self.webpackChunk_abtnode_webapp||[]).push([[7419],{38657:function(e,n,t){var o=t(33028),r=t(59740),i=t(30969),l=t(88029),a=t(37574),c=["children"];function s(e){var n=e.children,t=(0,r.Z)(e,c);return(0,a.jsx)(l.default,(0,o.Z)((0,o.Z)({variant:"contained",color:"primary"},t),{},{children:n}))}n.Z=(0,i.forwardRef)((function(e,n){return(0,a.jsx)(s,(0,o.Z)((0,o.Z)({},e),{},{forwardedRef:n}))}))},71927:function(e,n,t){t.d(n,{Z:function(){return O}});var o=t(71171),r=t(32723),i=t(34795),l=t(96234),a=t(30969),c=t(13026),s=t(4716),d=t(16380),u=t(42167),m=t(7017),p=t(23426),f=t(55632),h=t(98185),x=t(61802),v=t(98169),g=t(76032),b=t.n(g),y=t(81721),k=t(47768),j=t(5954),Z=t(33028),C=t(37574);function w(e){var n=Object.assign({},e);return(0,C.jsxs)("div",(0,Z.Z)((0,Z.Z)({},n),{},{style:{width:"100%"},children:[(0,C.jsx)("h3",{children:"End User License Agreement for Application"}),(0,C.jsx)("p",{children:"Blocklet Server License Agreement ArcBlock, Inc. version 2020-08-28"}),(0,C.jsx)("p",{children:"BLOCKLET SERVER LICENSE AGREEMENT"}),(0,C.jsx)("p",{children:"\u6682\u65e0"})]}))}var P,L,E=t(78685),S=t(38657);function O(e){var n=e.blocklet,t=e.onClickNext,o=e.handleDescEle,d=e.showPageHeader,g=(0,c.s0)(),Z=(0,a.useState)(null),P=(0,l.Z)(Z,2),L=P[0],O=P[1],B=(0,a.useState)(null),I=(0,l.Z)(B,2),N=I[0],D=I[1],R=(0,a.useState)(!1),U=(0,l.Z)(R,2),A=U[0],z=U[1],F=(0,u.useLocaleContext)(),M=F.t,K=F.locale,W=(0,j.h6)(),V=W.info,q=W.api,Y=n.isRunning,G=(0,a.useMemo)((function(){return b()(n)||A}),[n,A]),H=t||function(){g("/launch-blocklet/install".concat(window.location.search))};if((0,a.useEffect)((function(){var e=function(){var e=(0,i.Z)((0,r.Z)().mark((function e(){var t,o,i,l;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,z(!0),e.next=4,q.getBlocklet({input:{did:n.meta.did}});case 4:return t=e.sent,o=t.blocklet,i=o.interfaces.map((function(e){return e.url})),e.next=9,(0,E.D)(i);case 9:if((l=e.sent)||!b()(l)){e.next=13;break}return O(null),e.abrupt("return");case 13:O(new URL(l).href),e.next=19;break;case 16:e.prev=16,e.t0=e.catch(0),D(e.t0.message);case 19:return e.prev=19,z(!1),e.finish(19);case 22:case"end":return e.stop()}}),e,null,[[0,16,19,22]])})));return function(){return e.apply(this,arguments)}}();Y&&e()}),[n]),N)return(0,C.jsx)(y.default,{relative:"parent",children:(0,C.jsx)("div",{children:(0,C.jsx)(v.Z,{style:{wordBreak:"break-all"},variant:"icon",type:"error",children:N})})});if(G)return(0,C.jsx)(y.default,{relative:"parent",children:(0,C.jsx)(x.default,{})});var X=n.meta,$={data:X};if(!X)return(0,C.jsx)(y.default,{relative:"parent",children:(0,C.jsx)(x.default,{})});if(n.isInstalled){var J=L?"alreadyRunning":"alreadyInstalled";return(0,C.jsx)(p.Z,{variant:"info",title:M("common.reminder"),subTitle:M("launchBlocklet.".concat(J),{name:(0,m.getDisplayName)(n,!0)}),footer:(0,C.jsxs)(_,{children:[(0,C.jsx)(S.Z,{"data-cy":"view-blocklet",component:s.Link,to:"/blocklets/".concat(n.meta.did,"/overview"),variant:L?"outlined":"contained",color:"primary",children:M("launchBlocklet.viewApplication")}),L&&(0,C.jsx)(S.Z,{className:"last-button",href:L,"data-cy":"open-blocklet",children:M("common.open")})]})})}return V?(0,C.jsxs)(T,{children:[d&&(0,C.jsx)(k.Z,{title:M("launchBlocklet.introduction"),subTitle:M("launchBlocklet.welcome")}),(0,C.jsx)("div",{className:"app-content",children:(0,C.jsx)("div",{className:"agreement",children:(0,C.jsx)("div",{className:"agreement-content",children:(0,C.jsx)(h.Z,{blockletMeta:$,locale:K,handleDescEle:o})})})}),(0,C.jsx)("div",{className:"button-container","data-cy":"agree-all",children:(0,C.jsx)(f.Z,{onContinue:H,description:(0,C.jsx)(w,{}),texts:{listenName:M("launchBlocklet.license"),buttonNext:M("launchBlocklet.next")}})})]}):(0,C.jsx)(y.default,{relative:"parent",children:(0,C.jsx)(x.default,{})})}O.defaultProps={onClickNext:null,handleDescEle:"",showPageHeader:!0};var T=d.default.div(P||(P=(0,o.Z)(["\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n height: 100%;\n\n .app-content {\n padding: 2px 24px 24px;\n "," {\n padding-top: 10px;\n }\n width: 100%;\n flex: 1;\n letter-spacing: normal;\n }\n .agreement {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n border: 1px solid ",";\n border-radius: 12px;\n\n "," {\n margin-top: 24px;\n }\n\n "," {\n margin-top: 16px;\n }\n\n .agreement-content {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n font-size: 14px;\n overflow-y: auto;\n\n "," {\n padding: 0 24px;\n }\n\n "," {\n padding: 0 16px;\n }\n\n &:after {\n display: block;\n content: '';\n height: 24px;\n }\n }\n }\n .button-container {\n padding-top: 24px;\n padding-bottom: 34px;\n "," {\n padding-right: 24px;\n margin-left: auto;\n }\n "," {\n padding-top: 0;\n padding-bottom: 16px;\n }\n }\n"])),(function(e){return e.theme.breakpoints.down("md")}),(function(e){return e.theme.palette.grey[100]}),(function(e){return e.theme.breakpoints.up("md")}),(function(e){return e.theme.breakpoints.down("md")}),(function(e){return e.theme.breakpoints.up("md")}),(function(e){return e.theme.breakpoints.down("md")}),(function(e){return e.theme.breakpoints.up("md")}),(function(e){return e.theme.breakpoints.down("md")})),_=d.default.div(L||(L=(0,o.Z)(["\n .MuiButton-root {\n "," {\n min-width: 200px;\n }\n }\n .last-button {\n margin-left: ",";\n }\n"])),(function(e){return e.theme.breakpoints.up("md")}),(function(e){return e.theme.spacing(2)}))},33829:function(e,n,t){t.d(n,{l:function(){return j}});var o=t(71171),r=t(33028),i=t(96234),l=t(59740),a=t(30969),c=t(16380),s=t(72097),d=t(55251),u=t(75255),m=t(10515),p=t(50692),f=t(34869),h=t(78685);var x,v,g=function(){var e=(0,a.useState)(+new Date),n=(0,i.Z)(e,2),t=n[0],o=n[1];return(0,f.Z)((function(){o(+new Date)}),1e3),(0,h.mr)(t,"MMMM Do YYYY, h:mm:ss a")},b=t(37574),y=["name","logId","types","initialData","prepend"],k=["logFile"];function j(e){var n=e.name,t=e.logId,o=e.types,c=e.initialData,m=e.prepend,f=(0,l.Z)(e,y),h={info:"Info",error:"Error",access:"Access",stdout:"stdout",stderr:"stderr"},x=(0,u.Z)((function(e){return e.breakpoints.down("md")})),v=(0,a.useState)(o[0]),g=(0,i.Z)(v,2),k=g[0],j=g[1],w=(0,a.useState)(),P=(0,i.Z)(w,2),L=P[0],E=P[1],S=(0,a.useRef)({});return(0,a.useEffect)((function(){o.forEach((function(e){var t=S.current[e];t&&(t.write("Collecting ".concat(e," logs for ").concat(n,"...")),t.write("\r\n\r\n"),c.forEach((function(e){return t.write(e)})))}))}),[]),(0,p.mU)("log.".concat(t),(function(e){L||E(e.logFiles||{});var n=S.current[e.level];n&&(n.write(e.data.replace(/.\n/g,(function(e){return"\r\n"===e?e:"".concat(e[0],"\r\n\r\n")}))),n.write("\r\n\r\n"))}),[]),(0,b.jsxs)(Z,(0,r.Z)((0,r.Z)({},f),{},{children:[(0,b.jsxs)("div",{className:"log-terminal-group-head",children:[m,(0,b.jsx)(d.Z,{variant:"outlined",size:x?"small":"medium",children:o.map((function(e){var n=e===k?{variant:"contained"}:{};return(0,b.jsx)(s.Z,(0,r.Z)((0,r.Z)({},n),{},{onClick:function(){return j(e)},children:h[e]}),e)}))})]}),(0,b.jsx)("div",{className:"log-terminal-group-terminals",children:o.map((function(e){return(0,b.jsx)(C,{ref:function(n){S.current[e]=n},logFile:null===L||void 0===L?void 0:L[e],style:{visibility:e===k?"visible":"hidden"}},e)}))})]}))}j.defaultProps={types:["error","info","access","stdout","stderr"],initialData:[],prepend:null};var Z=c.default.div(x||(x=(0,o.Z)(["\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"])),(function(e){return e.theme.breakpoints.down("md")})),C=(0,a.forwardRef)((function(e,n){var t=e.logFile,o=(0,l.Z)(e,k);return(0,b.jsxs)(w,(0,r.Z)((0,r.Z)({},o),{},{children:[(0,b.jsxs)("div",{className:"log-terminal-top",children:[(0,b.jsx)(g,{}),t&&(0,b.jsx)("span",{children:t})]}),(0,b.jsx)("div",{className:"log-terminal-container",style:{position:"relative"},children:(0,b.jsx)(m.Z,{ref:n,style:{width:"100%",boxSizing:"border-box",height:"100%"},options:{theme:{background:"#2C313C",foreground:"#EEEEEE"}}})})]}))}));C.defaultProps={logFile:""};var w=c.default.div(v||(v=(0,o.Z)(["\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"])))},83470:function(e,n,t){t.r(n),t.d(n,{default:function(){return Ro}});var o,r=t(71171),i=t(33028),l=t(32723),a=t(34795),c=t(96234),s=t(30969),d=t(16380),u=t(13026),m=t(4716),p=t(42167),f=t(33359),h=t(53304),x=t(34581),v=t(61802),g=t(622),b=t(781),y=t(3037),k=t(98169),j=t(88029),Z=t(65724),C=t(7017),w=t(59740),P=t(51938),L=t(10238),E=t(30357),S=t(65175),O=t(78685),T=t(11823),_=t(99237),B=t.n(_),I=t(37574),N=["blocklet"];function D(e){var n=e.blocklet,t=(0,w.Z)(e,N),o=(0,u.s0)(),r=(0,s.useContext)(p.LocaleContext).t;if(!n.diskInfo)return(0,I.jsx)(f.Z,{children:r("blocklet.diskInfo.empty")});var l=function(e,n,t){return(0,I.jsxs)(f.Z,{children:[t?(0,I.jsx)(g.Z,{style:{cursor:"pointer"},onClick:t,underline:"hover",children:e}):e," ",(0,I.jsx)("strong",{children:n?B()(n):"empty"})]})},a=n.environments.reduce((function(e,n){return e[n.key]=n.value,e}),{}),c=[{name:r("blocklet.diskInfo.appDir"),value:l(a.BLOCKLET_APP_DIR,n.diskInfo.app)},{name:r("blocklet.diskInfo.dataDir"),value:l(a.BLOCKLET_DATA_DIR,n.diskInfo.data)},{name:r("blocklet.diskInfo.logDir"),value:l(a.BLOCKLET_LOG_DIR,n.diskInfo.log,(function(){o("/logs/blocklet-".concat(n.meta.did))}))},{name:r("blocklet.diskInfo.cacheDir"),value:l(a.BLOCKLET_CACHE_DIR,n.diskInfo.cache)}];return(0,I.jsx)(U,(0,i.Z)((0,i.Z)({component:"div"},t),{},{children:c.map((function(e){return(0,I.jsx)(L.Z,{valueComponent:"div",nameWidth:120,name:e.name,children:e.value},e.name)}))}))}D.defaultProps={};var R,U=(0,d.default)(f.Z)(o||(o=(0,r.Z)([""]))),A=t(93033),z=t.n(A),F=t(76032),M=t.n(F),K=["blocklet","noRunningMessage"];function W(e){var n=e.blocklet,t=e.noRunningMessage,o=(0,w.Z)(e,K),r=(0,s.useContext)(p.LocaleContext),l=r.t,a=r.locale;if("running"!==n.status)return(0,I.jsx)(f.Z,{children:t||l("blocklet.runtimeInfo.noRunning")});if(M()(n.runtimeInfo))return(0,I.jsx)(f.Z,{children:l("common.empty")});var c=[{name:l("blocklet.runtimeInfo.memoryUsage"),value:B()(n.runtimeInfo.memoryUsage)},{name:l("blocklet.runtimeInfo.cpuUsage"),value:"".concat(100*n.runtimeInfo.cpuUsage,"%")},{name:l("blocklet.runtimeInfo.uptime"),value:z()(Number(+new Date-n.runtimeInfo.startAt||0),{locale:(0,O.FF)(a)})},{name:l("blocklet.runtimeInfo.processId"),value:n.runtimeInfo.pid}];return(0,I.jsx)(q,(0,i.Z)((0,i.Z)({component:"div"},o),{},{children:c.map((function(e){var n=e.name,t=e.value;return(0,I.jsx)(L.Z,{nameWidth:120,name:n,children:t},n)}))}))}W.defaultProps={noRunningMessage:""};var V,q=(0,d.default)(f.Z)(R||(R=(0,r.Z)([""]))),Y=t(19611),G=t.n(Y),H=t(2878),X=t.n(H);function $(e){var n,t=e.sourceInfo,o=e.blocklet,r=(0,s.useContext)(p.LocaleContext).t;return(0,I.jsxs)(x.Z,{display:"flex",alignItems:"center",children:[(0,I.jsx)(P.Z,{type:"success",children:X()(t.source)},"source"),"registry"===t.source&&(0,I.jsx)(g.Z,{href:G()(t.deployedFrom,"blocklets",(null===o||void 0===o||null===(n=o.meta)||void 0===n?void 0:n.bundleDid)||""),target:"_blank",className:"page-link",underline:"hover",style:{display:"flex",alignItems:"center",marginLeft:8},children:r("blocklet.overview.viewInStore")})]})}$.defaultProps={sourceInfo:{},blocklet:{}};var J=["blocklet","onChangeConfig"];function Q(e){var n,t,o=e.blocklet,r=(e.onChangeConfig,(0,w.Z)(e,J)),l=(0,s.useContext)(p.LocaleContext).t,a=((o.environments||[]).find((function(e){return"BLOCKLET_APP_ID"===e.key}))||{}).value,c=[a?{name:l("blocklet.appId"),value:(0,I.jsx)(E.Z,{did:a})}:null,{name:l("common.name"),value:(0,C.getDisplayName)(o,!0)},{name:l("common.status"),value:(0,I.jsx)(S.Z,{status:o.status,source:o.source})},{name:l("common.version"),value:(0,I.jsx)(T.Z,{blocklet:o})},{name:l("common.group"),value:(0,I.jsx)(P.Z,{type:"success",children:o.meta.group})},{name:l("common.author"),value:(0,O.rq)(o.meta.author)},{name:l("blocklet.installedAt"),value:(0,O.B2)(o.installedAt)},"running"===o.status?{name:l("blocklet.startedAt"),value:(0,O.B2)(o.startedAt)}:null,"running"!==o.status?{name:l("blocklet.stoppedAt"),value:(0,O.B2)(o.stoppedAt)}:null,{name:l("blocklet.overview.source"),value:(0,I.jsx)($,{sourceInfo:{source:o.source,deployedFrom:o.deployedFrom},blocklet:o})},{name:l("blocklet.overview.deployedFrom"),value:o.deployedFrom||"-"},{name:l("blocklet.overview.accessControl"),value:l("team.whoCanAccess.".concat((0,C.getWhoCanAccess)(o),".title"))},{name:l("common.did"),value:(0,I.jsx)(E.Z,{did:o.meta.did})},{name:l("common.owner"),value:null!==(n=o.settings)&&void 0!==n&&n.owner?(0,I.jsx)(E.Z,{did:o.settings.owner.did}):"--"}].filter(Boolean),d=function(e,n){return e?[{name:n("common.name"),value:e.displayName},{name:n("common.description"),value:e.description},{name:n("common.version"),value:(0,I.jsx)(P.Z,{children:e.version})}]:[]}(o.engine,l);return(0,I.jsxs)(ne,(0,i.Z)((0,i.Z)({component:"div"},r),{},{children:[(0,I.jsx)("div",{className:"title",children:(0,I.jsx)("span",{children:l("common.basicInfo")})}),(0,I.jsx)("div",{className:"basicInfo",children:(t=c,t.map((function(e){return e.name===l("common.did")||e.name===l("blocklet.appId")?(0,I.jsx)(L.Z,{valueComponent:"div",nameWidth:120,name:e.name,nameFormatter:function(){return e.name},children:e.value},e.name):(0,I.jsx)(L.Z,{valueComponent:"div",nameWidth:120,name:e.name,children:e.value},e.name)})))}),(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)("div",{className:"title",children:l("common.runtimeInfo")}),(0,I.jsx)(W,{blocklet:o}),(0,I.jsx)("div",{className:"title",children:l("common.engine")}),d.map((function(e){var n=e.name,t=e.value;return(0,I.jsx)(L.Z,{nameWidth:120,name:n,children:t},n)}))]}),(0,I.jsx)("div",{className:"title",children:l("common.dataStorage")}),(0,I.jsx)(D,{blocklet:o})]}))}var ee,ne=(0,d.default)(f.Z)(V||(V=(0,r.Z)(["\n .title {\n font-size: 1.2rem;\n font-weight: bold;\n margin-top: ",";\n margin-bottom: ",";\n }\n"])),(function(e){return e.theme.spacing(5)}),(function(e){return e.theme.spacing(3)})),te=t(32666),oe=d.default.div(ee||(ee=(0,r.Z)(["\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"]))),re=t(3715),ie=t(38996),le=t(10814),ae=t(44181),ce=t(60306),se=t(88356),de=t(56567),ue=t(81172),me=t(75296),pe=t(52838),fe=t(81779),he=t(90713),xe=t(97475),ve=t(65481),ge=t(83153),be={Add:re.Z,Check:ie.default,Delete:le.default,Edit:se.default,Clear:ae.default,DetailPanel:pe.default,Filter:de.Z,FirstPage:ue.default,LastPage:me.default,NextPage:pe.default,PreviousPage:fe.default,Search:he.default,ResetSearch:ae.default,SortArrow:xe.Z,Export:ce.default,ThirdStateCheck:ve.default,ViewColumn:ge.default},ye=["blocklet"];function ke(e){var n=e.blocklet,t=(0,w.Z)(e,ye),o=(0,s.useContext)(p.LocaleContext).t,r=(0,O.vW)(n);if(0===r.length)return(0,I.jsx)("div",{children:o("blocklet.noService")});var l=[{title:o("common.name"),field:"name"},{title:o("common.protocol"),field:"protocol"},{title:o("common.port"),field:"port"},{title:o("blocklet.upstreamPort"),field:"upstreamPort"}];return(0,I.jsx)(oe,(0,i.Z)((0,i.Z)({},t),{},{children:(0,I.jsx)(te.ZP,{columns:l,icons:(0,i.Z)({},be),options:{sorting:!1,emptyRowsWhenPaging:!1,actionsColumnIndex:-1,tableLayout:"auto",maxBodyHeight:"100%",search:!1,pageSize:1e3,pageSizeOptions:[1e3]},localization:{body:{emptyDataSourceMessage:o("blocklet.noService")}},data:r})}))}var je,Ze,Ce=t(56666),we=t(46292),Pe=t.n(we),Le=t(88674),Ee=t.n(Le),Se=t(87006),Oe=t(2689),Te=t(94702),_e=t(70475),Be=t(75295),Ie=t(54177),Ne=t(70508),De=t(15508),Re=t(5954),Ue=t(50692),Ae=t(61627),ze=["blocklet","onChangeConfig","onUpdate","hasPermission"],Fe=["value"];function Me(e){var n,t=e.blocklet,o=(e.onChangeConfig,e.onUpdate),r=e.hasPermission,d=(0,w.Z)(e,ze),u=(0,Re.h6)(),m=(0,s.useContext)(p.LocaleContext),f=m.t,h=m.locale,v=(0,s.useState)(""),g=(0,c.Z)(v,2),b=g[0],y=g[1],k=(0,s.useState)(""),j=(0,c.Z)(k,2),P=j[0],L=j[1],E=(0,C.getWhoCanAccess)(t),S=null===t||void 0===t||null===(n=t.settings)||void 0===n?void 0:n.publicToStore,T=(0,Te.Z)(),_=(0,s.useState)(null),B=(0,c.Z)(_,2),N=B[0],D=B[1],R=P||!r,U=Pe()(t.meta,"capabilities.clusterMode",!1);if((0,Ue.mU)("system.info",(function(e){U&&y(Pe()(e,"cpu.cores",""))})),(0,O.wS)(t.status))return null;var A=t.environments.find((function(e){return"BLOCKLET_WALLET_TYPE"===e.key})),z=t.environments.find((function(e){return"BLOCKLET_DELETABLE"===e.key})),F=!z||"yes"===z.value,M=t.environments.find((function(e){return"BLOCKLET_PASSPORT_COLOR"===e.key})),K=t.environments.find((function(e){return"BLOCKLET_APP_URL"===e.key})),W=[{key:Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_NAME,description:f("blocklet.config.name"),value:t.environments.find((function(e){return"BLOCKLET_APP_NAME"===e.key})).value},{key:Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_DESCRIPTION,description:f("blocklet.config.description"),value:t.environments.find((function(e){return"BLOCKLET_APP_DESCRIPTION"===e.key})).value},{key:Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_PASSPORT_COLOR,description:f("blocklet.config.passportColor"),value:M?M.value:"auto",componentType:"passport",componentProps:{blocklet:t}},{key:Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_URL,description:f("blocklet.config.appUrl"),value:K?K.value:""}];if(U){var V=t.configs.find((function(e){return e.key===Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE})),q=V?V.value:b;W.push({key:Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE,description:f("blocklet.config.clusterSize"),value:q,cpuCores:b})}var Y={},G=W.map((function(e){var n=e.value,t=(0,w.Z)(e,Fe);return Y[e.key]=n,(0,i.Z)({},t)})),H=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){var r,i,a;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!P){e.next=2;break}return e.abrupt("return");case 2:return L(!0),e.prev=3,r=n.target.value,e.next=7,u.api.updateWhoCanAccess({input:{did:t.meta.did,whoCanAccess:r}});case 7:i=e.sent,a=i.blocklet,o(a),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(3),Ie.ZP.error(e.t0.message);case 15:return e.prev=15,L(!1),e.finish(15);case 18:case"end":return e.stop()}}),e,null,[[3,12,15,18]])})));return function(n){return e.apply(this,arguments)}}(),X=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){var r,i,a;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!P){e.next=2;break}return e.abrupt("return");case 2:return L(!0),e.prev=3,r=n.target.checked,e.next=7,u.api.configPublicToStore({input:{did:t.meta.did,publicToStore:r}});case 7:i=e.sent,a=i.blocklet,o(a),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(3),Ie.ZP.error(e.t0.message);case 15:return e.prev=15,L(!1),e.finish(15);case 18:case"end":return e.stop()}}),e,null,[[3,12,15,18]])})));return function(n){return e.apply(this,arguments)}}(),$={marginRight:4,fontSize:18,verticalAlign:"text-bottom",color:T.palette.text.secondary},J=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){var r,a,c,s;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.key!==Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE){e.next=5;break}if(!(r=(0,O.I)(n))){e.next=5;break}return Ie.ZP.error(r),e.abrupt("return");case 5:return a=[(0,i.Z)((0,i.Z)({},Ee()(N,["childDid","componentType","componentProps"])),{},{value:n,custom:!0})],e.prev=6,L(!0),e.next=10,u.api.configBlocklet({input:{did:t.meta.did,configs:a}});case 10:c=e.sent,s=c.blocklet,o(s),e.next=18;break;case 15:e.prev=15,e.t0=e.catch(6),Ie.ZP.error(e.t0.message);case 18:return e.prev=18,L(!1),e.finish(18);case 21:case"end":return e.stop()}}),e,null,[[6,15,18,21]])})));return function(n){return e.apply(this,arguments)}}(),Q=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){var r,i,a;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!P){e.next=2;break}return e.abrupt("return");case 2:return L(!0),e.prev=3,r=n.target.checked,e.next=7,u.api.configBlocklet({input:{did:t.meta.did,configs:[{key:Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_DELETABLE,value:r?"no":"yes",custom:!0}]}});case 7:i=e.sent,a=i.blocklet,o(a),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(3),Ie.ZP.error(e.t0.message);case 15:return e.prev=15,L(!1),e.finish(15);case 18:case"end":return e.stop()}}),e,null,[[3,12,15,18]])})));return function(n){return e.apply(this,arguments)}}(),ee=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){var r,i,a;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!P){e.next=2;break}return e.abrupt("return");case 2:return L(!0),e.prev=3,r=n.target.value,e.next=7,u.api.configBlocklet({input:{did:t.meta.did,configs:[{key:Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_WALLET_TYPE,value:r,custom:!0}]}});case 7:i=e.sent,a=i.blocklet,o(a),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(3),Ie.ZP.error(e.t0.message);case 15:return e.prev=15,L(!1),e.finish(15);case 18:case"end":return e.stop()}}),e,null,[[3,12,15,18]])})));return function(n){return e.apply(this,arguments)}}();return(0,I.jsxs)(We,(0,i.Z)((0,i.Z)({},d),{},{children:[(0,I.jsx)(Ne.Z,{disabled:R,style:{marginTop:-24},loading:P,schema:G,defaultValue:Y,onChange:function(e,n){var t=n.action,o=n.currentItem;"edit"===t?D(o):["cancel","confirm"].includes(t)&&D(null),"confirm"===t&&J(e[o.key])}}),(0,I.jsxs)(x.Z,{className:"config-form",children:[(0,I.jsxs)(x.Z,{className:"config-item",children:[(0,I.jsxs)(x.Z,{className:"config-label",children:[f("blocklet.config.access.title"),(0,I.jsx)(x.Z,{className:"config-desc",children:f("blocklet.config.access.description")})]}),(0,I.jsx)(Se.Z,{disabled:R,select:!0,size:"small",value:E,onChange:H,SelectProps:{renderValue:function(e){var n=De.Z.find((function(n){return n.value===e}));return n?(0,I.jsxs)(x.Z,{children:[(0,I.jsx)(n.icon,{style:$}),n.title[h]]}):null}},children:De.Z.map((function(e){return(0,I.jsxs)(Ve,{value:e.value,sx:{display:"block"},children:[(0,I.jsxs)(x.Z,{display:"flex",alignItems:"center",children:[(0,I.jsx)(e.icon,{style:$}),(0,I.jsx)(x.Z,{children:e.title[h]})]}),(0,I.jsx)(x.Z,{children:(0,I.jsx)(x.Z,{className:"tip",children:e.description[h]})})]})}))})]}),"all"===E&&"registry"===t.source&&(0,I.jsxs)(x.Z,{className:"config-item",children:[(0,I.jsxs)(x.Z,{className:"config-label",children:[f("blocklet.config.access.publicToStore"),(0,I.jsx)(x.Z,{className:"config-desc",children:f("blocklet.config.access.publicInstanceTip")})]}),(0,I.jsx)(_e.Z,{disabled:R,checked:S,defaultChecked:!0,onChange:X})]}),(0,I.jsxs)(x.Z,{className:"config-item",children:[(0,I.jsxs)(x.Z,{className:"config-label",children:[f("blocklet.config.deletable.name"),(0,I.jsx)(x.Z,{className:"config-desc",children:f(F?"blocklet.config.deletable.disable":"blocklet.config.deletable.enable")})]}),(0,I.jsx)(_e.Z,{disabled:R,checked:!F,defaultChecked:!0,onChange:Q})]})]}),(0,I.jsx)(x.Z,{className:"config-form",component:Be.Z,my:3}),(0,I.jsx)(x.Z,{className:"config-form",children:(0,I.jsxs)(x.Z,{className:"config-item",children:[(0,I.jsxs)(x.Z,{className:"config-label",children:[f("blocklet.config.walletType.name"),(0,I.jsx)(x.Z,{className:"config-desc",children:f("blocklet.config.walletType.description")})]}),(0,I.jsx)(Se.Z,{disabled:R,select:!0,size:"small",value:(null===A||void 0===A?void 0:A.value)||"default",onChange:ee,children:[{label:"DID",value:"default"},{label:"ETH",value:"eth"}].map((function(e){return(0,I.jsx)(Ve,{value:e.value,sx:{display:"block"},children:(0,I.jsx)(x.Z,{display:"flex",alignItems:"center",children:(0,I.jsx)(x.Z,{children:e.label})})})}))})]})}),(0,I.jsx)(Ne.Z,{disabled:R,style:{marginTop:0},loading:P,schema:[{key:Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SK,description:f("blocklet.config.sk"),value:t.environments.find((function(e){return"BLOCKLET_APP_SK"===e.key})).value,custom:!0,secure:!0}],defaultValue:(0,Ce.Z)({},Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_SK,t.environments.find((function(e){return"BLOCKLET_APP_SK"===e.key})).value),onChange:function(e,n){var t=n.action,o=n.currentItem;"edit"===t?D(o):["cancel","confirm"].includes(t)&&D(null),"confirm"===t&&J(e[o.key])}})]}))}var Ke=(0,Ae.V)(Me,"mutate_blocklet");Me.defaultProps={onChangeConfig:function(){},onUpdate:function(){},hasPermission:!1};var We=d.default.div(je||(je=(0,r.Z)(["\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"])),(function(e){return e.theme.breakpoints.down("md")})),Ve=(0,d.default)(Oe.Z)(Ze||(Ze=(0,r.Z)(["\n .tip {\n font-size: 12px;\n color: ",";\n }\n"])),(function(e){return e.theme.palette.text.secondary})),qe=t(76149),Ye=t(3807),Ge=t(6779),He=t(94551),Xe=t(87862),$e=t(24972),Je=t(33951),Qe=t(20244),en=t(32616),nn=t(35258),tn=t(25465),on=t(39009),rn=t(58904),ln=t(23369),an=t(54481),cn=t(93310),sn=t(86008),dn=t(6847),un=t(62410);function mn(e){var n=e.site,t=e.domain,o=e.blocklet,r=(0,p.useLocaleContext)().t;return(0,I.jsx)(dn.Z,{"data-cy":"domain-actions",actions:[function(e){var i,l=e.close;return(0,I.jsx)(un.Z,{id:n.id,domain:t.value,teamDid:null===o||void 0===o||null===(i=o.meta)||void 0===i?void 0:i.did,children:function(e){var n=e.open;return(0,I.jsxs)(Oe.Z,{disabled:t.isProtected,dense:!0,onClick:function(e){l(),n(e)},"data-cy":"action-toggle-block",children:[(0,I.jsx)(cn.Z,{style:{minWidth:24,marginRight:8},children:(0,I.jsx)(le.default,{})}),(0,I.jsx)(sn.Z,{primary:r("common.delete")})]},"remove")}})}]})}mn.defaultProps={};var pn,fn,hn=t(92522),xn=t.n(hn),vn=t(65667),gn=t.n(vn),bn=t(88412),yn=t(32860),kn=t(5478),jn=t(98058),Zn=t(90760),Cn=t(31595),wn=t(18520);function Pn(e){var n=(0,p.useLocaleContext)().t;return(0,I.jsx)(dn.Z,{"data-cy":"rule-actions",actions:[function(t){var o=t.close;return(0,I.jsx)(Cn.Z,(0,i.Z)((0,i.Z)({},e),{},{children:function(t){var r=t.open;return(0,I.jsxs)(Oe.Z,{disabled:e.isProtected,dense:!0,onClick:function(e){o(),r(e)},"data-cy":"action-update-rule",children:[(0,I.jsx)(cn.Z,{style:{minWidth:24,marginRight:8},children:(0,I.jsx)(se.default,{})}),(0,I.jsx)(sn.Z,{primary:n("common.update")})]},"toggle-approval")}}))},function(t){var o=t.close;return(0,I.jsx)(wn.Z,(0,i.Z)((0,i.Z)({},e),{},{children:function(t){var r=t.open;return(0,I.jsxs)(Oe.Z,{disabled:e.isProtected,dense:!0,onClick:function(e){o(),r(e)},"data-cy":"action-toggle-block",children:[(0,I.jsx)(cn.Z,{style:{minWidth:24,marginRight:8},children:(0,I.jsx)(le.default,{})}),(0,I.jsx)(sn.Z,{primary:n("common.delete")})]},"toggle-approval")}}))}]})}function Ln(e){var n=e.domain,t=e.isHttps,o=e.toUrl,r=t?"https":"http",i=o;return xn()(i)||(i="".concat(r,"://").concat(n).concat(o)),(0,I.jsx)(g.Z,{href:i,target:"_blank",style:{fontSize:18},underline:"hover",children:o},i)}function En(e){var n=e.rules,t=e.blocklets,o=e.selectableBlocklets,r=e.parent,l=e.blockletDid,a=(0,p.useLocaleContext)(),c=a.t,s=a.locale,d=(0,Te.Z)(),u=(0,kn.uW)().recommendedDomainStatus||{},f=u.domain,h=void 0===f?"":f,v=t.reduce((function(e,n){return Object.assign(e,(0,Ce.Z)({},n.meta.did,n))}),{}),b=n.map((function(e){var n="blocklet"===e.to.type?e.to.did:l,t=v[n]||{meta:{}},o=t&&"running"===t.status&&u.accessible,r={id:"",to:{},title:"",items:[],depth:0,expand:!0,isProtected:!1,pathPrefix:"",domainAliases:[]};return Object.keys(e).forEach((function(n){Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n])})),(0,i.Z)((0,i.Z)({},r),{},{isHealthy:o,blocklet:t})})),y=[{width:20,render:function(e){var n=e.isHealthy?c("router.healthy.ok"):c("router.healthy.error");return(0,I.jsx)(Ge.Z,{title:n,children:(0,I.jsx)(jn.Z,{color:e.isHealthy?"success":"error"})})}},{render:function(e){var n=e.name,t=e.blocklet,o=function(){var e=n.replace(/\/$/,"")||"/";return(0,I.jsx)(x.Z,{maxWidth:400,px:2,overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",style:{color:"#222",fontSize:18},title:e,children:e})};return(0,I.jsxs)(I.Fragment,{children:[!u.accessible&&o(),u.accessible&&(0,I.jsx)("a",{target:"_blank",href:(0,yn.Sk)(h,n,(0,O.f0)(t,s)),rel:"noopener noreferrer",children:o()})]})}},{width:32,render:function(){return(0,I.jsx)(bn.Z,{style:{color:"#999"}})}},{render:function(e){var n=e.name,t=e.title,o=e.to,i=e.blocklet;if(o.type===Qe.ROUTING_RULE_TYPES.BLOCKLET&&!i)return null;var l="/blocklets/".concat(o.did,"/access"),a=(0,C.findComponentById)(i||{},o.componentId,{returnAncestors:!0})||{},d=a.component,p=a.ancestors;if(o.type===Qe.ROUTING_RULE_TYPES.BLOCKLET&&!d)return null;var f="";return o.type===Qe.ROUTING_RULE_TYPES.BLOCKLET&&o.componentId&&o.did!==o.componentId&&(f=p.concat(d).map((function(e){return(0,C.getDisplayName)(e,!0)})).join(" / ")),(0,I.jsxs)(I.Fragment,{children:[o.type===Qe.ROUTING_RULE_TYPES.BLOCKLET&&(0,I.jsx)(m.Link,{to:l,className:"arrow-name-right",children:(0,I.jsxs)(x.Z,{display:"flex",alignItems:"center",children:[(0,I.jsx)(Zn.Z,{blocklet:d,style:{marginRight:8},ancestors:p}),(0,I.jsx)("div",{style:{color:"#222",fontSize:18,minWidth:150},children:f||(0,C.getDisplayName)(i,!0)||t})]})}),o.type===Qe.ROUTING_RULE_TYPES.REDIRECT&&(0,I.jsx)(Ln,{domain:r.name,toUrl:o.url,isHttps:u.isHttps}),o.type===Qe.ROUTING_RULE_TYPES.NONE&&(0,I.jsx)(g.Z,{href:(0,yn.Sk)(h,n,(0,O.f0)(i,s)),target:"_blank",style:{fontSize:18},underline:"hover",children:c("common.page404")})]})}},{render:function(e){var n=e.isProtected,t=e.to,a=(0,I.jsx)(Ge.Z,{title:c("blocklet.router.urlLockTooltip"),placement:"top",children:(0,I.jsx)(He.Z,{disabled:!0,size:"large",style:{pointerEvents:"auto",paddingTop:0,paddingBottom:0,margin:"12px 0"},children:(0,I.jsx)(Xe.Z,{style:{fill:d.palette.text.disabled}})})});return n||(a=(0,I.jsx)(Pn,(0,i.Z)((0,i.Z)({},(0,i.Z)((0,i.Z)({},e),{},{parent:r,blockletDid:l,blocklets:o})),{},{did:t.did,teamDid:l}))),(0,I.jsx)(Ae.Z,{permission:"mutate_router",children:(0,I.jsx)("div",{style:{textAlign:"right"},children:a})})}}];return(0,I.jsx)(oe,{className:gn()("blocklet-list",{"show-pagination":b.length>20}),children:(0,I.jsx)(te.ZP,{data:b,icons:(0,i.Z)({},be),columns:y,options:{pageSize:20,header:!1,emptyRowsWhenPaging:!1}})})}function Sn(e){var n=e.domain,t=e.href,o=e.children,r=(0,s.useContext)(p.LocaleContext).t,i=(0,kn.uW)().status[n];return!i||i.loading?(0,I.jsxs)(On,{children:[o,(0,I.jsx)(Ge.Z,{title:r("blocklet.router.checkUrlAccessible"),placement:"top-end",children:(0,I.jsx)("span",{className:"status",children:(0,I.jsx)(v.default,{size:12})})})]}):i.accessible?(0,I.jsx)(On,{children:(0,I.jsx)("a",{href:t,target:"_blank",rel:"noopener noreferrer",children:o})}):(0,I.jsx)(On,{children:(0,I.jsx)(Ge.Z,{title:r("blocklet.router.urlInaccessible"),placement:"top-end",children:(0,I.jsx)("span",{children:o})})})}Pn.defaultProps={isProtected:!1},Ln.defaultProps={isHttps:!1},En.defaultProps={rules:[],blocklets:[],selectableBlocklets:[],parent:{}};var On=d.default.span(pn||(pn=(0,r.Z)(["\n &,\n & > * {\n color: #222;\n font-size: 18px;\n }\n\n .status {\n margin-left: 8px;\n }\n"])));function Tn(e){var n=e.blocklet,t=(0,s.useContext)(p.LocaleContext),o=t.t,r=t.locale,l=(0,nn.lX)(),a=l.siteMap,c=l.getBlockletUrl,d=(0,en.y0)().data,m=(0,u.s0)(),f=(0,Te.Z)(),h=n.meta.did,v=d.map((function(e){return{meta:{did:e.meta.did,bundleDid:e.meta.bundleDid,name:(0,C.getDisplayName)(e),version:e.meta.version,interfaces:e.meta.interfaces,logo:e.meta.logo},port:e.port,ports:e.ports,status:e.status,source:e.source,deployedFrom:e.deployedFrom,children:e.children}})),g=a[h];if(!g)return null;var b=g.domainAliases,y={};b.forEach((function(e){y[e.value]=c({did:h,domain:e,siteMap:a,params:(0,O.f0)(n,r)})}));var k=g.rules.filter((function(e){return!(e.name.includes(Qe.WELLKNOWN_PATH_PREFIX)&&e.isProtected)})).sort((function(e,n){return e.to.did===h&&n.to.did!==h?-1:e.to.did!==h&&n.to.did===h?1:0})),Z=v;return k.some((function(e){return e.to.did===h}))&&(Z=v.filter((function(e){return e.meta.did!==h}))),(0,I.jsxs)(Bn,{children:[(0,I.jsxs)(x.Z,{display:"flex",justifyContent:"space-between",alignItems:"center",children:[(0,I.jsx)("div",{className:"title",children:o("common.domain")}),(0,I.jsxs)(x.Z,{display:"flex",alignItems:"center",children:[(0,I.jsx)(ln.Z,(0,i.Z)((0,i.Z)({},g),{},{teamDid:h,children:function(e){var t=e.open;return(0,I.jsx)(Je.Z,{variant:"outlined",disabled:(0,O.n2)(n.status),menuButtonProps:{"data-cy":"trusted-issuers-more"},menu:(0,I.jsx)(Je.Z.Item,{"data-cy":"config-show-issue-passport",onClick:function(){return m("/settings/cert?did=".concat(n.meta.did))},children:(0,I.jsx)(x.Z,{display:"flex",alignItems:"center",children:(0,I.jsx)(x.Z,{children:o("router.certSetting")})})}),children:function(){return(0,I.jsxs)(j.default,{onClick:t,"data-cy":"update-domain-security",children:[(0,I.jsx)(Ye.Z,{style:{height:"1em",marginRight:4}}),o("blocklet.router.securitySetting")]})}})}})),(0,I.jsx)(on.Z,{id:g.id,title:o("router.domain.add.title"),teamDid:h,children:function(e){var t=e.open;return(0,I.jsxs)(j.default,{style:{marginLeft:16},variant:"contained",color:"primary","data-cy":"add-domain-alias",onClick:t,disabled:(0,O.n2)(n.status),children:[(0,I.jsx)(re.Z,{style:{fontSize:"1.3em",marginRight:4}}),o("common.add")]})}})]})]}),"running"!==n.status&&(0,I.jsx)(x.Z,{my:1,children:(0,I.jsx)(qe.Z,{severity:"warning",children:o("blocklet.router.noRunning")})}),b.map((function(e){return(0,I.jsxs)(x.Z,{display:"flex",alignItems:"center",justifyContent:"space-between",mt:1,children:[(0,I.jsxs)(x.Z,{display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,I.jsx)(tn.Z,{type:"domain",name:e.value,filters:["domain"]},"".concat(e.value,"-domain")),(0,I.jsx)(x.Z,{ml:2,mr:.5,children:(0,I.jsx)(Sn,{href:y[e.value],domain:e.value,target:"_blank",children:e.value})}),(0,I.jsx)(tn.Z,{type:"domain",name:e.value,filters:["http"]},"".concat(e.value,"-http")),(0,I.jsx)("span",{style:{marginLeft:12}}),(0,I.jsx)(an.Z,{domain:e.value,children:function(e){var n=e.open;return(0,I.jsx)(j.default,{size:"small",onClick:function(e){return n(e)},children:o("router.cert.genLetsEncryptCert.title")})}})]}),(0,I.jsx)(Ae.Z,{permission:"mutate_router",children:e.isProtected?(0,I.jsx)(Ge.Z,{title:o("blocklet.router.domainLockTooltip"),placement:"top",children:(0,I.jsx)(He.Z,{disabled:!0,size:"large",style:{pointerEvents:"auto",paddingTop:0,paddingBottom:0,margin:"12px 0"},children:(0,I.jsx)(Xe.Z,{style:{fill:f.palette.text.disabled}})})}):(0,I.jsx)(mn,{site:g,domain:e,blocklet:n})})]},e.value)})),!b.length&&(0,I.jsx)(x.Z,{mt:4,children:(0,I.jsx)($e.default,{children:o("common.empty")})}),(0,I.jsxs)(x.Z,{display:"flex",justifyContent:"space-between",alignItems:"center",mt:3,children:[(0,I.jsx)("div",{className:"title",children:o("blocklet.router.urlPath")}),(0,I.jsx)(x.Z,{display:"flex",alignItems:"center",children:(0,I.jsx)(Ae.Z,{permission:"mutate_blocklet",children:(0,I.jsx)(rn.Z,{id:g.id,blocklets:Z,teamDid:h,children:function(e){var t=e.open;return(0,I.jsxs)(j.default,{style:{marginLeft:16},variant:"contained",color:"primary","data-cy":"add-rule",onClick:t,disabled:(0,O.n2)(n.status),children:[(0,I.jsx)(re.Z,{style:{fontSize:"1.3em",marginRight:4}}),o("common.add")]})}})})})]}),!!k.length&&(0,I.jsx)(En,{rules:k,blocklets:v,selectableBlocklets:Z,parent:g,blockletDid:n.meta.did}),!k.length&&(0,I.jsx)(x.Z,{mt:4,children:(0,I.jsx)($e.default,{children:o("common.empty")})})]})}var _n,Bn=d.default.div(fn||(fn=(0,r.Z)(["\n .title {\n font-size: 1.2rem;\n font-weight: bold;\n color: #222222;\n }\n"]))),In=t(68079),Nn=t(60451),Dn=t.n(Nn),Rn=t(84636),Un=t(59071),An=t(38357),zn=t(96074),Fn=t(46973),Mn=t(90151),Kn=t(85385),Wn=t(55829),Vn=t(11909),qn=t(3994),Yn=t(6698),Gn=t(23038),Hn=t(60032),Xn=t(96582),$n=t(12700),Jn=t.n($n),Qn=t(43260),et=t.n(Qn),nt=t(60523),tt=t.n(nt),ot=t(47768),rt=t(62068),it=t(72807),lt=t(1437),at=t(75255),ct=t(90445),st=t(71464),dt=t(37327),ut=t(25611),mt=t(23426),pt=t(71927),ft=t(93702),ht=t(5907),xt=t(978),vt=t(30740);function gt(e){var n,t=e.defaultValue,o=e.onChange,r=e.loading,l=e.children,a=e.extra,d=(0,p.useLocaleContext)().t,u=(0,Re.h6)().info,m=(0,s.useState)(!1),h=(0,c.Z)(m,2),x=h[0],v=h[1],g=(0,s.useRef)(null),b=(0,s.useState)(t),y=(0,c.Z)(b,2),k=y[0],Z=y[1];return(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(Pt,{children:[(0,I.jsx)(j.default,{ref:g,color:"secondary","data-cy":"add-component-select-store",endIcon:(0,I.jsx)(xe.Z,{color:"secondary"}),onClick:function(){v(!0)},style:{padding:"0 2px"},children:(0,I.jsx)(f.Z,{color:"secondary",children:k.name})}),(0,I.jsx)(f.Z,{color:"secondary",children:a})]}),(0,I.jsxs)(Se.Z,{id:"mui-registry-select",select:!0,autoComplete:"off",variant:"outlined",name:"did",helperText:d("blocklet.component.selectRegistryTip"),"data-cy":"component-registry-select",fullWidth:!0,value:k,autoFocus:!0,onChange:function(e){var n=e.target.value;Z(n),o(n)},SelectProps:{open:x,MenuProps:{anchorEl:g.current},renderValue:function(e){return null===e||void 0===e?void 0:e.name},onClose:function(){v(!1)}},style:{display:"none"},margin:"normal",children:[null===u||void 0===u||null===(n=u.blockletRegistryList)||void 0===n?void 0:n.map((function(e){return(0,I.jsx)(Oe.Z,{value:e,"data-cy":e.url,children:(0,I.jsx)(xt.T,(0,i.Z)((0,i.Z)({},e),{},{reloadPage:!1,onDelete:function(){var n;localStorage.getItem("blocklet-add-component-registry")===e.url&&(localStorage.removeItem("blocklet-add-component-registry"),Z(null===u||void 0===u||null===(n=u.blockletRegistryList)||void 0===n?void 0:n[0]))}}))},e.url)})),(0,I.jsx)(vt.Z,{disabled:r,reloadPage:!1})]}),l({currentRegistry:k})]})}gt.defaultProps={defaultValue:{},onChange:function(){},loading:!1,extra:""};var bt,yt,kt,jt,Zt,Ct,wt,Pt=d.default.div(_n||(_n=(0,r.Z)(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n\n span {\n font-size: 16px;\n color: ",";\n // font-weight: bold;\n }\n"])),(function(e){return e.theme.palette.common.black})),Lt=t(96805),Et=t(47334),St=["name","validation"],Ot=["default","key"],Tt=function(e){return e.inStore&&!1===(0,C.isFreeBlocklet)(e)},_t=function(e){return(e.environments||[]).some((function(e){return e.required}))},Bt=function(e,n){return null===e||void 0===e?void 0:e.some((function(e){return e.required&&!n[e.key]}))},It=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.title||e.name},Nt=(0,s.forwardRef)((function(e,n){var t=e.meta,o=e.isMobile,r=e.onStepChange,l=(0,st.useStepContext)(),a=l.steps,c=l.activeStep,d=l.setActiveStepByKey,u=l.setActiveStepByIndex,m=(0,p.useLocaleContext)(),f=m.t,h=m.locale,x=a[c];return(0,s.useEffect)((function(){r(c)}),[r,c]),(0,s.useImperativeHandle)(n,(function(){return{setActiveStepByKey:d,setActiveStepByIndex:u}})),(0,I.jsx)(Mt,{component:"div",className:o?"mobileStyle":"",children:(0,I.jsx)(ct.Z,{locale:h,blockletMeta:(0,i.Z)({title:" "},t),pcWidth:"100%",pcHeight:"100%",logoUrl:t&&t.logo&&t.registryUrl?(0,O.aZ)({did:t.did,baseUrl:t.registryUrl,logoPath:t.logo}):null,stepTip:f("blocklet.component.add"),children:(0,I.jsx)(zt,{children:null!==x&&void 0!==x&&x.body&&"function"===typeof x.body?x.body():x.body})})})}));function Dt(e){var n,t,o,r,d=e.blocklet,u=e.children,m=(0,p.useLocaleContext)(),f=m.t,h=m.locale,x=(0,s.useState)(!1),g=(0,c.Z)(x,2),b=g[0],y=g[1],L=(0,s.useState)(null),E=(0,c.Z)(L,2),S=E[0],T=E[1],_=(0,s.useState)(""),B=(0,c.Z)(_,2),N=B[0],D=B[1],R=(0,s.useState)(""),U=(0,c.Z)(R,2),A=U[0],z=U[1],F=(0,s.useState)([]),K=(0,c.Z)(F,2),W=K[0],V=K[1],q=(0,Re.h6)(),Y=q.api,G=q.info,H=(0,s.useState)(null),X=(0,c.Z)(H,2),$=X[0],J=X[1],Q=(0,s.useState)(!1),ee=(0,c.Z)(Q,2),ne=ee[0],te=ee[1],oe={bundleDid:"",componentDid:"",componentName:"",pathPrefix:"",name:"",title:"",configsList:[],configsValue:{},hasMissRequiredConfigs:!1,hasEnvironmentsStep:!1,hasRequiredEnvironments:!1,requirePurchase:!1,installResultProps:{},purchaseResultProps:{},showFromUrlDialog:!1},re=(0,s.useState)(oe),le=(0,c.Z)(re,2),ae=le[0],ce=le[1],se=(0,s.useState)(0),de=(0,c.Z)(se,2),ue=de[0],me=de[1],pe=(0,s.useRef)({}),fe=(0,s.useRef)({}),he=(0,s.useRef)({}),xe=(0,at.Z)((function(e){return e.breakpoints.down("md")})),ve=pe.current.meta,ge=(fe.current||{}).setActiveStepByIndex,be=function(e){return ce((function(n){return(0,i.Z)((0,i.Z)({},n),e)}))};(0,s.useEffect)((function(){if(ae.pathPrefix){var e=we((0,i.Z)((0,i.Z)({},ae),{},{pathPrefix:ae.pathPrefix,locale:h})).errMsg;D(e)}}),[ae.pathPrefix]),(0,s.useEffect)((function(){0===ue&&ce(oe)}),[ue]);var ye=function(){var e;return null!==pe&&void 0!==pe&&null!==(e=pe.current)&&void 0!==e&&e.meta?(0,C.getDisplayName)(pe.current):""},ke=function(e){be({installResultProps:{variant:"error",title:ye(),subTitle:e,footer:(0,I.jsx)(j.default,{className:"bottom-button","data-cy":"retry-install-component",onClick:function(){be({installResultProps:{}}),Ce(pe.current.installInput)},children:f("common.retry")})}})},je=function(e){return function(n){var t,o;((null===n||void 0===n||null===(t=n.meta)||void 0===t?void 0:t.did)||(null===n||void 0===n?void 0:n.meta))===(null===d||void 0===d||null===(o=d.meta)||void 0===o?void 0:o.did)&&e(n)}};(0,Ue.mU)(Z.BlockletEvents.statusChange,je((function(e){if(e.status===Z.BlockletStatus.upgrading)be({installResultProps:{variant:"success",title:ye(),subTitle:f("blocklet.component.installSuccessTip")}})}))),(0,Ue.mU)(Z.BlockletEvents.downloadFailed,je((function(){ke(f("blocklet.component.installComponentError"))}))),(0,Ue.mU)(Z.BlockletEvents.installFailed,je((function(){ke(f("blocklet.component.installComponentError"))})));var Ze=function(){y(!1),z(!1),ce({}),pe.current={}},Ce=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){var t,o,r,a,c,s,u,m,p,f,h,x,v,g,b,k,j,Z,C,w,P;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=ae.pathPrefix,a=ae.bundleDid,c=ae.title,s=ae.componentName,u=void 0===s?"":s,m=ae.componentDid,p=void 0===m?"":m,f=(null===(t=pe.current)||void 0===t?void 0:t.meta)||{},h=f.configs,x=void 0===h?[]:h,v=f.registryUrl,g=f.inStore,b=f.inputUrl,k=null===(o=pe.current)||void 0===o?void 0:o.downloadToken,j=g?(0,O.Rn)(v,a):b,y(!0),Z=(0,i.Z)((0,i.Z)((0,i.Z)({rootDid:d.meta.did,url:j,mountPoint:r,title:c,name:u,did:p},ae.hasEnvironmentsStep&&x.length>0?{configs:x.map((function(e){return(0,i.Z)((0,i.Z)({},e),{},{value:ae.configsValue[e.key]||""})}))}:{}),k?{downloadToken:k}:{}),n),e.prev=6,e.next=9,Y.installComponent({input:Z});case 9:if(!v){e.next=14;break}if(C=(0,O.GI)(v,G.blockletRegistryList),w=C.isNew,P=C.decoded,!w){e.next=14;break}return e.next=14,Y.addBlockletStore({input:{url:P}});case 14:e.next=21;break;case 16:e.prev=16,e.t0=e.catch(6),Ie.ZP.error(e.t0.message),console.error("installComponent error: ",e.t0),ke(e.t0.message);case 21:return e.prev=21,y(!1),pe.current.installInput=Z,e.finish(21);case 25:case"end":return e.stop()}}),e,null,[[6,16,21,25]])})));return function(n){return e.apply(this,arguments)}}(),we=function(e){var n,t;return{errMsg:(0,Lt.Rw)({params:(0,i.Z)((0,i.Z)({},e),{},{did:e.bundleDid}),blocklets:(null===(n=pe.current)||void 0===n||null===(t=n.blocklets)||void 0===t?void 0:t.map((function(e){return{meta:e}})))||[],blocklet:d,locale:h})}},Pe=function(e){var n=we((0,i.Z)((0,i.Z)({},ae),{},{locale:h})).errMsg;D(n),ue===_e.length-2&&(be({installResultProps:{}}),Ce(e)),ge((function(e){return e+1}))},Le=function(){ge((function(e){return e-1}))},Ee=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(){var n,t,o,r,i,a,c,s,u,m,p,f,h,x;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=ae.pathPrefix,t=ae.bundleDid,o=ae.title,r=ae.componentName,i=void 0===r?"":r,a=ae.componentDid,c=void 0===a?"":a,s=pe.current||{},u=s.meta,p=(m=void 0===u?{}:u).registryUrl,f=m.inStore,h=m.inputUrl,x=f?(0,O.Rn)(p,t):h,J({meta:m,installOpts:{type:"component",rootDid:d.meta.did,mountPoint:n,url:x,title:o,name:i,did:c}});case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),Te=function(e){var n,t,o,r,l=e.chooseParams,a=void 0===l?pe.current:l,c=e.componentDid,s=e.isInit,u=void 0!==s&&s,m=a.meta,p=a.registryUrl,f=a.inStore,h=a.inputUrl,x=m.did,v=m.title,g=m.name,b=((null===(n=d.settings)||void 0===n?void 0:n.children)||[]).filter((function(e){return"deleted"===e.status&&e.meta.bundleDid===x})).sort((function(e,n){return new Date(e.deletedAt)>new Date(n.deletedAt)?-1:1}));V(b);var y=c||(null===(t=b[0])||void 0===t||null===(o=t.meta)||void 0===o?void 0:o.did)||"",k=null===(r=m.environments)||void 0===r?void 0:r.map((function(e){var n=e.name,t=e.validation,o=(0,w.Z)(e,St),r={validation:tt()(t)?"":t,custom:!1};return(0,i.Z)((0,i.Z)({},o),{},{key:n},r)}));pe.current=(0,i.Z)((0,i.Z)({},a),{},{meta:(0,i.Z)((0,i.Z)({},m),{},{configs:k,registryUrl:p,inStore:f,inputUrl:h})});var j={};if(u){var P=[d],L=k||[],E=Jn()(et()([].concat((0,In.Z)(L),[])),"key").filter((function(e){return!!e.key})).sort((function(e,n){return e.required&&!n.required?-1:n.required&&!e.required?1:0})),S=(0,C.getSharedConfigObj)({configs:E},P),O={},T=E.map((function(e){var n=e.default,t=e.key,o=(0,w.Z)(e,Ot);return O[t]=S[t]||n,(0,i.Z)((0,i.Z)({},o),{},{key:t,hidden:!!Z.BLOCKLET_CONFIGURABLE_KEY[t]})}));j=(0,i.Z)((0,i.Z)({},j),{},{configsList:T,configsValue:O,hasMissRequiredConfigs:Bt(T,O)})}if(y&&"_empty_"!==y){var _=b.find((function(e){return e.meta.did===y}));j=(0,i.Z)((0,i.Z)({},j),{},{pathPrefix:null===_||void 0===_?void 0:_.mountPoint,title:null===_||void 0===_?void 0:_.meta.title,componentName:null===_||void 0===_?void 0:_.meta.name,hasEnvironmentsStep:!1})}else{var B,I;j=(0,i.Z)((0,i.Z)({},j),{},{pathPrefix:"/".concat((0,C.urlFriendly)(g)),title:v||"",componentName:"",hasEnvironmentsStep:(null===(B=pe.current.meta)||void 0===B||null===(I=B.environments)||void 0===I?void 0:I.length)>0})}var N=Tt(pe.current.meta);be((0,i.Z)((0,i.Z)({bundleDid:x,componentDid:y},j),{},{hasRequiredEnvironments:_t(pe.current.meta),requirePurchase:N})),u&&N&&Ee()},_e=[{key:"selectComponent",name:f("blocklet.component.selectComponent"),body:(0,I.jsxs)(At,{component:"div",children:[ae.showFromUrlDialog&&(0,I.jsx)(ft.Z,{mode:"component",onCancel:function(){be({showFromUrlDialog:!1})},onSuccess:function(e){var n=e.meta,t=e.inputUrl,o=e.inStore,r=e.registryUrl;Te({chooseParams:{meta:n,inputUrl:t,inStore:o,registryUrl:r},isInit:!0}),be({showFromUrlDialog:!1}),Pe()},handleText:{title:f("blocklet.component.addComponentTip.fromUrl"),confirm:f("blocklet.component.choose")}}),(0,I.jsx)(gt,{extra:(0,I.jsxs)(j.default,{variant:"text",color:"primary","data-cy":"add-component-from-url",onClick:function(){be({showFromUrlDialog:!0})},style:{padding:"0 2px"},children:[(0,I.jsx)(lt.Z,{style:{fontSize:20,marginRight:4}})," ",f("blocklet.component.addComponentTip.fromUrl")," "]}),loading:b,defaultValue:localStorage.getItem("blocklet-add-component-registry")&&G.blockletRegistryList.find((function(e){return localStorage.getItem("blocklet-add-component-registry")===e.url}))||G.blockletRegistryList.find((function(e){return e.selected})),onChange:function(e){ce({}),pe.current={},localStorage.setItem("blocklet-add-component-registry",e.url)},children:function(e){var n=e.currentRegistry;return(0,I.jsx)(ht.Z,{style:xe?{height:"calc(100vh - 56px - 80px - 32px - 40px )"}:{height:"calc(100% - 40px)"},handleBlockletRegistry:n.url,handleButtonText:function(e){var n=e.meta,t=e.state,o=!(null===t||void 0===t||!t.status);return Tt(n)&&!o?f("common.purchase"):f("blocklet.component.choose")},handleButtonClick:function(e){Te({chooseParams:(0,i.Z)((0,i.Z)({},e),{},{inStore:!0}),isInit:!0})},handleBlockletRender:function(e){var n=e.blocklet,t=e.defaultRender,o=(null===ae||void 0===ae?void 0:ae.bundleDid)&&(null===ae||void 0===ae?void 0:ae.bundleDid)===(null===n||void 0===n?void 0:n.did);return(0,I.jsxs)(Wt,{children:[o&&(0,I.jsx)("div",{className:"check-container",children:(0,I.jsx)(ie.default,{className:"check-icon"})}),(0,I.jsx)("div",{className:o?"choose-blocklet":"",style:{marginLeft:16},children:t})]})},extraFilter:function(e){return null===e||void 0===e?void 0:e.filter((function(e){return!!(0,C.isComponentBlocklet)(e)}))}})}})]}),cancel:f("common.cancel"),confirm:It(ae)?f("blocklet.component.addNext",{name:It(ae)}):f("common.next"),onCancel:Ze,onConfirm:function(){Pe()}},{key:"agreement",name:f("launchBlocklet.introduction"),body:(0,I.jsxs)(At,{component:"div",className:"agreement-wrapper",children:[(0,I.jsx)(ot.Z,{title:f("launchBlocklet.introduction"),subTitle:f("blocklet.component.addComponentTip.introduction")}),(0,I.jsx)(pt.Z,{showPageHeader:!1,blocklet:ve?{meta:ve}:{},loading:!1,onClickNext:Pe,handleDescEle:(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)("p",{children:(0,I.jsx)("div",{dangerouslySetInnerHTML:{__html:f("blocklet.component.addComponentTip.".concat(ae.requirePurchase?"isPurchase":"isFree"),{name:ye()})}})}),(0,I.jsx)("p",{children:f("blocklet.component.addComponentTip.belowInformation")})]})})]}),cancel:f("common.pre"),confirm:f("launchBlocklet.next"),onCancel:Le,onConfirm:function(){te(!1),Pe()}},ve&&ae.requirePurchase&&{key:"purchase",name:(0,I.jsxs)(I.Fragment,{children:[f("common.verifyNFT"),(0,I.jsx)(dt.default,{})]}),body:(0,I.jsxs)(At,{component:"div",className:"flex-align-center",style:{flexDirection:"column"},children:[!(2===(null===(n=he.current)||void 0===n||null===(t=n.getCurrentStep)||void 0===t?void 0:t.call(n))||ne)&&(0,I.jsx)(Kt,{title:f("common.verifyNFT"),subTitle:f("blocklet.component.addComponentTip.verifyNFT")}),M()(ae.purchaseResultProps)?$&&(0,I.jsx)(Et.k4,{ref:he,meta:$.meta,mode:ae.componentDid?"verify":"both",onCancel:function(e){te(!1),be({purchaseResultProps:{variant:"error",title:ye(),subTitle:e,style:{paddingTop:120},footer:(0,I.jsx)(j.default,{className:"bottom-button","data-cy":"retry-purchase-component",onClick:function(){be({purchaseResultProps:{}})},children:f("common.retry")})}})},installOpts:$.installOpts,handlePaySuccess:function(e){var n=e.downloadToken;pe.current.downloadToken=n,te(!1),Pe()}}):(0,I.jsx)("div",{className:"flex-align-center flex-justify-center",children:(0,I.jsx)(mt.Z,(0,i.Z)({},ae.purchaseResultProps))})]}),disabled:2===(null===(o=he.current)||void 0===o||null===(r=o.getCurrentStep)||void 0===r?void 0:r.call(o))||ne,cancel:f("common.pre"),confirm:f("common.next"),onConfirm:function(){"function"===typeof he.current.onNext&&(he.current.onNext(),te(!0))},onCancel:function(){Le()}},{key:"config",name:f("common.config"),error:N,body:(0,I.jsxs)(At,{component:"div",children:[(0,I.jsx)(Kt,{title:f("common.config"),subTitle:f("blocklet.component.addComponentTip.config")}),!!ae.bundleDid&&!!W.length&&(0,I.jsxs)(Se.Z,{select:!0,label:f("blocklet.component.selectInstance"),autoComplete:"off",variant:"outlined",name:"did",helperText:f("blocklet.component.selectInstanceTip"),"data-cy":"component-instance-select",fullWidth:!0,value:ae.componentDid||"_empty_",onChange:function(e){Te({componentDid:e.target.value})},style:{marginBottom:32},margin:"normal",children:[(0,I.jsx)(Oe.Z,{value:"_empty_",children:f("blocklet.component.newInstance")},"_empty_"),W.map((function(e){return(0,I.jsxs)(Oe.Z,{value:e.meta.did,"data-cy":e.meta.did,children:[e.meta.title,(0,I.jsx)(P.Z,{style:{marginLeft:8},children:(0,O.B2)(e.deletedAt)})]},e.meta.did)}))]}),(0,I.jsx)(Se.Z,{label:f("blocklet.component.mountPoint"),autoComplete:"off",variant:"outlined",name:"pathPrefix",inputProps:{"data-cy":"mount-point-input"},fullWidth:!0,helperText:f("blocklet.component.mountPointTip"),style:{marginBottom:32},margin:"normal",value:ae.pathPrefix,onChange:function(e){var n=e.target.value;be({pathPrefix:n})}}),(0,I.jsx)(Se.Z,{label:f("common.title"),autoComplete:"off",variant:"outlined",fullWidth:!0,style:{marginBottom:32},margin:"normal",value:ae.title,helperText:f("blocklet.component.titleTip"),onChange:function(e){var n=e.target.value;ce((0,i.Z)((0,i.Z)({},ae),{},{title:n}))}}),!!N&&(0,I.jsx)(k.Z,{type:"error",style:{width:"100%",marginTop:8},children:N})]}),cancel:f("common.pre"),confirm:f("common.next"),onCancel:Le,onConfirm:function(){Pe()}},ve&&(null===ae||void 0===ae?void 0:ae.hasEnvironmentsStep)&&{key:"environment",name:(0,I.jsxs)(I.Fragment,{children:[f("common.environment")," ",ae.hasRequiredEnvironments&&(0,I.jsx)(dt.default,{})]}),disabled:!!S||(null===ae||void 0===ae?void 0:ae.hasMissRequiredConfigs),body:function(){return(0,I.jsxs)(At,{component:"div",children:[(0,I.jsx)(Kt,{title:f("common.environment"),subTitle:f("blocklet.component.addComponentTip.environment")}),(0,I.jsx)(Ne.Z,{style:{marginTop:-12,width:"100%"},schema:ae.configsList,defaultValue:ae.configsValue,onChange:function(e,n){var t=n.action,o=n.currentItem,r=n.allValues;"confirm"===t&&be({hasMissRequiredConfigs:Bt(ae.configsList,r),configsValue:r}),"edit"===t?T(o):["cancel","confirm"].includes(t)&&T(null)}})]})},cancel:f("common.pre"),confirm:f("common.next"),onCancel:Le,onConfirm:Pe},{key:"install",name:f("common.install"),disabled:!1,loading:!1,body:(0,I.jsx)(At,{component:"div",className:"flex-justify-center flex-align-center",style:{flexDirection:"column"},children:M()(ae.installResultProps)?(0,I.jsx)(ut.Z,{message:(0,I.jsx)(Vt,{children:f("blocklet.component.installingCanCloseWindowTip")}),increaseSpeed:.3,messageLoop:!1}):(0,I.jsx)("div",{style:{marginTop:120},children:(0,I.jsx)(mt.Z,(0,i.Z)({},ae.installResultProps))})}),confirm:f("common.complete"),onConfirm:function(){Ze(),setTimeout((function(){var e=document.getElementsByClassName("dashboard-main")[0];e&&(e.scrollTop=e.scrollHeight)}),200)}}].filter((function(e){return e})),Be=_e[ue]||{},De=function(e){e.stopPropagation(),z(!0)},Ae=ue<_e.length-1;return(0,I.jsxs)(I.Fragment,{children:["function"===typeof u?u({loading:b,open:De}):(0,I.jsxs)(Oe.Z,{onClick:De,className:"component-action","data-cy":"action-add-component",children:[b?(0,I.jsx)(v.default,{size:[16,10]}):(0,I.jsx)(lt.Z,{style:{fontSize:18,marginRight:5}}),f("blocklet.component.add")]}),A&&(0,I.jsx)(Ut,{title:f("blocklet.component.addWithName",{name:(0,C.getDisplayName)(d)}),maxWidth:!1,fullWidth:!1,PaperProps:{style:xe?{width:"100%",height:window.innerHeight}:{maxWidth:1350,minWidth:930,width:"80%"}},onClose:function(e,n){var t,o;"backdropClick"!==n&&(null===(t=_e[0])||void 0===t||null===(o=t.onCancel)||void 0===o||o.call(t))},showCloseButton:Ae,disableEscapeKeyDown:!0,open:!0,actions:(0,I.jsxs)(I.Fragment,{children:[Be.cancel&&(0,I.jsx)(j.default,{onClick:function(e){e.stopPropagation(),Be.onCancel()},color:"inherit",size:"small",children:Be.cancel||f("common.cancel")}),Be.confirm&&(0,I.jsxs)(j.default,{onClick:function(e){e.stopPropagation(),Be.onConfirm()},color:"primary",size:"small","data-cy":"submit-confirm-next",disabled:"boolean"===typeof Be.disabled?Be.disabled:!(!b&&!Be.error&&ae.bundleDid)||ue>0&&!ae.pathPrefix,variant:"contained",autoFocus:!0,title:Be.confirm,style:{marginLeft:8,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:"200px",display:"inline-block"},children:[("boolean"===typeof Be.loading?Be.loading:b)&&(0,I.jsx)(v.default,{size:[16,10]}),Be.confirm]})]}),children:(0,I.jsx)(st.StepProvider,{steps:_e,mode:"memory",children:(0,I.jsx)(Nt,{ref:fe,meta:ve,isMobile:xe,onStepChange:function(e){me(e)}})})})]})}Nt.defaultProps={meta:null},Dt.defaultProps={children:null};var Rt,Ut=(0,d.default)(rt.default)(bt||(bt=(0,r.Z)(["\n .MuiDialogContent-root {\n padding-left: 0;\n padding-right: 0;\n padding-bottom: 0;\n }\n .MuiDialogActions-root {\n padding: 16px 24px;\n }\n"]))),At=(0,d.default)(f.Z)(yt||(yt=(0,r.Z)(["\n width: 100%;\n height: 100%;\n"]))),zt=d.default.div(kt||(kt=(0,r.Z)(["\n padding: 34px 24px 24px;\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: flex-start;\n\n .bottom-button {\n min-width: 200px;\n }\n\n // blocklet-select-side\n aside {\n width: 140px;\n }\n"]))),Ft=function(e){return e.isMobile?"\n height: calc(100vh - 56px - 64px - 48px);\n ":""},Mt=(0,d.default)(it.Z)(jt||(jt=(0,r.Z)(["\n ","\n\n & .flex-justify-center {\n display: flex;\n justify-content: center;\n }\n\n & .flex-align-center {\n display: flex;\n height: 100%;\n align-items: center;\n ","\n }\n\n & .agreement-wrapper {\n ","\n max-height: 60vh;\n .eula-trigger {\n padding-right: 0;\n }\n .next-button {\n display: none;\n }\n }\n\n & .connect {\n background: white;\n }\n"])),(function(e){return"mobileStyle"===e.className?"\n & > div{\n height: 100%;\n }\n .root-header {\n .app-name-content {\n display: none;\n }\n }\n\n // content-panel\n .root-header + div{\n padding-top: 0;\n position: relative;\n & > div {\n padding-top: 0;\n }\n }\n\n ":"\n height: 72vh;\n position: relative;\n .root-header {\n z-index: auto !important;\n position: fixed !important;\n }\n & > div {\n height: 100%;\n width: 100%;\n max-width: 100%;\n & > div {\n max-height: unset !important;\n max-width: 100%;\n & > div {\n // left-panel\n &:first-child {\n padding-top: 0;\n // padding-left: 0;\n width: 25%;\n min-width: 240px;\n & > div:first-child {\n display: none;\n }\n // step\n & > div:last-child {\n // margin-top: 32px;\n margin-top: 0;\n }\n }\n // right-panel\n &:last-child {\n padding-top: 0;\n padding-right: 24px;\n overflow-y: auto;\n .app-content {\n padding: 0 0 24px 0;\n }\n .button-container {\n padding-right: 0;\n }\n }\n }\n }\n }\n\n "}),(function(e){return Ft(e)}),(function(e){return Ft(e)})),Kt=(0,d.default)(ot.Z)(Zt||(Zt=(0,r.Z)(["\n margin-bottom: 24px;\n"]))),Wt=d.default.div(Ct||(Ct=(0,r.Z)(["\n position: relative;\n\n .choose-blocklet {\n background-color: rgb(236, 251, 253);\n border-color: rgb(236, 251, 253);\n border-radius: 8px;\n }\n\n .check-container {\n position: absolute;\n right: 0;\n bottom: 0;\n display: flex;\n justify-content: flex-end;\n align-items: flex-end;\n width: 30px;\n height: 30px;\n border-radius: 0 0 8px 0;\n color: ",";\n overflow: hidden;\n transition: all ease 0.3s;\n &:after {\n position: absolute;\n z-index: 0;\n display: block;\n width: 0;\n height: 0;\n border-top: transparent solid 15px;\n border-left: transparent solid 15px;\n border-bottom: "," solid 15px;\n border-right: "," solid 15px;\n transition: all ease 0.1s;\n content: '';\n }\n\n .check-icon {\n position: relative;\n z-index: 2;\n margin: 0 1px 1px 0;\n font-size: 16px;\n transition: all ease 0.2s;\n }\n }\n"])),(function(e){return e.theme.palette.common.white}),(function(e){return e.theme.palette.primary.main}),(function(e){return e.theme.palette.primary.main})),Vt=d.default.div(wt||(wt=(0,r.Z)(["\n color: ",";\n .msg-before {\n display: inline-block;\n color: #aaa;\n font-size: 14px;\n margin-right: 6px;\n }\n"])),(function(e){return e.theme.palette.primary.main})),qt=t(33248),Yt=t(97517),Gt=t(49884),Ht=t(84318);function Xt(e){var n=e.component,t=e.remove,o=e.disabled,r=e.tip,d=(0,s.useContext)(p.LocaleContext).t,u=(0,s.useState)(!1),m=(0,c.Z)(u,2),h=m[0],x=m[1],v=(0,s.useState)(null),g=(0,c.Z)(v,2),b=g[0],y=g[1],k=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return x(!0),e.next=3,t(n.component,n.removeType);case 3:x(!1),y(null);case 5:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}(),j=o||h,Z=(0,I.jsx)(eo,{disabled:j,onClick:function(){return y({title:d("blocklet.component.delete"),description:function(e,n){return(0,I.jsxs)(f.Z,{component:"div",children:[(0,I.jsx)(f.Z,{gutterBottom:!0,children:d("blocklet.action.removeComponentDescription")}),(0,I.jsxs)(Yt.Z,{name:"removeType",value:e.removeType,onChange:function(t){return n((0,i.Z)((0,i.Z)({},e),{},{removeType:t.target.value}))},children:[(0,I.jsx)(Gt.Z,{value:"keepData",control:(0,I.jsx)(qt.Z,{}),label:d("blocklet.action.removeComponentKeepData")}),(0,I.jsx)(Gt.Z,{value:"complete",control:(0,I.jsx)(qt.Z,{}),label:d("blocklet.action.removeComponentComplete")})]})]})},confirm:d("common.confirm"),cancel:d("common.cancel"),params:{component:n,removeType:"keepData"},onConfirm:k,onCancel:function(){return y(null)}})},"data-cy":"delete-component-btn",children:(0,I.jsx)(le.default,{disabled:j})}),C=(0,I.jsx)(Ge.Z,{title:r||d("common.delete"),children:(0,I.jsx)("span",{children:Z})});return(0,I.jsxs)(I.Fragment,{children:[C,b&&(0,I.jsx)(Ht.Z,{title:b.title,description:b.description,confirm:b.confirm,cancel:b.cancel,params:b.params,onConfirm:b.onConfirm,onCancel:b.onCancel})]})}Xt.defaultProps={remove:function(){var e=(0,a.Z)((0,l.Z)().mark((function e(){return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),disabled:!1,tip:""};var $t,Jt,Qt,eo=(0,d.default)(He.Z)(Rt||(Rt=(0,r.Z)(["\n &.Mui-disabled {\n opacity: 0.5;\n }\n"]))),no=t(23176),to=t(57905),oo=t(74592),ro=["blocklet","ancestors","onChangeConfig","children"];function io(e){var n=e.blocklet,t=e.ancestors,o=e.onChangeConfig,r=e.children,d=(0,w.Z)(e,ro),u=(0,s.useState)(""),m=(0,c.Z)(u,2),f=m[0],h=m[1],x=(0,Re.h6)(),v=(0,s.useContext)(p.LocaleContext).t,g=[].concat((0,In.Z)(t.map((function(e){return e.meta.did}))),[n.meta.did]),b=function(e){Ie.ZP.success(v("blocklet.config.changedTip")),o(e)},y=(0,s.useMemo)((function(){return n.mode===Z.BLOCKLET_MODES.DEVELOPMENT}),[n.mode]),k=function(e){return e.custom},j=t.concat(n).map((function(e){return(0,C.getDisplayName)(e,!0)})).join(" / ");if((0,O.wS)(n.status))return null;if("unknown"===n.status&&(0,O.wS)(n.status))return null;var P=function(e){e.stopPropagation(),h(!0)},L=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){var t;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.key.trim()&&n.value.trim()){e.next=3;break}return Ie.ZP.error(v("blocklet.config.environment.keyValueRequired")),e.abrupt("return");case 3:if(!n.key.startsWith("BLOCKLET_")){e.next=6;break}return Ie.ZP.error(v("blocklet.config.environment.invalidKey")),e.abrupt("return");case 6:return n.custom=!0,e.next=9,x.api.configBlocklet({input:{did:g,configs:[n]}});case 9:"ok"===(t=e.sent).code&&b(t.blocklet);case 11:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}(),E=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n,t){var o,r,i;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!n.required||n.key.trim()&&n.value.trim()){e.next=3;break}return Ie.ZP.error(v("blocklet.config.environment.keyValueRequired")),e.abrupt("return");case 3:if(!n.key.startsWith("BLOCKLET_")||Z.BLOCKLET_CONFIGURABLE_KEY[n.key]){e.next=6;break}return Ie.ZP.error(v("blocklet.config.environment.invalidKey")),e.abrupt("return");case 6:if(n.key!==Z.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_CLUSTER_SIZE){e.next=11;break}if(!(o=(0,O.I)(n))){e.next=11;break}return Ie.ZP.error(o),e.abrupt("return");case 11:return r=[n],n.key!==t.key&&r.push({key:t.key}),e.prev=13,e.next=16,x.api.configBlocklet({input:{did:g,configs:r}});case 16:"ok"===(i=e.sent).code&&b(i.blocklet),e.next=23;break;case 20:e.prev=20,e.t0=e.catch(13),Ie.ZP.error((0,O.Z)(e.t0));case 23:case"end":return e.stop()}}),e,null,[[13,20]])})));return function(n,t){return e.apply(this,arguments)}}(),S=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){var t;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!n.required){e.next=3;break}return Ie.ZP.error(v("blocklet.config.environment.deleteForbidden")),e.abrupt("return");case 3:return e.next=5,x.api.configBlocklet({input:{did:g,configs:[{key:n.key}]}});case 5:"ok"===(t=e.sent).code&&b(t.blocklet);case 7:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}(),T=(n.configs||[]).filter((function(e){return!Z.BLOCKLET_CONFIGURABLE_KEY[e.key]})),_=(0,C.getSharedConfigObj)(n,t),B=(0,C.getComponentMissingConfigs)(n,t),N=T.map((function(e){return(0,i.Z)((0,i.Z)({},e),{},{value:_[e.key]||e.value})})),D=N.some((function(e){return e.key&&e.key.startsWith("BWA_")})),R={onRowAdd:L,onRowUpdate:E,onRowDelete:S,isDeletable:k};return["function"===typeof r?r({open:P}):(0,I.jsx)(He.Z,{onClick:P,"data-cy":"action-config-component",children:(0,I.jsx)(se.default,{})}),f&&(0,I.jsx)(uo,{open:!0,fullWidth:!0,maxWidth:"md",title:v("common.configuration"),onClose:function(){h(!1)},PaperProps:{style:{minHeight:"auto"}},children:(0,I.jsxs)(co,(0,i.Z)((0,i.Z)({component:"div"},d),{},{children:[!!B.length&&(0,I.jsx)(qe.Z,{severity:"error",style:{marginTop:24},children:v("blocklet.config.missingRequired")}),D&&(0,I.jsx)(qe.Z,{severity:"info",children:v("blocklet.config.environment.tip")}),(0,I.jsx)(Ae.Z,{permission:"mutate_blocklet",children:function(e){return(0,I.jsx)(oe,{className:y?"readonly-block config-table":"config-table","data-disabled-text":v("blocklet.config.disabledText"),children:(0,I.jsx)(te.ZP,{title:(0,I.jsx)("h4",{children:j}),columns:[{title:v("common.key"),field:"key",initialEditValue:"Key",width:"30%",render:function(e){return(0,I.jsx)(to.Z,{value:e.value,style:{color:e.required&&!e.value?"#ff4436":"#222222",fontWeight:e.required?"bold":"normal"},children:e.key})},editComponent:function(e){var n=e.value,t=e.rowData,o=e.onChange;return(0,I.jsx)(so,{children:(0,I.jsx)(Se.Z,{fullWidth:!0,size:"small",disabled:!1===k(t),value:n,onChange:function(e){return o(e.target.value)},variant:"outlined",label:"Key",placeholder:v("blocklet.config.environment.key"),margin:"dense",autoFocus:!0})})}},{title:v("common.value"),field:"value",initialEditValue:"Value",width:"calc((100% - (96px + 30%)) / 1)",render:function(e){return e.secure?"******":e.value?(0,I.jsx)(to.Z,{value:e.value,children:e.value}):null},editComponent:function(e){var n=e.value,t=e.rowData,o=e.onChange;return(0,I.jsxs)(so,{children:[(0,I.jsx)(Se.Z,{fullWidth:!0,size:"small",value:"__encrypted__"===n?"":n,onChange:function(e){return o(e.target.value)},variant:"outlined",label:v("common.value"),placeholder:v("blocklet.config.environment.value"),margin:"dense",autoFocus:!0}),t.description&&(0,I.jsx)("div",{style:{marginLeft:12},children:t.description})]})}}],icons:(0,i.Z)((0,i.Z)({},oo.Z),be),options:{emptyRowsWhenPaging:!1,actionsColumnIndex:-1,tableLayout:"auto",maxBodyHeight:"100%",paging:!1,search:!1},localization:{header:{actions:v("common.actions")},body:{emptyDataSourceMessage:v("common.noData")}},data:N,editable:e?R:{}})})}})]}))})]}io.defaultProps={onChangeConfig:function(){},ancestors:[],children:null};var lo,ao,co=(0,d.default)(f.Z)($t||($t=(0,r.Z)(["\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"])),(function(e){return e.theme.breakpoints.values.sm})),so=d.default.div(Jt||(Jt=(0,r.Z)(["\n height: 60px;\n"]))),uo=(0,d.default)(rt.default)(Qt||(Qt=(0,r.Z)(["\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"]))),mo=["blocklet","onChangeConfig","onUpdate"],po=function(e,n){return e?[{name:n("common.name"),value:e.displayName},{name:n("common.description"),value:e.description},{name:n("common.version"),value:(0,I.jsx)(Hn.Z,{children:e.version})}]:[]};function fo(e){var n,t=e.blocklet,o=e.ancestors,r=e.depth,i=e.onRemove,l=(0,s.useContext)(p.LocaleContext),a=l.t,d=l.locale,u=(0,nn.lX)(),m=u.siteMap,f=u.getBlockletUrl,h=(0,s.useState)(!0),g=(0,c.Z)(h,2),b=g[0],y=g[1],k=(0,s.useState)(),j=(0,c.Z)(k,2),Z=j[0],w=j[1],P=(0,kn.uW)().recommendedDomainStatus||{},_=P.domain,B=void 0===_?"":_,N=(0,Xn.K)().deletingBlocklets,D=t.status;r<=1&&N.includes(t.meta.did)&&(D="deleting");var R,U="/".concat(o.map((function(e){return e.mountPoint||"/"})).join("/"),"/").concat(t.mountPoint||"/").replace(/\/+/g,"/"),A=!!o.length&&["downloading","deleting","starting"].includes(D),z=r>0&&t.children.length>0,F=(0,I.jsx)(He.Z,{size:"small",children:b?(0,I.jsx)(Gn.default,{fontSize:"inherit"}):(0,I.jsx)(pe.default,{fontSize:"inherit"})}),M=o[0]||t,K=f({did:M.meta.did,domain:{value:B},mountPoint:U,siteMap:m,params:(0,O.f0)(M,d)}),V=Z?function(e){var n=e.source,t=e.deployedFrom,o=e.bundleSource;return n?{source:n,deployedFrom:t}:o?o.url?{source:"url",deployedFrom:t||Array.isArray(o.url)?o.url[0]:o.url}:o.store?{source:"registry",deployedFrom:t||Array.isArray(o.store)?o.store[0]:o.store}:{}:{source:"upload",deployedFrom:t}}(Z):{},q=Z?[{name:a("common.name"),value:(0,C.getDisplayName)(Z,!0)},{name:a("common.version"),value:(0,I.jsx)(T.Z,{blocklet:Z,checkUpgrade:!1})},{name:a("common.status"),value:(0,I.jsx)(S.Z,{status:D,source:Z.source})},{name:a("common.mountPoint"),value:U},{name:a("common.group"),value:(0,I.jsx)(Hn.Z,{type:"success",children:Z.meta.group})},{name:a("blocklet.overview.source"),value:(0,I.jsx)($,{sourceInfo:V,blocklet:t})},{name:a("blocklet.overview.deployedFrom"),value:V.deployedFrom||"-"},{name:a("common.did"),value:(0,I.jsx)(E.Z,{did:Z.meta.did})},{name:a("common.author"),value:(0,O.rq)(Z.meta.author)},{name:a("common.runtimeInfo"),value:(0,I.jsx)(W,{blocklet:Z,noRunningMessage:a("--")})},{name:a("common.engine"),value:po(Z.engine,a).map((function(e){var n=e.name,t=e.value;return(0,I.jsx)(L.Z,{style:{marginBottom:4},nameWidth:120,name:n,children:t},n)}))}].filter(Boolean):[],Y="";return 1===r&&t.dynamic?((0,O.n2)(M.status)||1===r&&N.includes(t.meta.did))&&(Y=a("blocklet.component.tip.stopBlocklet")):Y=a("blocklet.component.tip.notDynamic"),[(r>0||"gateway"!==t.meta.group)&&(0,I.jsxs)(x.Z,{display:"flex",py:2,className:"component-item",justifyContent:"space-between",alignItems:"center",children:[(0,I.jsxs)(x.Z,{pl:Math.max(2*(r-1),0),width:{xs:300,md:400},display:"flex",alignItems:"center",style:{cursor:z?"pointer":"cursor"},onClick:function(){return z&&y(!b)},children:[z?F:(0,I.jsx)(x.Z,{width:28}),(0,I.jsx)(Zn.Z,{blocklet:t,ancestors:o}),(0,I.jsxs)(x.Z,{ml:"16px",children:[(0,I.jsx)(x.Z,{style:{color:"#222",fontSize:18},children:(0,C.getDisplayName)(t,!0)}),(0,I.jsxs)(x.Z,{display:"flex",alignItems:"center",children:[(0,I.jsx)(T.Z,{blocklet:t,checkUpgrade:!1}),(0,I.jsx)(no.Z,{style:{marginLeft:4},mode:t.mode||""}),A&&(0,I.jsx)(S.Z,{style:{marginLeft:4},status:D,source:t.source})]})]})]},t),(0,I.jsx)(x.Z,{sx:{display:{xs:"none",md:"flex"}},alignItems:"center",flexGrow:"1",children:(0,I.jsx)("a",{target:"_blank",href:K,rel:"noopener noreferrer",title:K,children:(0,I.jsx)(x.Z,{maxWidth:400,sx:{color:"secondary.main",fontSize:18,px:2},overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",children:U})})},U),(0,I.jsxs)(x.Z,{children:[(0,I.jsx)(Ge.Z,{title:a("common.visit"),children:(0,I.jsx)("a",{target:"_blank",href:K,rel:"noopener noreferrer",title:K,children:(0,I.jsx)(He.Z,{children:P.loading?(0,I.jsx)(v.default,{size:12}):(0,I.jsx)(Vn.Z,{})})})}),(0,I.jsx)(Ge.Z,{title:a("common.overview"),children:(0,I.jsx)(He.Z,{onClick:function(){return w(t)},children:(0,I.jsx)(Wn.Z,{})})}),(0,I.jsx)(io,{blocklet:t,ancestors:o,children:function(e){var n=e.open;return(0,I.jsx)(Ge.Z,{title:a("common.config"),children:(0,I.jsx)(ho,{color:"error",badgeContent:"",variant:"dot",invisible:!(0,C.getComponentMissingConfigs)(t,o).length,children:(0,I.jsx)(He.Z,{onClick:n,children:(0,I.jsx)(Kn.Z,{})})})},"config")}}),(0,I.jsx)(Xt,{blocklet:M,component:t,remove:i,disabled:!!Y,tip:Y})]},"actions")]},"group-not-gateway-box"),(0,I.jsx)(x.Z,{ml:Math.max(2*(r-1),0),sx:{borderBottom:1,borderColor:"rgba(0,0,0,0.12)"}},"group-collapse-box"),null!==(n=t.children)&&void 0!==n&&n.length?(0,I.jsx)(Yn.Z,{in:b,children:t.children.map((function(e){return(0,I.jsx)(fo,{blocklet:e,ancestors:[].concat((0,In.Z)(o),[t]),depth:r+1,onRemove:i},"".concat(r+1,"-").concat(e.meta.did))}))},"blocklet-collapse"):null,!!Z&&(0,I.jsx)(Rn.Z,{open:!0,fullWidth:!0,maxWidth:"md",onClose:function(){w(null)},children:(0,I.jsxs)(x.Z,{paddingY:1.5,children:[(0,I.jsx)(An.Z,{children:a("common.componentBasicInfo")}),(0,I.jsx)(Un.Z,{children:(R=q,R.map((function(e){return e.name===a("common.did")||e.name===a("blocklet.appId")?(0,I.jsx)(L.Z,{valueComponent:"div",nameWidth:120,name:e.name,nameFormatter:function(){return e.name},children:e.value},e.name):(0,I.jsx)(L.Z,{valueComponent:"div",nameWidth:120,name:e.name,children:e.value},e.name)})))})]},"dialog-wrapper")},"base-info-dialog")]}fo.defaultProps={ancestors:[],depth:0,onRemove:function(){}};var ho=(0,d.default)(Mn.Z)(lo||(lo=(0,r.Z)(["\n .BaseBadge-badge {\n top: ","px;\n right: ","px;\n }\n"])),(function(e){return 8*e.top||6}),(function(e){return 8*e.right||6}));function xo(e){var n,t=e.blocklet,o=(e.onChangeConfig,e.onUpdate,(0,w.Z)(e,mo)),r=(0,s.useContext)(p.LocaleContext).t,d=(0,Re.h6)().api,u=(0,Xn.K)(),m=u.addDeletingDid,f=u.removeDeletingDid,h=u.matchDeletingDid,g=(0,s.useState)(!1),b=(0,c.Z)(g,2),y=b[0],k=b[1],Z=(0,s.useState)(null),P=(0,c.Z)(Z,2),L=P[0],E=P[1],S=(0,s.useState)(!1),T=(0,c.Z)(S,2),_=T[0],B=T[1],N=(0,In.Z)(t.children)||[];"gateway"!==t.meta.group&&N.unshift(t),h(N.map((function(e){return e.meta.did}))),(0,s.useEffect)((function(){t&&!(0,O.n2)(t.status)&&d.getLatestBlockletVersion({input:{did:t.meta.did,version:t.meta.version}}).then((function(e){var n=(e.data||{}).version;n&&Dn().gt(n,t.meta.version)&&B(!0)})).catch((function(e){console.error(e.message)}))}),[null===t||void 0===t||null===(n=t.meta)||void 0===n?void 0:n.did]);var D=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(){var n,o,i,a,c,s,u;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!y){e.next=2;break}return e.abrupt("return");case 2:return k(!0),e.prev=3,e.next=6,d.getLatestBlockletVersion({input:{did:t.meta.did,version:t.meta.version}});case 6:if(e.t0=e.sent.data,e.t0){e.next=9;break}e.t0={};case 9:if(n=e.t0,o=n.version,i=n.registryUrl,!o||!Dn().gt(o,t.meta.version)){e.next=16;break}return E({type:"app",params:{version:o,registryUrl:i},list:[{name:(0,C.getDisplayName)(t),version:t.meta.version,newVersion:o}]}),k(!1),e.abrupt("return");case 16:return e.next=18,d.checkChildBlockletsForUpdates({input:{did:t.meta.did}});case 18:if(e.t1=e.sent.preUpdateInfo,e.t1){e.next=21;break}e.t1={};case 21:if(a=e.t1,c=a.updateId,s=a.updateList,k(!1),c){e.next=28;break}return Ie.ZP.info(r("blocklet.component.noUpdate")),e.abrupt("return");case 28:u=[],(0,C.forEachChildSync)(t,(function(e,n){var t=n.id,o=n.ancestors,r=s.find((function(e){return e.id===t}));if(r){var i=o.slice(1).concat(e).map((function(e){return e.meta.title||e.meta.name})).join(" / ");u.push({name:i,version:e.meta.version,newVersion:r.meta.version})}})),E({type:"child",params:{updateId:c},list:u}),e.next=37;break;case 33:e.prev=33,e.t2=e.catch(3),k(!1),Ie.ZP.error((0,O.Z)(e.t2));case 37:case"end":return e.stop()}}),e,null,[[3,33]])})));return function(){return e.apply(this,arguments)}}(),R=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(){var n,o;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!y){e.next=2;break}return e.abrupt("return");case 2:return"app"===L.type?(n=d.upgradeBlocklet.bind(d),o={did:t.meta.did,version:L.params.version,registryUrl:L.params.registryUrl||""}):(n=d.updateChildBlocklets.bind(d),o={updateId:L.params.updateId,rootDid:t.meta.did}),e.prev=3,k(!0),e.next=7,n({input:o});case 7:k(!1),E(null),B(null),e.next=16;break;case 12:e.prev=12,e.t0=e.catch(3),k(!1),Ie.ZP.error((0,O.Z)(e.t0));case 16:case"end":return e.stop()}}),e,null,[[3,12]])})));return function(){return e.apply(this,arguments)}}(),U=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n,o){return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return m(n.meta.did),e.prev=1,e.next=4,d.deleteComponent({input:{did:n.meta.did,keepData:"keepData"===o,rootDid:t.meta.did}});case 4:return e.next=6,(0,O._v)(800);case 6:Ie.ZP.success(r("common.deleteSuccess")),e.next=13;break;case 9:e.prev=9,e.t0=e.catch(1),Ie.ZP.error((0,O.Z)(e.t0)),f(n.meta.did);case 13:case"end":return e.stop()}}),e,null,[[1,9]])})));return function(n,t){return e.apply(this,arguments)}}(),A=(0,C.getAppMissingConfigs)(t);return(0,I.jsxs)(vo,(0,i.Z)((0,i.Z)({component:"div"},o),{},{children:[!!A.length&&(0,I.jsx)(qe.Z,{style:{margin:"12px 0"},severity:"error",children:r("blocklet.config.missingRequired")}),(0,I.jsxs)(x.Z,{display:"flex",justifyContent:"space-between",alignItems:"center",children:[(0,I.jsxs)("div",{className:"title",children:[r("common.components"),(0,I.jsx)(Ae.Z,{permission:"mutate_blocklet",children:(0,I.jsx)(ho,{top:1.2,right:.4,color:"error",badgeContent:"",variant:"dot",invisible:!_,children:(0,I.jsxs)(j.default,{disabled:y||(0,O.n2)(t.status),color:"secondary",onClick:function(){D()},"data-cy":"check-for-updates",children:[(0,I.jsx)(x.Z,{mr:.5,display:"flex",children:y?(0,I.jsx)(v.default,{size:[16,10]}):(0,I.jsx)(Fn.Z,{style:{fontSize:"1em"}})}),r("blocklet.component.checkUpdateTitle")]})})})]}),(0,I.jsx)(Ae.Z,{permission:"mutate_blocklet",children:(0,I.jsx)(Dt,{blocklet:t,children:function(e){var n=e.open;return(0,I.jsxs)(j.default,{disabled:y||(0,O.n2)(t.status),variant:"text",color:"primary","data-cy":"add-component",onClick:n,children:[(0,I.jsx)(re.Z,{style:{fontSize:"1.3em",marginRight:4}}),r("blocklet.component.add")]})}})})]}),N&&N.length?[(0,I.jsx)(x.Z,{mt:2,ml:{xs:"-16px",md:"-28px"},children:(0,I.jsx)(fo,{blocklet:t,onRemove:U},"0-".concat(t.meta.did))},"top-blocklet-".concat(t.meta.did))]:(0,I.jsx)(x.Z,{mt:8,children:(0,I.jsx)($e.default,{children:r("blocklet.component.noComponent")})}),!!L&&(0,I.jsx)(Rn.Z,{open:!0,fullWidth:!0,children:(0,I.jsxs)(x.Z,{paddingY:1.5,children:[(0,I.jsx)(An.Z,{children:r("blocklet.component.updateTitle")}),(0,I.jsx)(x.Z,{component:Un.Z,py:4,ml:4,children:L.list.map((function(e){return(0,I.jsxs)(x.Z,{mt:3,children:[(0,I.jsx)(x.Z,{item:!0,xs:5,children:e.name}),(0,I.jsxs)(qn.ZP,{fontSize:"h6.fontSize",container:!0,spacing:3,alignItems:"center",children:[(0,I.jsx)(qn.ZP,{item:!0,xs:2,children:e.version}),(0,I.jsx)(qn.ZP,{item:!0,xs:1,children:(0,I.jsx)(bn.Z,{style:{fontSize:"0.9em"}})}),(0,I.jsx)(qn.ZP,{item:!0,xs:2,children:(0,I.jsx)(x.Z,{color:"secondary.main",children:e.newVersion})})]})]},"".concat(e.name,"-").concat(e.newVersion))}))}),(0,I.jsxs)(zn.Z,{style:{padding:"8px 24px 24px"},children:[(0,I.jsx)(j.default,{onClick:function(){E(null)},size:"small",children:r("common.cancel")}),(0,I.jsxs)(j.default,{onClick:function(e){e.stopPropagation(),R()},color:"primary",size:"small",disabled:y,variant:"contained",autoFocus:!0,children:[y&&(0,I.jsx)(v.default,{size:[16,10]}),r("common.update")]})]})]})})]}))}xo.defaultProps={onChangeConfig:function(){},onUpdate:function(){}};var vo=d.default.div(ao||(ao=(0,r.Z)(["\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"])),(function(e){return e.theme.spacing(1)})),go=t(33829),bo=["blocklet"];function yo(e){var n=e.blocklet,t=(0,w.Z)(e,bo);return(0,I.jsx)(x.Z,(0,i.Z)((0,i.Z)({height:{xs:"calc(100vh - 444px)",sm:"calc(100vh - 508px)",md:"calc(100vh - 445px)"}},t),{},{children:(0,I.jsx)(go.l,{name:(0,C.getDisplayName)(n),logId:"blocklet-".concat(n.meta.did),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"]})}))}var ko,jo=t(7624),Zo=t(9500),Co=t(79670),wo=t(88266),Po=t(18041),Lo=t(29346),Eo=t(60548),So=t(60059),Oo=t(26952),To=t(4485),_o=t(91519);function Bo(e){var n=e.blocklet,t=e.children,o=(0,To.Tt)().session,r=(0,s.useState)(!1),i=(0,c.Z)(r,2),d=i[0],u=i[1],m=(0,s.useState)(!1),h=(0,c.Z)(m,2),b=h[0],y=h[1],Z=(0,s.useState)(""),C=(0,c.Z)(Z,2),w=C[0],P=C[1],L=(0,p.useLocaleContext)().t,E=(0,s.useState)(0),S=(0,c.Z)(E,2),T=S[0],_=S[1],B=(0,s.useState)((0,_o.TT)(n.meta.title)),N=(0,c.Z)(B,2),D=N[0],R=N[1],U=n.children.filter((function(e){return!e.bundleSource})),A=function(){u(!1),R(""),_(0)},z=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(){var t,r;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return y(!0),e.prev=1,t=(0,_o.rn)(D,n),e.next=5,(0,_o.M2)(t,{holder:o.user.fullName});case 5:_(1),e.next=12;break;case 8:e.prev=8,e.t0=e.catch(1),r="Blocklet Install failed: ".concat((0,O.Z)(e.t0)),P(r);case 12:return e.prev=12,y(!1),e.finish(12);case 15:case"end":return e.stop()}}),e,null,[[1,8,12,15]])})));return function(){return e.apply(this,arguments)}}(),F=[{label:L("blocklet.export.exportSource"),content:(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(f.Z,{component:"div",children:(0,I.jsx)(Se.Z,{style:{marginBottom:24},label:L("blocklet.export.name"),autoComplete:"off",variant:"outlined",fullWidth:!0,autoFocus:!0,margin:"dense",value:D,onChange:function(e){P(null),R(e.target.value)},disabled:b,helperText:L("blocklet.export.nameTip")})}),!!U.length&&(0,I.jsxs)(k.Z,{type:"warning",style:{width:"100%",marginTop:8},children:[L("blocklet.export.uploadedComponentTip")," ",U.map((function(e){return e.meta.title})).join(", ")]}),!!w&&(0,I.jsx)(k.Z,{type:"error",style:{width:"100%",marginTop:8},children:w})]}),btn:L("common.export"),handler:z},{label:L("blocklet.export.result"),content:(0,I.jsxs)(x.Z,{children:[(0,I.jsx)(f.Z,{variant:"h6",gutterBottom:!0,children:(0,I.jsx)(x.Z,{color:"success.main",children:L("blocklet.export.success")})}),(0,I.jsxs)(x.Z,{display:"flex",flexWrap:"wrap",alignItems:"center",fontSize:"16px",my:3,children:[(0,I.jsx)(x.Z,{children:L("blocklet.export.resultTipStart")}),(0,I.jsx)(x.Z,{padding:"2px",margin:"0 2px",color:"error.main",bgcolor:"grey.100",children:"@blocklet/cli"}),(0,I.jsx)(x.Z,{children:L("blocklet.export.resultTipEnd")})]}),(0,I.jsxs)(x.Z,{children:[(0,I.jsx)(f.Z,{variant:"body2",gutterBottom:!0,children:"Learn more:"}),(0,I.jsx)(g.Z,{href:"https://docs.arcblock.io/abtnode/en/developer",underline:"hover",children:"https://docs.arcblock.io/abtnode/en/developer"})]})]}),btn:L("common.confirm"),handler:A}];return(0,I.jsxs)(I.Fragment,{children:[t({loading:b,open:function(){return u(!0)}}),d&&(0,I.jsx)(rt.default,{title:L("blocklet.export.title"),fullWidth:!0,maxWidth:"sm",onClose:A,showCloseButton:!0,open:!0,actions:(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(j.default,{onClick:function(e){e.stopPropagation(),A()},color:"inherit",size:"small",children:L("common.cancel")}),(0,I.jsxs)(j.default,{onClick:function(e){e.stopPropagation(),F[T].handler()},color:"primary",size:"small","data-cy":"install-blocklet-next-step",variant:"contained",disabled:b||w||!D,style:{marginLeft:8},children:[b&&(0,I.jsx)(v.default,{size:[16,10]}),F[T].btn]})]}),children:(0,I.jsxs)(No,{children:[(0,I.jsx)(Eo.Z,{activeStep:T,alternativeLabel:!0,children:F.map((function(e){var n=e.label;return(0,I.jsx)(So.Z,{children:(0,I.jsx)(Oo.Z,{children:n})},n)}))}),F[T].content]})})]})}Bo.defaultProps={};var Io,No=d.default.div(ko||(ko=(0,r.Z)(["\n .MuiStepper-root {\n padding-top: 0;\n margin-top: -16px;\n }\n"]))),Do=function(e){return e.children};function Ro(){var e,n,t=(0,u.s0)(),o=(0,u.UO)(),r=o.did,d=o.tab,w=void 0===d?"overview":d,P=(0,s.useState)(null),L=(0,c.Z)(P,2),E=L[0],T=L[1],_=(0,s.useState)(null),B=(0,c.Z)(_,2),N=B[0],D=B[1],R=(0,Re.h6)(),U=R.api,A=R.refresh,z=(0,p.useLocaleContext)().t,F=((null===(e=(0,nn.lX)().siteMap[null===E||void 0===E||null===(n=E.meta)||void 0===n?void 0:n.did])||void 0===e?void 0:e.domainAliases)||[]).map((function(e){return e.value})).filter(Boolean),M=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(){var n,t;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,U.getBlocklet({input:{did:r}});case 3:if(n=e.sent,!(t=n.blocklet)){e.next=11;break}return e.next=8,(0,wo.Z)(t);case 8:T(t),e.next=12;break;case 11:D(new Error(z("blocklet.notFound")));case 12:e.next=17;break;case 14:e.prev=14,e.t0=e.catch(0),D(e.t0);case 17:case"end":return e.stop()}}),e,null,[[0,14]])})));return function(){return e.apply(this,arguments)}}(),K=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.meta,t=void 0===n?{}:n;t.did===r&&M()};(0,s.useEffect)((function(){M()}),[r]);var W=(0,s.useCallback)((function(){return(0,I.jsx)(Zo.Z,{scope:r})}),[r]);(0,Ue.mU)(Z.BlockletEvents.started,K),(0,Ue.mU)(Z.BlockletEvents.statusChange,K),(0,Ue.mU)(Z.BlockletEvents.startFailed,K),(0,Ue.mU)(Z.BlockletEvents.installed,K),(0,Ue.mU)(Z.BlockletEvents.upgraded,K),(0,Ue.mU)(Z.BlockletEvents.downgraded,K),(0,Ue.mU)(Z.BlockletEvents.updated,K);var V=function(e){t("/blocklets/".concat(r,"/").concat(e))},q=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n&&T(n),M();case 2:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}(),Y=null,G=[{label:z("common.overview"),value:"overview"},{label:z("router.routerSetting"),value:"access"},{label:z("common.components"),value:"components"}];if(N)Y=(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(k.Z,{type:"error",variant:"icon",children:(0,O.Z)(N)}),(0,I.jsx)(j.default,{component:m.Link,color:"primary",variant:"contained",to:"/blocklets",children:z("common.blocklets")})]});else if(E){var H={overview:Q,configuration:Ke,access:Tn,services:ke,members:(0,I.jsx)(Po.Z,{type:"blocklet"}),passports:Lo.Z,components:xo,"audit-logs":W,logs:yo};"configuration"===w&&(0,O.wS)(E.status)&&V("overview"),(0,O.wS)(E.status)||(G.push({label:z("common.members"),value:"members"}),G.push({label:z("common.passport"),value:"passports"}),G.push({label:z("common.configuration"),value:"configuration"})),G.push({label:z("common.auditLogs"),value:"audit-logs"}),G.push({label:z("common.logs"),value:"logs"}),(0,O.vW)(E).length&&G.splice(2,0,{label:z("blocklet.services"),value:"services"});var X=H[w]||H.overview;Y=(0,I.jsxs)(Xn.g,{type:"components",children:[(0,I.jsx)(y.Z,{tabs:G,current:w,onChange:V,scrollButtons:"auto"}),(0,I.jsx)("div",{className:"page-content",children:(0,s.isValidElement)(X)?X:(0,I.jsx)(X,{blocklet:E,onChangeConfig:function(e){T((function(n){return(0,i.Z)((0,i.Z)({},n),{},{settings:e.settings,environments:e.environments,configs:e.configs||n.configs,children:n.children.map((function(n){var t=e.children.find((function(e){return e.meta.did===n.meta.did}));return n.configs=t.configs||n.configs,n}))})}))},onUpdate:q})})]})}else Y=(0,I.jsx)(v.default,{});var $=function(){var e=(0,a.Z)((0,l.Z)().mark((function e(n){var o;return(0,l.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=n.action,!n.err){e.next=3;break}return e.abrupt("return");case 3:"remove"===o?(A(),t("/blocklets")):M();case 4:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}(),J=G.find((function(e){return e.value===w})),ee=E?Co.G6:Do;return(0,I.jsx)(kn.oD,{domains:F,children:(0,I.jsx)(ee,{teamDid:r,children:(0,I.jsxs)(Uo,{children:[(0,I.jsxs)(h.Z,{separator:"\u203a","aria-label":"breadcrumb",className:"page-breadcrumb",children:[(0,I.jsx)(m.Link,{color:"textSecondary",to:"/blocklets",children:z("common.blocklets")}),(0,I.jsx)(m.NavLink,{to:"/blocklets/".concat(r,"/overview"),style:function(e){return e?{color:"inherit"}:{}},children:z("common.detail")}),(0,I.jsx)(f.Z,{color:"textSecondary",children:J?J.label:""})]}),(0,I.jsxs)(f.Z,{component:"div",className:"page-header",children:[(0,I.jsxs)(f.Z,{component:"h2",variant:"h4",className:"page-title",color:"textPrimary",children:[E?(0,I.jsx)(Zn.Z,{blocklet:E,style:{marginRight:16}}):null,E?(0,I.jsxs)(x.Z,{display:"flex",alignItems:"center",children:[(0,I.jsx)(x.Z,{children:(0,C.getDisplayName)(E)}),!!E&&(0,I.jsx)(S.Z,{size:"12px",style:{marginLeft:8},status:E.status,source:E.source})]}):"".concat(z("common.blocklet")," ").concat(z("common.detail")),E&&"custom"===E.source&&(0,I.jsx)(Bo,{blocklet:E,children:function(e){var n=e.open;return(0,I.jsx)(g.Z,{className:"page-link",onClick:function(){return n()},style:{cursor:"pointer"},underline:"hover",children:(0,I.jsx)(b.Z,{})})}})]}),(0,I.jsx)(Ae.Z,{permission:"mutate_blocklet",children:E?(0,I.jsx)(jo.Z,{className:"page-actions",blocklet:E,onStart:function(){},onComplete:$,variant:"group"}):null})]}),Y]})})})}var Uo=d.default.main(Io||(Io=(0,r.Z)(["\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: 32px;\n }\n\n @media (max-width: ","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"])),(function(e){return e.theme.breakpoints.values.md}))},28836:function(e,n,t){var o=t(43681).default;Object.defineProperty(n,"__esModule",{value:!0}),n.default=u;var r=t(30969),i=d(t(92293)),l=d(t(81868)),a=t(78017),c=d(t(88213)),s=t(37574);function d(e){return e&&e.__esModule?e:{default:e}}function u(e){var n=e.editing,t=e.value,c=e.onChange,d=(0,r.useState)(!1),u=o(d,2),m=u[0],p=u[1],f=(0,r.useRef)(),h=(0,r.useRef)(t);(0,r.useEffect)((function(){var e=null;return n&&(e=setTimeout((function(){p(!0)}),50)),function(){clearTimeout(e)}}),[n]);var x=function(e){h.current=e,c(e)},v=(0,s.jsx)(i.default,{className:"form-item-input slot",px:1,children:(0,s.jsxs)(i.default,{display:"flex",alignItems:"center",children:[t,"auto"!==t&&(0,s.jsx)("div",{style:{marginLeft:4,backgroundColor:t,width:"1em",height:"1em",borderRadius:"0.2em"}})]})}),g=(0,s.jsxs)(i.default,{display:"flex",flexGrow:1,alignItems:"center",height:"40px",onKeyDown:function(){p(!1),c(h.current)},children:[(0,s.jsx)(i.default,{display:"flex",alignItems:"center",onClick:function(){return p(!0)},children:(0,s.jsx)("div",{ref:f,style:{flexShrink:0,marginLeft:"8px",backgroundColor:t,width:"32px",height:"32px",boxSizing:"border-box",borderRadius:"8px",border:"1px solid #eee",cursor:"auto"===t?"default":"pointer"}})}),(0,s.jsx)(l.default,{open:m,anchorEl:f.current,onClose:function(){return p(!1)},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:(0,s.jsx)(a.ChromePicker,{color:t,onChange:function(e){return x(e.hex)}})})]});return n?g:v}u.propTypes=c.default},88213:function(e,n,t){Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var o,r=(o=t(24974))&&o.__esModule?o:{default:o};var i={description:r.default.string,editing:r.default.bool,onChange:r.default.func,required:r.default.bool,value:r.default.any,componentProps:r.default.object,render:r.default.func,renderFormItem:r.default.func};n.default=i},70508:function(e,n,t){var o=t(26290).default,r=t(43681).default;n.Z=C;var i,l=t(30969),a=y(t(24974)),c=y(t(16380)),s=y(t(92293)),d=y(t(1484)),u=y(t(88581)),m=y(t(27724)),p=y(t(98623)),f=y(t(99)),h=y(t(28836)),x=y(t(8693)),v=y(t(22168)),g=y(t(37327)),b=t(37574);function y(e){return e&&e.__esModule?e:{default:e}}function k(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function j(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?k(Object(t),!0).forEach((function(n){Z(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):k(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function Z(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function C(e){var n=e.schema,t=e.loading,i=e.value,a=e.defaultValue,c=e.onChange,y=e.style,k=e.disabled,Z="[object Object]"===Object.prototype.toString.call(i),C=(0,l.useState)(null),w=r(C,2),P=w[0],E=w[1],S=(0,l.useState)(Z?i:a),O=r(S,2),T=O[0],_=O[1],B=(0,l.useRef)();function I(e,n,t){var r=e.key,i=e.secure,l=T[r]!==n,a=j(j({},T),{},o({},r,n));l&&_(a),c(o({},r,n),{allValues:a,action:t,currentItem:e}),"confirm"===t&&i&&_(j(j({},T),{},o({},r,"__encrypted__")))}function N(e){if(e)return B.current=T[e.key],void E(e);B.current=null,E(null)}return(0,b.jsx)(L,{className:"form",style:y,children:null===n||void 0===n?void 0:n.map((function(e){var n=e.key,o=e.description,r=e.required,l=e.hidden,a=void 0!==l&&l,c=e.componentProps,y=void 0===c?{}:c;if(a)return null;var C=!(!P||n!==P.key),w=function(e,n){var t=n.editing,o=void 0!==t&&t,r=e.key,l=Z?i[r]:T[r];return"__encrypted__"===l?o?"":"******":l}(e,{editing:C}),L=function(e,n){var t=n.editing,o=void 0!==t&&t,r=e.componentType,i=void 0===r?"input":r,l=e.render,a=e.renderFormItem;return o&&a?a:!o&&l?l:{input:x.default,color:h.default,passport:v.default}[null===i||void 0===i?void 0:i.toLowerCase()]}(e,{editing:C}),E={inputProps:{"data-cy":"schema-form-item-component"},key:n,description:o,editing:C,value:w,onChange:function(n){return I(e,n,"change")},componentProps:y};return(0,b.jsxs)(s.default,{className:"form-item",children:[(0,b.jsxs)(s.default,{className:"form-item-label",style:{color:r&&!w?"#ff0000":"#333"},children:[o,r&&(0,b.jsx)(g.default,{})]}),(0,b.jsxs)(s.default,{className:"form-item-body",children:[(0,b.jsx)(s.default,{className:"form-item-input",children:(0,b.jsx)(L,j({},E))}),(0,b.jsx)(s.default,{className:"form-item-action",children:C?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(p.default,{"data-cy":"schema-form-item-confirm",onClick:function(){I(e,w,"confirm"),N(null)},disabled:k||t,size:"large",children:t?(0,b.jsx)(f.default,{size:24}):(0,b.jsx)(m.default,{})}),(0,b.jsx)(p.default,{"data-cy":"schema-form-item-cancel",onClick:function(){I(e,B.current,"cancel"),N(null)},disabled:k||t,size:"large",children:(0,b.jsx)(u.default,{})})]}):(0,b.jsx)(p.default,{"data-cy":"schema-form-item-edit",onClick:function(){I(e,T[n],"edit"),N(e)},disabled:k||P,size:"large",children:(0,b.jsx)(d.default,{})})})]})]},n)}))})}C.propTypes={schema:a.default.array.isRequired,loading:a.default.bool,onChange:a.default.func.isRequired,value:a.default.object,defaultValue:a.default.object,style:a.default.object,disabled:a.default.bool},C.defaultProps={loading:!1,value:void 0,defaultValue:{},style:{},disabled:!1};var w,P,L=(0,c.default)(s.default)(i||(w=["\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 .form-item {\n width: 100%;\n margin-bottom: 24px;\n position: relative;\n "," {\n flex-wrap: wrap;\n justify-content: space-between;\n width: 100%;\n flex-shrink: 0;\n }\n }\n\n .form-item-body {\n display: flex;\n align-items: center;\n width: 100%;\n margin-top: 4px;\n }\n\n .form-item-label {\n line-height: 1.2;\n font-size: 14px;\n color: #888;\n font-weight: bold;\n\n "," {\n text-align: left;\n width: auto;\n flex-grow: 1;\n }\n }\n\n .form-item-input {\n flex-grow: 1;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n &.slot {\n height: 40px;\n line-height: 40px;\n background: #f8f8f8;\n font-size: 16px;\n }\n }\n\n .form-item-action {\n // width: 100px;\n text-align: left;\n margin-left: 12px;\n flex-shrink: 0;\n "," {\n width: auto;\n margin-left: 0px;\n }\n .MuiIconButton-root {\n padding: 8px;\n svg {\n fill: #888;\n }\n &.Mui-disabled {\n opacity: 0.4;\n }\n }\n }\n"],P||(P=w.slice(0)),i=Object.freeze(Object.defineProperties(w,{raw:{value:Object.freeze(P)}}))),(function(e){return e.theme.breakpoints.down("md")}),(function(e){return e.theme.breakpoints.down("md")}),(function(e){return e.theme.breakpoints.down("md")}),(function(e){return e.theme.breakpoints.down("md")}))},22168:function(e,n,t){Object.defineProperty(n,"__esModule",{value:!0}),n.default=v;var o=m(t(24974)),r=m(t(92293)),i=m(t(52469)),l=t(25800),a=t(7017),c=m(t(28836)),s=m(t(88213)),d=t(37574),u=["editing","value","onChange","componentProps"];function m(e){return e&&e.__esModule?e:{default:e}}function p(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function f(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?p(Object(t),!0).forEach((function(n){h(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):p(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function h(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function x(e,n){if(null==e)return{};var t,o,r=function(e,n){if(null==e)return{};var t,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)t=i[o],n.indexOf(t)>=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)t=i[o],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}function v(e){var n=e.editing,t=e.value,o=e.onChange,s=e.componentProps,m=x(e,u),p=s.blocklet,h="auto"===t?(0,l.getPassportColorFromDid)(p.appDid):t;return(0,d.jsxs)(r.default,{display:"flex",alignItems:"center",children:[(0,d.jsx)("img",{style:{width:96,marginRight:12},alt:"",src:(0,i.default)({title:"Owner",issuer:(0,a.getDisplayName)(p),issuerDid:p.appDid,ownerName:"Your Name",isDataUrl:!0,preferredColor:t||"auto"})}),(0,d.jsx)(c.default,f(f({},m),{},{editing:n,value:n?h:t,onChange:o,componentProps:s}))]})}v.propTypes=f(f({},s.default),{},{componentProps:o.default.shape({blocklet:o.default.object.isRequired}).isRequired}),v.defaultProps={}},37327:function(e,n,t){var o,r;Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,l,a=((o=t(16380))&&o.__esModule?o:{default:o}).default.span(r||(i=["\n color: ",";\n &::before {\n content: '*';\n }\n"],l||(l=i.slice(0)),r=Object.freeze(Object.defineProperties(i,{raw:{value:Object.freeze(l)}}))),(function(e){return e.theme.palette.error.main}));n.default=a},8693:function(e,n,t){Object.defineProperty(n,"__esModule",{value:!0}),n.default=p;var o=t(30969),r=s(t(92293)),i=s(t(89558)),l=s(t(88213)),a=t(37574),c=["editing","description","value","onChange","componentProps"];function s(e){return e&&e.__esModule?e:{default:e}}function d(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function u(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function m(e,n){if(null==e)return{};var t,o,r=function(e,n){if(null==e)return{};var t,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)t=i[o],n.indexOf(t)>=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)t=i[o],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}function p(e){var n=e.editing,t=e.description,l=e.value,s=e.onChange,p=e.componentProps,f=m(e,c),h=p.placeholder,x=(0,o.useRef)(l),v=function(e){x.current=e,s(e)};return n?(0,a.jsx)(i.default,function(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?d(Object(t),!0).forEach((function(n){u(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):d(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}({style:{flex:1},fullWidth:!0,value:l,onChange:function(e){e.persist(),v(e.target.value)},autoFocus:!0,size:"small",variant:"outlined",placeholder:t||h,onKeyDown:function(e){"Enter"===e.key&&s(x.current)}},f)):(0,a.jsx)(r.default,{px:1,className:"form-item-input slot",children:l})}p.propTypes=l.default,p.defaultProps={componentProps:{}}},15508:function(e,n,t){n.Z=void 0;var o=a(t(39517)),r=a(t(87642)),i=a(t(98127)),l=t(20244);function a(e){return e&&e.__esModule?e:{default:e}}var c=[{value:l.WHO_CAN_ACCESS.OWNER,icon:o.default,title:{zh:"\u53ea\u6709\u6211\u81ea\u5df1\u53ef\u8bbf\u95ee",en:"Only me can access"},description:{zh:"\u5fc5\u987b\u63d0\u4f9b\u6240\u6709\u8005\u901a\u884c\u8bc1\u624d\u80fd\u8bbf\u95ee\u5e94\u7528",en:"You must provide owner passport to access this application"}},{value:l.WHO_CAN_ACCESS.INVITED,icon:r.default,title:{zh:"\u53ea\u6709\u88ab\u9080\u8bf7\u7684\u4eba\u53ef\u4ee5\u8bbf\u95ee",en:"Only invited people can access"},description:{zh:"\u7a0d\u540e\u60a8\u53ef\u4ee5\u5728\u7ba1\u7406\u9875\u9762\u4e2d\u9080\u8bf7\u6210\u5458",en:"You can invite members later in the admin page"}},{value:l.WHO_CAN_ACCESS.ALL,icon:i.default,title:{zh:"\u6240\u6709\u4eba\u53ef\u8bbf\u95ee",en:"Accessible to all"},description:{zh:"\u5411\u6240\u6709\u4eba\u5f00\u653e\uff0c\u65e0\u9700\u901a\u884c\u8bc1\u5373\u53ef\u8bbf\u95ee\u5e94\u7528",en:"Open to the world anyone can access without passport"}}];n.Z=c}}]);
2
- //# sourceMappingURL=7419.055e946f.chunk.js.map