Skip to content
This repository has been archived by the owner on May 17, 2024. It is now read-only.

Commit

Permalink
Merge branch 'fix/bind_function' into develop
Browse files Browse the repository at this point in the history
AruSeito committed Apr 30, 2024
2 parents eafee8f + 8d8bd0b commit 72656aa
Showing 8 changed files with 39 additions and 34 deletions.
2 changes: 1 addition & 1 deletion apps/agent/src/Layout/Workspace/pc/modules/Menu/index.tsx
Original file line number Diff line number Diff line change
@@ -171,7 +171,7 @@ const PCWorkspaceMenu: FC = () => {
className="divider"
/>
</div>
{recentTabInfos.length > 1 && (
{recentTabInfos.length > 0 && (
<div
css={closeAllContainerStyle}
onClick={handleClickCloseAll}
3 changes: 2 additions & 1 deletion apps/agent/src/page/WorkSpace/Chat/index.tsx
Original file line number Diff line number Diff line change
@@ -2,6 +2,7 @@ import { FC, lazy, useEffect } from "react"
import { useParams } from "react-router-dom"
import { LayoutAutoChange } from "@illa-public/layout-auto-change"
import { TipisWebSocketProvider } from "@/components/PreviewChat/TipisWebscoketContext"
import { DEFAULT_CHAT_ID } from "@/redux/ui/recentTab/state"
import { useAddChatTab } from "@/utils/recentTabs/hook"
import { ChatWSProvider } from "./context"

@@ -13,7 +14,7 @@ const ChatPage: FC = () => {
const addChatTab = useAddChatTab()

useEffect(() => {
if (chatID) {
if (chatID && chatID !== DEFAULT_CHAT_ID) {
addChatTab(chatID)
}
}, [addChatTab, chatID])
21 changes: 10 additions & 11 deletions apps/agent/src/page/WorkSpace/Chat/module/chatHistory.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { FC, useCallback, useContext, useEffect, useMemo } from "react"
import { useSearchParams } from "react-router-dom"
import { useParams } from "react-router-dom"
import { TextSignal } from "@/api/ws/textSignal"
import { PreviewChat } from "@/components/PreviewChat"
import { PreviewChatUseProvider } from "@/components/PreviewChat/PreviewChatUseContext"
@@ -9,18 +9,22 @@ import {
ChatMessage,
ChatSendRequestPayload,
} from "@/components/PreviewChat/interface"
import { DEFAULT_CHAT_ID } from "@/redux/ui/recentTab/state"
import { useAddChatTab } from "@/utils/recentTabs/hook"
import { ChatContext } from "../../AI/components/ChatContext"
import { ChatStableWSContext, ChatUnStableWSContext } from "../context"
import { INIT_CHAT_CONFIG } from "./constants"
import { rightPanelContainerStyle } from "./style"

export const ChatHistory: FC = () => {
const { chatID } = useParams()

const { connect, leaveRoom, sendMessage } = useContext(ChatStableWSContext)

const { getReadyState, isRunning, chatMessages, isReceiving, inRoomUsers } =
useContext(ChatUnStableWSContext)

const [urlSearchParams] = useSearchParams()
const addChatTab = useAddChatTab()

const wsContext = useMemo(
() => ({
@@ -35,19 +39,14 @@ export const ChatHistory: FC = () => {

const onSendMessage = useCallback(
(message: ChatMessage) => {
const defaultModelConfig =
import.meta.env.ILLA_APP_ENV === "production"
? INIT_CHAT_CONFIG.model
: urlSearchParams.get("defaultModel")
? Number(urlSearchParams.get("defaultModel"))
: INIT_CHAT_CONFIG.model

if (DEFAULT_CHAT_ID === chatID) {
addChatTab(DEFAULT_CHAT_ID)
}
sendMessage(
{
threadID: message.threadID,
prompt: message.message,
...INIT_CHAT_CONFIG,
model: defaultModelConfig,
} as ChatSendRequestPayload,
TextSignal.RUN,
SEND_MESSAGE_WS_TYPE.CHAT,
@@ -58,7 +57,7 @@ export const ChatHistory: FC = () => {
},
)
},
[sendMessage, urlSearchParams],
[addChatTab, chatID, sendMessage],
)

useEffect(() => {
Original file line number Diff line number Diff line change
@@ -8,7 +8,13 @@ import { useGetWhiteListIPQuery } from "@/redux/services/peripheralAPI"
import { useCopyToClipboard } from "@/utils/copyToClipboard"
import CopyPanel from "../../components/CopyPanel"
import { IFunctionForm } from "../../interface"
import { blockStyle, descStyle, docPanelStyle, titleStyle } from "./style"
import {
blockStyle,
descStyle,
docPanelStyle,
imageStyle,
titleStyle,
} from "./style"
import { INTEGRATION_TYPE_MAP_DOC } from "./utils"

const DocPanel: FC = () => {
@@ -59,6 +65,10 @@ const DocPanel: FC = () => {
</Button>
<div css={blockStyle}>
<p css={titleStyle}>{t("function.edit.right_panel.add_to_tipi")}</p>
<img
src="https://cdn.tipis.ai/tipis/how_to_add_functions.gif"
css={imageStyle}
/>
</div>
<div css={blockStyle}>
<p css={titleStyle}>{t("function.edit.right_panel.write_in_prompt")}</p>
Original file line number Diff line number Diff line change
@@ -29,3 +29,10 @@ export const descStyle = css`
font-weight: 400;
line-height: 20px;
`

export const imageStyle = css`
width: 100%;
border-radius: 12px;
overflow: hidden;
background: #f2f3f5;
`
5 changes: 2 additions & 3 deletions apps/agent/src/redux/ui/recentTab/reducer.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { CaseReducer, PayloadAction } from "@reduxjs/toolkit"
import { IRecentTabState, ITabInfo } from "./interface"
import { DEFAULT_CHAT_ID, INIT_TABS } from "./state"

export const setRecentTabReducer: CaseReducer<
IRecentTabState,
@@ -67,8 +66,8 @@ export const deleteRecentTabByCacheIDReducer: CaseReducer<
export const deleteAllRecentTabReducer: CaseReducer<IRecentTabState> = (
state,
) => {
state.tabs = INIT_TABS
state.currentTabID = DEFAULT_CHAT_ID
state.tabs = []
state.currentTabID = ""
}

export const updateRecentTabReducer: CaseReducer<
14 changes: 2 additions & 12 deletions apps/agent/src/redux/ui/recentTab/state.ts
Original file line number Diff line number Diff line change
@@ -1,18 +1,8 @@
import { IRecentTabState, ITabInfo, TAB_TYPE } from "./interface"
import { IRecentTabState } from "./interface"

export const DEFAULT_CHAT_ID = "DEFAULT_CHAT"

export const INIT_TABS: ITabInfo[] = [
{
tabName: "",
tabIcon: "",
tabType: TAB_TYPE.CHAT,
tabID: DEFAULT_CHAT_ID,
cacheID: DEFAULT_CHAT_ID,
},
]

export const recentTabInitState: IRecentTabState = {
currentTabID: DEFAULT_CHAT_ID,
tabs: INIT_TABS,
tabs: [],
}
9 changes: 4 additions & 5 deletions apps/agent/src/utils/localForage/recentTab.ts
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
import { klona } from "klona/json"
import { ITabInfo } from "@/redux/ui/recentTab/interface"
import { DEFAULT_CHAT_ID, INIT_TABS } from "@/redux/ui/recentTab/state"
import { DEFAULT_CHAT_ID } from "@/redux/ui/recentTab/state"
import { ITeamData } from "./interface"
import { getTeamDataByTeamID, setTeamDataByTeamID } from "./teamData"

export const getRecentTabs = async (teamID: string) => {
const teamData = await getTeamDataByTeamID(teamID)
if (!teamData) {
await setRecentTabs(teamID, INIT_TABS)
return INIT_TABS
return []
}
const tabsInfo = teamData.tabsInfo ?? INIT_TABS
const tabsInfo = teamData.tabsInfo ?? []
return tabsInfo
}

@@ -70,7 +69,7 @@ export const removeAllRecentTabsAndCacheData = async (teamID: string) => {
if (!teamData) return
const newTeamData = klona(teamData)
const defaultCache = teamData.uiHistory?.[DEFAULT_CHAT_ID] ?? {}
newTeamData.tabsInfo = INIT_TABS
newTeamData.tabsInfo = []
newTeamData.uiHistory = {
[DEFAULT_CHAT_ID]: defaultCache,
}

0 comments on commit 72656aa

Please sign in to comment.