+
}
@@ -100,7 +107,6 @@ const Code = () => {
- {contextHolder}
>
)
}
diff --git a/src/pages/System/Tools/Execute.tsx b/src/pages/System/Tools/Execute.tsx
index 3e76474..f69453d 100644
--- a/src/pages/System/Tools/Execute.tsx
+++ b/src/pages/System/Tools/Execute.tsx
@@ -1,7 +1,14 @@
-import '@/assets/css/pages/system/tools/execute.scss'
+import useStyles from '@/assets/css/pages/system/tools/execute.style'
import { DATABASE_NO_RECORD_FOUND, DATABASE_SELECT_SUCCESS } from '@/constants/common.constants'
+import {
+ checkDesktop,
+ generateThemeCssVariables,
+ message,
+ removeUselessAttributes
+} from '@/util/common'
import { navigateToTools } from '@/util/navigation'
import { r_sys_tool_get_one } from '@/services/system'
+import { AppContext } from '@/App'
import FitFullscreen from '@/components/common/FitFullscreen'
import Card from '@/components/common/Card'
import Playground from '@/components/Playground'
@@ -10,13 +17,29 @@ import { IImportMap } from '@/components/Playground/shared'
import { base64ToFiles, base64ToStr, IMPORT_MAP_FILE_NAME } from '@/components/Playground/files'
const Execute = () => {
+ const { styles, theme } = useStyles()
+ const { isDarkMode } = useContext(AppContext)
const navigate = useNavigate()
const { id } = useParams()
const [isLoading, setIsLoading] = useState(false)
const [compiledCode, setCompiledCode] = useState('')
+ const [isMobileMode, setIsMobileMode] = useState(false)
const render = (toolVo: ToolVo) => {
try {
+ switch (toolVo.platform) {
+ case 'ANDROID':
+ setIsMobileMode(true)
+ break
+ case 'DESKTOP':
+ if (!checkDesktop()) {
+ message.warning('此应用需要桌面端环境,请在桌面端打开').then(() => {
+ navigateToTools(navigate)
+ })
+ return
+ }
+ }
+
const baseDist = base64ToStr(toolVo.base.dist.data!)
const files = base64ToFiles(toolVo.source.data!)
const importMap = JSON.parse(files[IMPORT_MAP_FILE_NAME].value) as IImportMap
@@ -53,8 +76,9 @@ const Execute = () => {
render(response.data!)
break
case DATABASE_NO_RECORD_FOUND:
- void message.error('未找到指定工具')
- navigateToTools(navigate)
+ message.error('未找到指定工具').then(() => {
+ navigateToTools(navigate)
+ })
break
default:
void message.error('获取工具信息失败,请稍后重试')
@@ -71,9 +95,17 @@ const Execute = () => {
}, [id])
return (
-
-
-
+
+