feat: added vite_main_bundle_id config and improved code cleanliness
This commit is contained in:
parent
a654ccc25e
commit
01acdeb777
9
src/main/env.d.ts
vendored
Normal file
9
src/main/env.d.ts
vendored
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
/// <reference types="vite/client" />
|
||||||
|
|
||||||
|
interface ImportMetaEnv {
|
||||||
|
VITE_MAIN_BUNDLE_ID: string
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ImportMeta {
|
||||||
|
readonly env: ImportMetaEnv
|
||||||
|
}
|
||||||
@ -12,7 +12,7 @@ app.whenReady().then(async () => {
|
|||||||
await updateUserDataPath()
|
await updateUserDataPath()
|
||||||
|
|
||||||
// Set app user model id for windows
|
// Set app user model id for windows
|
||||||
electronApp.setAppUserModelId('com.kangfenmao.CherryStudio')
|
electronApp.setAppUserModelId(import.meta.env.VITE_MAIN_BUNDLE_ID || 'com.kangfenmao.CherryStudio')
|
||||||
|
|
||||||
// Default open or close DevTools by F12 in development
|
// Default open or close DevTools by F12 in development
|
||||||
// and ignore CommandOrControl + R in production.
|
// and ignore CommandOrControl + R in production.
|
||||||
|
|||||||
@ -2,5 +2,4 @@ export { default as UserAvatar } from '@renderer/assets/images/avatar.png'
|
|||||||
export { default as AppLogo } from '@renderer/assets/images/logo.png'
|
export { default as AppLogo } from '@renderer/assets/images/logo.png'
|
||||||
|
|
||||||
export const APP_NAME = 'Cherry Studio'
|
export const APP_NAME = 'Cherry Studio'
|
||||||
|
|
||||||
export const isLocalAi = false
|
export const isLocalAi = false
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import {
|
|||||||
} from '@ant-design/icons'
|
} from '@ant-design/icons'
|
||||||
import UserPopup from '@renderer/components/Popups/UserPopup'
|
import UserPopup from '@renderer/components/Popups/UserPopup'
|
||||||
import { FONT_FAMILY } from '@renderer/config/constant'
|
import { FONT_FAMILY } from '@renderer/config/constant'
|
||||||
|
import { APP_NAME, AppLogo, isLocalAi } from '@renderer/config/env'
|
||||||
import { startMinAppById } from '@renderer/config/minapp'
|
import { startMinAppById } from '@renderer/config/minapp'
|
||||||
import { getModelLogo } from '@renderer/config/provider'
|
import { getModelLogo } from '@renderer/config/provider'
|
||||||
import { useAssistant } from '@renderer/hooks/useAssistant'
|
import { useAssistant } from '@renderer/hooks/useAssistant'
|
||||||
@ -71,18 +72,24 @@ const MessageItem: FC<Props> = ({ message, index, showMenu, onDeleteMessage }) =
|
|||||||
)
|
)
|
||||||
|
|
||||||
const getUserName = useCallback(() => {
|
const getUserName = useCallback(() => {
|
||||||
if (message.id === 'assistant') return assistant?.name
|
if (isLocalAi && message.role !== 'user') return APP_NAME
|
||||||
if (message.role === 'assistant') return upperFirst(model?.name || model?.id)
|
if (message.role === 'assistant') return upperFirst(model?.name || model?.id)
|
||||||
return userName || t('common.you')
|
return userName || t('common.you')
|
||||||
}, [assistant?.name, message.id, message.role, model?.id, model?.name, t, userName])
|
}, [message.role, model?.id, model?.name, t, userName])
|
||||||
|
|
||||||
const fontFamily = useMemo(() => {
|
const fontFamily = useMemo(() => {
|
||||||
return messageFont === 'serif' ? FONT_FAMILY.replace('sans-serif', 'serif').replace('Ubuntu, ', '') : FONT_FAMILY
|
return messageFont === 'serif' ? FONT_FAMILY.replace('sans-serif', 'serif').replace('Ubuntu, ', '') : FONT_FAMILY
|
||||||
}, [messageFont])
|
}, [messageFont])
|
||||||
|
|
||||||
const messageBorder = showMessageDivider ? undefined : 'none'
|
const messageBorder = showMessageDivider ? undefined : 'none'
|
||||||
const avatarSource = useMemo(() => (message.modelId ? getModelLogo(message.modelId) : undefined), [message.modelId])
|
|
||||||
|
const avatarSource = useMemo(() => {
|
||||||
|
if (isLocalAi) return AppLogo
|
||||||
|
return message.modelId ? getModelLogo(message.modelId) : undefined
|
||||||
|
}, [message.modelId])
|
||||||
|
|
||||||
const avatarName = useMemo(() => firstLetter(assistant?.name).toUpperCase(), [assistant?.name])
|
const avatarName = useMemo(() => firstLetter(assistant?.name).toUpperCase(), [assistant?.name])
|
||||||
|
|
||||||
const username = useMemo(() => removeLeadingEmoji(getUserName()), [getUserName])
|
const username = useMemo(() => removeLeadingEmoji(getUserName()), [getUserName])
|
||||||
|
|
||||||
const dropdownItems = useMemo(
|
const dropdownItems = useMemo(
|
||||||
@ -146,7 +153,11 @@ const MessageItem: FC<Props> = ({ message, index, showMenu, onDeleteMessage }) =
|
|||||||
<Avatar
|
<Avatar
|
||||||
src={avatarSource}
|
src={avatarSource}
|
||||||
size={35}
|
size={35}
|
||||||
style={{ borderRadius: '20%', cursor: 'pointer' }}
|
style={{
|
||||||
|
borderRadius: '20%',
|
||||||
|
cursor: 'pointer',
|
||||||
|
border: isLocalAi ? '1px solid var(--color-border)' : ''
|
||||||
|
}}
|
||||||
onClick={showMiniApp}>
|
onClick={showMiniApp}>
|
||||||
{avatarName}
|
{avatarName}
|
||||||
</Avatar>
|
</Avatar>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user