diff --git a/apps/designer/app/designer/features/sidebar-left/lib/header.tsx b/apps/designer/app/designer/features/sidebar-left/lib/header.tsx
index de10acfab4..b8817acb35 100644
--- a/apps/designer/app/designer/features/sidebar-left/lib/header.tsx
+++ b/apps/designer/app/designer/features/sidebar-left/lib/header.tsx
@@ -2,12 +2,12 @@ import { Flex, IconButton, Text } from "@webstudio-is/design-system";
import { Separator } from "@webstudio-is/design-system";
import { Cross1Icon } from "@webstudio-is/icons";
-type BaseHeaderProps = {
+type HeaderProps = {
title: string;
- actions: React.ReactNode;
+ suffix: React.ReactNode;
};
-export const BaseHeader = ({ title, actions }: BaseHeaderProps) => {
+export const Header = ({ title, suffix }: HeaderProps) => {
return (
<>
{
justify="between"
>
{title}
- {actions && {actions}}
+ {suffix && {suffix}}
>
);
};
-type HeaderProps = {
- title: string;
- isClosable?: boolean;
- onClose?: () => void;
-};
-
-export const Header = ({ title, isClosable = true, onClose }: HeaderProps) => {
- return (
- onClose?.()} size="2" aria-label="Close">
-
-
- ) : null
- }
- />
- );
-};
+export const CloseButton = ({ onClick }: { onClick: () => void }) => (
+
+
+
+);
diff --git a/apps/designer/app/designer/features/sidebar-left/lib/navigator/navigator.tsx b/apps/designer/app/designer/features/sidebar-left/lib/navigator/navigator.tsx
index b5fd3977c7..9e7b0a2d61 100644
--- a/apps/designer/app/designer/features/sidebar-left/lib/navigator/navigator.tsx
+++ b/apps/designer/app/designer/features/sidebar-left/lib/navigator/navigator.tsx
@@ -4,7 +4,7 @@ import { type Publish } from "~/shared/pubsub";
import { useCallback } from "react";
import { useSelectedInstanceData } from "~/designer/shared/nano-states";
import { useRootInstance } from "~/shared/nano-states";
-import { Header } from "../header";
+import { Header, CloseButton } from "../header";
import { InstanceTree } from "~/designer/shared/tree";
declare module "~/shared/pubsub" {
@@ -81,7 +81,10 @@ export const Navigator = ({ publish, isClosable, onClose }: NavigatorProps) => {
if (rootInstance === undefined) return null;
return (
-
+ onClose?.()} />}
+ />
{
- onSetActiveTab("none");
- }}
+ suffix={ onSetActiveTab("none")} />}
/>
>
diff --git a/apps/designer/app/designer/features/sidebar-left/panels/components/components.tsx b/apps/designer/app/designer/features/sidebar-left/panels/components/components.tsx
index 4da2564dec..80773e8224 100644
--- a/apps/designer/app/designer/features/sidebar-left/panels/components/components.tsx
+++ b/apps/designer/app/designer/features/sidebar-left/panels/components/components.tsx
@@ -9,7 +9,7 @@ import { createInstance } from "~/shared/tree-utils";
import type { TabName } from "../../types";
import { ComponentThumb } from "./component-thumb";
import { useCanvasRect, useZoom } from "~/designer/shared/nano-states";
-import { Header } from "../../lib/header";
+import { Header, CloseButton } from "../../lib/header";
const componentNames = (
Object.keys(components) as Array
@@ -135,9 +135,7 @@ export const TabContent = ({ publish, onSetActiveTab }: TabContentProps) => {
{
- onSetActiveTab("none");
- }}
+ suffix={ onSetActiveTab("none")} />}
/>
-
{onNewPage && (
)}
- {onClose && (
-
-
-
- )}
+ {onClose && }
>
}
/>
diff --git a/apps/designer/app/designer/features/sidebar-left/panels/pages/settings.tsx b/apps/designer/app/designer/features/sidebar-left/panels/pages/settings.tsx
index 48264464e8..2cd0e1eb37 100644
--- a/apps/designer/app/designer/features/sidebar-left/panels/pages/settings.tsx
+++ b/apps/designer/app/designer/features/sidebar-left/panels/pages/settings.tsx
@@ -13,7 +13,7 @@ import {
import { useFetcher } from "@remix-run/react";
import { ChevronDoubleLeftIcon } from "@webstudio-is/icons";
import type { ZodError } from "zod";
-import { BaseHeader } from "../../lib/header";
+import { Header } from "../../lib/header";
import { useEffect, useRef, useState } from "react";
import { type Page } from "@webstudio-is/project";
@@ -73,16 +73,14 @@ export const NewPageSettings = ({
return (
<>
-
- {onClose && (
-
-
-
- )}
- >
+ suffix={
+ onClose && (
+
+
+
+ )
}
/>