fix: update dependencies and improve app detail handling (#14444)

This commit is contained in:
Wu Tianwei 2025-02-27 15:11:42 +08:00 committed by GitHub
parent 1e3197a1ea
commit 4fbe52da40
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 10 additions and 10 deletions

View File

@ -94,7 +94,7 @@ const AppDetailLayout: FC<IAppDetailLayoutProps> = (props) => {
}, },
] ]
return navs return navs
}, [t]) }, [])
useEffect(() => { useEffect(() => {
if (appDetail) { if (appDetail) {
@ -120,7 +120,7 @@ const AppDetailLayout: FC<IAppDetailLayoutProps> = (props) => {
}).finally(() => { }).finally(() => {
setIsLoadingAppDetail(false) setIsLoadingAppDetail(false)
}) })
}, [appId, router, setAppDetail]) }, [appId, pathname])
useEffect(() => { useEffect(() => {
if (!appDetailRes || isLoadingCurrentWorkspace || isLoadingAppDetail) if (!appDetailRes || isLoadingCurrentWorkspace || isLoadingAppDetail)
@ -148,7 +148,7 @@ const AppDetailLayout: FC<IAppDetailLayoutProps> = (props) => {
} }
} }
// eslint-disable-next-line react-hooks/exhaustive-deps // eslint-disable-next-line react-hooks/exhaustive-deps
}, [appDetailRes, appId, getNavigations, isCurrentWorkspaceEditor, isLoadingAppDetail, isLoadingCurrentWorkspace, router, setAppDetail, systemFeatures.enable_web_sso_switch_component]) }, [appDetailRes, isCurrentWorkspaceEditor, isLoadingAppDetail, isLoadingCurrentWorkspace, systemFeatures.enable_web_sso_switch_component])
useUnmount(() => { useUnmount(() => {
setAppDetail() setAppDetail()

View File

@ -3,13 +3,13 @@
import { useSelectedLayoutSegment } from 'next/navigation' import { useSelectedLayoutSegment } from 'next/navigation'
import Link from 'next/link' import Link from 'next/link'
import classNames from '@/utils/classnames' import classNames from '@/utils/classnames'
import type { RemixiconComponentType } from '@remixicon/react'
export type NavIcon = React.ComponentType< export type NavIcon = React.ComponentType<
React.PropsWithoutRef<React.ComponentProps<'svg'>> & { React.PropsWithoutRef<React.ComponentProps<'svg'>> & {
title?: string | undefined title?: string | undefined
titleId?: string | undefined titleId?: string | undefined
} }> | RemixiconComponentType
>
export type NavLinkProps = { export type NavLinkProps = {
name: string name: string

View File

@ -94,7 +94,7 @@ const Configuration: FC = () => {
}))) })))
const { data: fileUploadConfigResponse } = useSWR({ url: '/files/upload' }, fetchFileUploadConfig) const { data: fileUploadConfigResponse } = useSWR({ url: '/files/upload' }, fetchFileUploadConfig)
const latestPublishedAt = useMemo(() => appDetail?.model_config.updated_at, [appDetail]) const latestPublishedAt = useMemo(() => appDetail?.model_config?.updated_at, [appDetail])
const [formattingChanged, setFormattingChanged] = useState(false) const [formattingChanged, setFormattingChanged] = useState(false)
const { setShowAccountSettingModal } = useModalContext() const { setShowAccountSettingModal } = useModalContext()
const [hasFetchedDetail, setHasFetchedDetail] = useState(false) const [hasFetchedDetail, setHasFetchedDetail] = useState(false)

View File

@ -128,7 +128,7 @@ const Apps = ({
icon_background, icon_background,
description, description,
}) => { }) => {
const { export_data } = await fetchAppDetail( const { export_data, mode } = await fetchAppDetail(
currApp?.app.id as string, currApp?.app.id as string,
) )
try { try {
@ -151,7 +151,7 @@ const Apps = ({
if (app.app_id) if (app.app_id)
await handleCheckPluginDependencies(app.app_id) await handleCheckPluginDependencies(app.app_id)
localStorage.setItem(NEED_REFRESH_APP_LIST_KEY, '1') localStorage.setItem(NEED_REFRESH_APP_LIST_KEY, '1')
getRedirection(isCurrentWorkspaceEditor, { id: app.app_id }, push) getRedirection(isCurrentWorkspaceEditor, { id: app.app_id, mode }, push)
} }
catch (e) { catch (e) {
Toast.notify({ type: 'error', message: t('app.newApp.appCreateFailed') }) Toast.notify({ type: 'error', message: t('app.newApp.appCreateFailed') })

View File

@ -126,7 +126,7 @@ const Apps = ({
icon_background, icon_background,
description, description,
}) => { }) => {
const { export_data } = await fetchAppDetail( const { export_data, mode } = await fetchAppDetail(
currApp?.app.id as string, currApp?.app.id as string,
) )
try { try {
@ -149,7 +149,7 @@ const Apps = ({
if (app.app_id) if (app.app_id)
await handleCheckPluginDependencies(app.app_id) await handleCheckPluginDependencies(app.app_id)
localStorage.setItem(NEED_REFRESH_APP_LIST_KEY, '1') localStorage.setItem(NEED_REFRESH_APP_LIST_KEY, '1')
getRedirection(isCurrentWorkspaceEditor, { id: app.app_id }, push) getRedirection(isCurrentWorkspaceEditor, { id: app.app_id, mode }, push)
} }
catch (e) { catch (e) {
Toast.notify({ type: 'error', message: t('app.newApp.appCreateFailed') }) Toast.notify({ type: 'error', message: t('app.newApp.appCreateFailed') })