From dc2c4dca0845aa9666a7c7d7eb56265df252f82f Mon Sep 17 00:00:00 2001
From: badcode <alitokurr@gmail.com>
Date: Tue, 29 Apr 2025 16:55:15 +0000
Subject: [PATCH] docs: add fix for 'remote end hung up unexpectedly' error during initial sync (#1939)

---
 docs/layout-components.md |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/docs/layout-components.md b/docs/layout-components.md
index 0c148a3..09c2d76 100644
--- a/docs/layout-components.md
+++ b/docs/layout-components.md
@@ -60,3 +60,34 @@
 ```typescript
 Component.DesktopOnly(Component.TableOfContents())
 ```
+
+## `ConditionalRender` Component
+
+The `ConditionalRender` component is a wrapper that conditionally renders its child component based on a provided condition function. This is useful for creating dynamic layouts where components should only appear under certain conditions.
+
+```typescript
+type ConditionalRenderConfig = {
+  component: QuartzComponent
+  condition: (props: QuartzComponentProps) => boolean
+}
+```
+
+### Example Usage
+
+```typescript
+Component.ConditionalRender({
+  component: Component.Search(),
+  condition: (props) => props.displayClass !== "fullpage",
+})
+```
+
+The example above would only render the Search component when the page is not in fullpage mode.
+
+```typescript
+Component.ConditionalRender({
+  component: Component.Breadcrumbs(),
+  condition: (page) => page.fileData.slug !== "index",
+})
+```
+
+The example above would hide breadcrumbs on the root `index.md` page.

--
Gitblit v1.10.0