feat: AI chat (#5383)

* chore: ai type

* chore: use patch to fix version issue

* chore: update

* chore: update

* chore: integrate client api

* chore: add schema

* chore: setup event

* chore: add event test

* chore: add test

* chore: update test

* chore: load chat message

* chore: load chat message

* chore: chat ui

* chore: disable create chat

* chore: update client api

* chore: disable chat

* chore: ui theme

* chore: ui theme

* chore: copy message

* chore: fix test

* chore: show error

* chore: update bloc

* chore: update test

* chore: lint

* chore: icon

* chore: hover

* chore: show unsupported page

* chore: adjust mobile ui

* chore: adjust view title bar

* chore: return related question

* chore: error page

* chore: error page

* chore: code format

* chore: prompt

* chore: fix test

* chore: ui adjust

* chore: disable create chat

* chore: add loading page

* chore: fix test

* chore: disable chat action

* chore: add maximum text limit
This commit is contained in:
Nathan.fooo
2024-06-03 14:27:28 +08:00
committed by GitHub
parent 4d42c9ea68
commit aec7bc847e
114 changed files with 5473 additions and 282 deletions

View File

@ -136,6 +136,7 @@ pub enum ViewLayoutPB {
Grid = 1,
Board = 2,
Calendar = 3,
Chat = 4,
}
impl ViewLayoutPB {
@ -154,6 +155,7 @@ impl std::convert::From<ViewLayout> for ViewLayoutPB {
ViewLayout::Board => ViewLayoutPB::Board,
ViewLayout::Document => ViewLayoutPB::Document,
ViewLayout::Calendar => ViewLayoutPB::Calendar,
ViewLayout::Chat => ViewLayoutPB::Chat,
}
}
}

View File

@ -796,7 +796,10 @@ impl FolderManager {
if let Some(view) = &view {
let view_layout: ViewLayout = view.layout.clone().into();
if let Some(handle) = self.operation_handlers.get(&view_layout) {
let _ = handle.open_view(view_id).await;
info!("Open view: {}", view.id);
if let Err(err) = handle.open_view(view_id).await {
error!("Open view error: {:?}", err);
}
}
}

View File

@ -115,6 +115,7 @@ impl From<ViewLayoutPB> for ViewLayout {
ViewLayoutPB::Grid => ViewLayout::Grid,
ViewLayoutPB::Board => ViewLayout::Board,
ViewLayoutPB::Calendar => ViewLayout::Calendar,
ViewLayoutPB::Chat => ViewLayout::Chat,
}
}
}