diff --git a/.changes/default-permissions-doc.md b/.changes/default-permissions-doc.md
new file mode 100644
index 000000000..4e8bc57ba
--- /dev/null
+++ b/.changes/default-permissions-doc.md
@@ -0,0 +1,5 @@
+---
+tauri-utils: "minor:bug"
+---
+
+Only write `This default permission set includes the following` to the reference if the default permission set is not empty
diff --git a/crates/tauri-utils/src/acl/build.rs b/crates/tauri-utils/src/acl/build.rs
index 9b339e2a1..266b15e46 100644
--- a/crates/tauri-utils/src/acl/build.rs
+++ b/crates/tauri-utils/src/acl/build.rs
@@ -326,11 +326,9 @@ pub fn generate_docs(
out_dir: &Path,
plugin_identifier: &str,
) -> Result<(), Error> {
+ let mut default_permission = "".to_owned();
let mut permission_table = "".to_string();
- let mut default_permission = "## Default Permission\n\n".to_string();
- let mut contains_default = false;
-
fn docs_from(id: &str, description: Option<&str>, plugin_identifier: &str) -> String {
let mut docs = format!("\n
\n| \n\n`{plugin_identifier}:{id}`\n\n | \n");
if let Some(d) = description {
@@ -351,15 +349,16 @@ pub fn generate_docs(
}
if let Some(default) = &permission.default {
- contains_default = true;
-
- default_permission.push_str(default.description.as_deref().unwrap_or_default());
+ default_permission.push_str("## Default Permission\n\n");
+ default_permission.push_str(default.description.as_deref().unwrap_or_default().trim());
default_permission.push('\n');
default_permission.push('\n');
- default_permission.push_str("#### This default permission set includes the following:\n");
- default_permission.push('\n');
- for permission in &default.permissions {
- default_permission.push_str(&format!("- `{permission}`\n"));
+ if !default.permissions.is_empty() {
+ default_permission.push_str("#### This default permission set includes the following:\n\n");
+ for permission in &default.permissions {
+ default_permission.push_str(&format!("- `{permission}`\n"));
+ }
+ default_permission.push('\n');
}
}
@@ -373,12 +372,7 @@ pub fn generate_docs(
}
}
- if !contains_default {
- default_permission = "".to_string();
- }
-
- let docs =
- format!("{default_permission}\n{PERMISSION_TABLE_HEADER}\n{permission_table}\n");
+ let docs = format!("{default_permission}{PERMISSION_TABLE_HEADER}\n{permission_table}\n");
let reference_path = out_dir.join(PERMISSION_DOCS_FILE_NAME);
write_if_changed(&reference_path, docs).map_err(|e| Error::WriteFile(e, reference_path))?;
diff --git a/examples/api/src-tauri/tauri-plugin-sample/permissions/autogenerated/reference.md b/examples/api/src-tauri/tauri-plugin-sample/permissions/autogenerated/reference.md
index f6c599938..7e67267d2 100644
--- a/examples/api/src-tauri/tauri-plugin-sample/permissions/autogenerated/reference.md
+++ b/examples/api/src-tauri/tauri-plugin-sample/permissions/autogenerated/reference.md
@@ -1,4 +1,3 @@
-
## Permission Table