diff --git a/src/shared/ui/ExpandableWrapper/ExpandableWrapper.svelte b/src/shared/ui/ExpandableWrapper/ExpandableWrapper.svelte
new file mode 100644
index 0000000..d075456
--- /dev/null
+++ b/src/shared/ui/ExpandableWrapper/ExpandableWrapper.svelte
@@ -0,0 +1,188 @@
+
+
+
+
+ {@render badge?.({ expanded, disabled })}
+
+
+ {@render visibleContent?.({ expanded, disabled })}
+
+ {#if expanded}
+
+ {@render hiddenContent?.({ expanded, disabled })}
+
+ {/if}
+
+
diff --git a/src/shared/ui/index.ts b/src/shared/ui/index.ts
index 86fcf01..eec2f82 100644
--- a/src/shared/ui/index.ts
+++ b/src/shared/ui/index.ts
@@ -8,6 +8,7 @@ import CheckboxFilter from './CheckboxFilter/CheckboxFilter.svelte';
import ComboControl from './ComboControl/ComboControl.svelte';
import ComboControlV2 from './ComboControlV2/ComboControlV2.svelte';
import ContentEditable from './ContentEditable/ContentEditable.svelte';
+import ExpandableWrapper from './ExpandableWrapper/ExpandableWrapper.svelte';
import SearchBar from './SearchBar/SearchBar.svelte';
import VirtualList from './VirtualList/VirtualList.svelte';
@@ -16,6 +17,7 @@ export {
ComboControl,
ComboControlV2,
ContentEditable,
+ ExpandableWrapper,
SearchBar,
VirtualList,
};