From b2c2c2d92dca43ebccbb25f549584deeb61b5823 Mon Sep 17 00:00:00 2001 From: Zhang Minghan Date: Sun, 3 Dec 2023 11:13:58 +0800 Subject: [PATCH] release: channel feature --- app/src/api/conversation.ts | 2 +- .../admin/assemblies/ChannelEditor.tsx | 16 +++-- .../admin/assemblies/ChannelTable.tsx | 6 +- app/src/conf.ts | 2 +- app/src/i18n.ts | 8 ++- channel/channel.go | 3 +- channel/manager.go | 4 +- channel/sequence.go | 2 +- channel/types.go | 4 +- manager/transhipment.go | 72 +++++++++++++------ utils/base.go | 7 ++ 11 files changed, 84 insertions(+), 42 deletions(-) diff --git a/app/src/api/conversation.ts b/app/src/api/conversation.ts index 9aceb2f6..e3be6138 100644 --- a/app/src/api/conversation.ts +++ b/app/src/api/conversation.ts @@ -31,7 +31,7 @@ export class Conversation { if (id === -1 && this.idx === -1) { sharingEvent.bind(({ refer, data }) => { - console.log( + console.debug( `[conversation] load from sharing event (ref: ${refer}, length: ${data.length})`, ); diff --git a/app/src/components/admin/assemblies/ChannelEditor.tsx b/app/src/components/admin/assemblies/ChannelEditor.tsx index 1ce109e5..446b5a36 100644 --- a/app/src/components/admin/assemblies/ChannelEditor.tsx +++ b/app/src/components/admin/assemblies/ChannelEditor.tsx @@ -192,17 +192,21 @@ function ChannelEditor({ display, id, setEnabled }: ChannelEditorProps) { }, [edit.models]); const enabled = useMemo(() => validator(edit), [edit]); + function close(clear?: boolean) { + if (clear) dispatch({ type: "clear" }); + setEnabled(false); + } + async function post() { const data = handler(edit); console.debug(`[channel] preflight channel data`, data); const resp = id === -1 ? await createChannel(data) : await updateChannel(id, data); - toastState(toast, t, resp as ChannelCommonResponse); + toastState(toast, t, resp as ChannelCommonResponse, true); if (resp.status) { - dispatch({ type: "clear" }); - setEnabled(false); + close(true); } } @@ -211,7 +215,6 @@ function ChannelEditor({ display, id, setEnabled }: ChannelEditorProps) { else { const resp = await getChannel(id); toastState(toast, t, resp as ChannelCommonResponse); - console.log(resp); if (resp.data) dispatch({ type: "set", value: resp.data }); } }, [id]); @@ -309,7 +312,8 @@ function ChannelEditor({ display, id, setEnabled }: ChannelEditorProps) { { - dispatch({ type: "add-model", value: model }); + const models = model.split(" "); + dispatch({ type: "add-models", value: models }); }} />