feat: add is published field to published outline response (#790)

This commit is contained in:
Khor Shu Heng 2024-09-04 19:14:39 +08:00 committed by GitHub
parent 4e384b982e
commit 348f2c8ff1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 5 additions and 1 deletions

View File

@ -186,6 +186,7 @@ pub struct PublishedView {
pub name: String,
pub icon: Option<ViewIcon>,
pub layout: ViewLayout,
pub is_published: bool,
/// contains fields like `is_space`, and font information
pub extra: Option<serde_json::Value>,
pub children: Vec<PublishedView>,

View File

@ -47,6 +47,7 @@ pub fn collab_folder_to_published_outline(
.as_ref()
.map(|icon| to_dto_view_icon(icon.clone())),
layout: to_view_layout(&root.layout),
is_published: false,
extra,
children: root
.children
@ -97,7 +98,8 @@ fn to_publish_view(
)
})
.collect();
if view_is_space(&view) || publish_view_ids.contains(view_id) || !pruned_view.is_empty() {
let is_published = publish_view_ids.contains(view_id);
if view_is_space(&view) || is_published || !pruned_view.is_empty() {
Some(PublishedView {
view_id: view.id.clone(),
name: view.name.clone(),
@ -105,6 +107,7 @@ fn to_publish_view(
.icon
.as_ref()
.map(|icon| to_dto_view_icon(icon.clone())),
is_published,
layout: to_view_layout(&view.layout),
extra,
children: pruned_view,