浏览代码

fix: optimize feedback and app icon (#1099)

tags/0.3.20
bowen 2 年前
父节点
当前提交
4a28599fbd
没有帐户链接到提交者的电子邮件

+ 17
- 16
web/app/(commonLayout)/app/(appDetailLayout)/[appId]/overview/cardView.tsx 查看文件

if (!response) if (!response)
return <Loading /> return <Loading />


const handleError = (err: Error | null) => {
if (!err) {
notify({
type: 'success',
message: t('common.actionMsg.modifiedSuccessfully'),
})
const handleCallbackResult = (err: Error | null, message?: string) => {
const type = err ? 'error' : 'success'
message ||= (type === 'success' ? 'modifiedSuccessfully' : 'modifiedUnsuccessfully')
if (type === 'success') {
mutate(detailParams) mutate(detailParams)
} }
else {
notify({
type: 'error',
message: t('common.actionMsg.modificationFailed'),
})
}
notify({
type,
message: t(`common.actionMsg.${message}`),
})
} }


const onChangeSiteStatus = async (value: boolean) => { const onChangeSiteStatus = async (value: boolean) => {
body: { enable_site: value }, body: { enable_site: value },
}) as Promise<App>, }) as Promise<App>,
) )
handleError(err)

handleCallbackResult(err)
} }


const onChangeApiStatus = async (value: boolean) => { const onChangeApiStatus = async (value: boolean) => {
body: { enable_api: value }, body: { enable_api: value },
}) as Promise<App>, }) as Promise<App>,
) )
handleError(err)

handleCallbackResult(err)
} }


const onSaveSiteConfig: IAppCardProps['onSaveSiteConfig'] = async (params) => { const onSaveSiteConfig: IAppCardProps['onSaveSiteConfig'] = async (params) => {
if (!err) if (!err)
localStorage.setItem(NEED_REFRESH_APP_LIST_KEY, '1') localStorage.setItem(NEED_REFRESH_APP_LIST_KEY, '1')


handleError(err)
handleCallbackResult(err)
} }


const onGenerateCode = async () => { const onGenerateCode = async () => {
url: `/apps/${appId}/site/access-token-reset`, url: `/apps/${appId}/site/access-token-reset`,
}) as Promise<UpdateAppSiteCodeResponse>, }) as Promise<UpdateAppSiteCodeResponse>,
) )
handleError(err)

handleCallbackResult(err, err ? 'generatedUnsuccessfully' : 'generatedSuccessfully')
} }


return ( return (

+ 1
- 1
web/app/(commonLayout)/apps/AppCard.tsx 查看文件

else { else {
notify({ notify({
type: 'error', type: 'error',
message: t('common.actionMsg.modificationFailed'),
message: t('common.actionMsg.modifiedUnsuccessfully'),
}) })
} }
}, },

+ 1
- 1
web/app/components/app/configuration/prompt-value-panel/index.tsx 查看文件

<div className="space-y-3 "> <div className="space-y-3 ">
{promptVariables.map(({ key, name, type, options, max_length, required }) => ( {promptVariables.map(({ key, name, type, options, max_length, required }) => (
<div key={key} className="flex items-center justify-between"> <div key={key} className="flex items-center justify-between">
<div className="mr-1 shrink-0 w-[120px] text-sm text-gray-900">{name || key}</div>
<div className="mr-1 shrink-0 w-[120px] text-sm text-gray-900 break-all">{name || key}</div>
{type === 'select' {type === 'select'
? ( ? (
<Select <Select

+ 4
- 4
web/app/components/app/log/list.tsx 查看文件

return true return true
} }
catch (err) { catch (err) {
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
return false return false
} }
} }
return true return true
} }
catch (err) { catch (err) {
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
return false return false
} }
} }
return true return true
} }
catch (err) { catch (err) {
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
return false return false
} }
} }
return true return true
} }
catch (err) { catch (err) {
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
return false return false
} }
} }

+ 5
- 3
web/app/components/app/overview/appCard.tsx 查看文件

} }


const onGenCode = async () => { const onGenCode = async () => {
setGenLoading(true)
await asyncRunSafe(onGenerateCode?.() as any)
setGenLoading(false)
if (onGenerateCode) {
setGenLoading(true)
await asyncRunSafe(onGenerateCode())
setGenLoading(false)
}
} }


return ( return (

+ 2
- 1
web/app/components/app/overview/settings/index.tsx 查看文件

onSave, onSave,
}) => { }) => {
const [isShowMore, setIsShowMore] = useState(false) const [isShowMore, setIsShowMore] = useState(false)
const { title, description, copyright, privacy_policy, default_language, icon, icon_background } = appInfo.site
const { icon, icon_background } = appInfo
const { title, description, copyright, privacy_policy, default_language } = appInfo.site
const [inputInfo, setInputInfo] = useState({ title, desc: description, copyright, privacyPolicy: privacy_policy }) const [inputInfo, setInputInfo] = useState({ title, desc: description, copyright, privacyPolicy: privacy_policy })
const [language, setLanguage] = useState(default_language) const [language, setLanguage] = useState(default_language)
const [saveLoading, setSaveLoading] = useState(false) const [saveLoading, setSaveLoading] = useState(false)

+ 2
- 2
web/app/components/base/confirm-ui/index.tsx 查看文件

</div> </div>


<div className='flex gap-3 mt-4 ml-12'> <div className='flex gap-3 mt-4 ml-12'>
<div onClick={onConfirm} className='w-20 leading-[34px] text-center text-white border rounded-lg cursor-pointer h-9 border-color-primary-700 bg-primary-700'>{confirmText || t('common.operation.confirm')}</div>
<div onClick={onCancel} className='w-20 leading-[34px] text-center text-gray-500 border rounded-lg cursor-pointer h-9 border-color-gray-200'>{cancelText || t('common.operation.cancel')}</div>
<div onClick={onConfirm} className='w-20 leading-9 text-center text-white border rounded-lg cursor-pointer h-9 border-color-primary-700 bg-primary-700'>{confirmText || t('common.operation.confirm')}</div>
<div onClick={onCancel} className='w-20 leading-9 text-center text-gray-500 border rounded-lg cursor-pointer h-9 border-color-gray-200'>{cancelText || t('common.operation.cancel')}</div>
</div> </div>
</div> </div>



+ 2
- 2
web/app/components/datasets/documents/detail/completed/index.tsx 查看文件

setAllSegments([...allSegments]) setAllSegments([...allSegments])
} }
else { else {
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
} }
} }


resetList() resetList()
} }
else { else {
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
} }
} }



+ 1
- 1
web/app/components/datasets/documents/detail/embedding/index.tsx 查看文件

setIndexingStatusDetail(null) setIndexingStatusDetail(null)
} }
else { else {
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
} }
} }



+ 1
- 1
web/app/components/datasets/documents/detail/metadata/index.tsx 查看文件

if (!e) if (!e)
notify({ type: 'success', message: t('common.actionMsg.modifiedSuccessfully') }) notify({ type: 'success', message: t('common.actionMsg.modifiedSuccessfully') })
else else
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
onUpdate?.() onUpdate?.()
setEditStatus(false) setEditStatus(false)
setSaveLoading(false) setSaveLoading(false)

+ 1
- 1
web/app/components/datasets/documents/list.tsx 查看文件

if (!e) if (!e)
notify({ type: 'success', message: t('common.actionMsg.modifiedSuccessfully') }) notify({ type: 'success', message: t('common.actionMsg.modifiedSuccessfully') })
else else
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
onUpdate(operationName) onUpdate(operationName)
} }



+ 1
- 1
web/app/components/datasets/settings/form/index.tsx 查看文件

await mutateDatasets() await mutateDatasets()
} }
catch (e) { catch (e) {
notify({ type: 'error', message: t('common.actionMsg.modificationFailed') })
notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') })
} }
finally { finally {
setLoading(false) setLoading(false)

+ 1
- 1
web/app/components/share/chat/welcome/massive-component.tsx 查看文件

return ( return (
<Button <Button
type='primary' type='primary'
className={cn(className, `flex items-center ${s.customBtn} gap-2`)}
className={cn(className, `!px-0 flex items-center ${s.customBtn} gap-2`)}
onClick={onClick}> onClick={onClick}>
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"> <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fillRule="evenodd" clipRule="evenodd" d="M18 10.5C18 14.366 14.418 17.5 10 17.5C8.58005 17.506 7.17955 17.1698 5.917 16.52L2 17.5L3.338 14.377C2.493 13.267 2 11.934 2 10.5C2 6.634 5.582 3.5 10 3.5C14.418 3.5 18 6.634 18 10.5ZM7 9.5H5V11.5H7V9.5ZM15 9.5H13V11.5H15V9.5ZM9 9.5H11V11.5H9V9.5Z" fill="white" /> <path fillRule="evenodd" clipRule="evenodd" d="M18 10.5C18 14.366 14.418 17.5 10 17.5C8.58005 17.506 7.17955 17.1698 5.917 16.52L2 17.5L3.338 14.377C2.493 13.267 2 11.934 2 10.5C2 6.634 5.582 3.5 10 3.5C14.418 3.5 18 6.634 18 10.5ZM7 9.5H5V11.5H7V9.5ZM15 9.5H13V11.5H15V9.5ZM9 9.5H11V11.5H9V9.5Z" fill="white" />

+ 3
- 1
web/i18n/lang/common.en.ts 查看文件

actionMsg: { actionMsg: {
noModification: 'No modifications at the moment.', noModification: 'No modifications at the moment.',
modifiedSuccessfully: 'Modified successfully', modifiedSuccessfully: 'Modified successfully',
modificationFailed: 'Modification failed',
modifiedUnsuccessfully: 'Modified unsuccessfully',
copySuccessfully: 'Copied successfully', copySuccessfully: 'Copied successfully',
paySucceeded: 'Payment succeeded', paySucceeded: 'Payment succeeded',
payCancelled: 'Payment cancelled', payCancelled: 'Payment cancelled',
generatedSuccessfully: 'Generated successfully',
generatedUnsuccessfully: 'Generated unsuccessfully',
}, },
model: { model: {
params: { params: {

+ 3
- 1
web/i18n/lang/common.zh.ts 查看文件

actionMsg: { actionMsg: {
noModification: '暂无修改', noModification: '暂无修改',
modifiedSuccessfully: '修改成功', modifiedSuccessfully: '修改成功',
modificationFailed: '修改失败',
modifiedUnsuccessfully: '修改失败',
copySuccessfully: '复制成功', copySuccessfully: '复制成功',
generatedSuccessfully: '已重新生成',
generatedUnsuccessfully: '生成失败',
paySucceeded: '已支付成功', paySucceeded: '已支付成功',
payCancelled: '已取消支付', payCancelled: '已取消支付',
}, },

正在加载...
取消
保存