@@ -185,8 +208,8 @@ export const InboxIssueProperties = observer(function InboxIssueProperties(props
{isVisible && (
{selectedParentIssue ? (
-
{selectedParentIssue
? `${selectedParentIssue.project__identifier}-${selectedParentIssue.sequence_id}`
- : `Add parent`}
+ : t("add_parent")}
}
+ buttonAsChild
+ buttonClassName="h-full"
+ items={parentMenuItems}
placement="bottom-start"
- className="h-full w-full"
- customButtonClassName="h-full"
- tabIndex={getIndex("parent_id")}
- >
- <>
- setParentIssueModalOpen(true)}>
- Change parent work item
-
- {
- handleData("parent_id", "");
- setSelectedParentIssue(undefined);
- }}
- >
- Remove parent work item
-
- >
-
+ />
) : (
)}
diff --git a/plane-src/apps/web/core/components/issues/issue-layouts/filters/header/helpers/dropdown.tsx b/plane-src/apps/web/core/components/issues/issue-layouts/filters/header/helpers/dropdown.tsx
index c790d05..1cf5207 100644
--- a/plane-src/apps/web/core/components/issues/issue-layouts/filters/header/helpers/dropdown.tsx
+++ b/plane-src/apps/web/core/components/issues/issue-layouts/filters/header/helpers/dropdown.tsx
@@ -13,7 +13,7 @@ import { Popover, Portal, Transition } from "@headlessui/react";
import { Button } from "@plane/propel/button";
type Props = {
- children: React.ReactNode;
+ children: React.ReactNode | ((props: { closeDropdown: () => void }) => React.ReactNode);
icon?: React.ReactElement;
miniIcon?: React.ReactNode;
title?: string;
@@ -21,6 +21,7 @@ type Props = {
disabled?: boolean;
tabIndex?: number;
menuButton?: React.ReactNode;
+ menuButtonWrapperClassName?: string;
isFiltersApplied?: boolean;
};
@@ -34,6 +35,7 @@ export function FiltersDropdown(props: Props) {
disabled = false,
tabIndex,
menuButton,
+ menuButtonWrapperClassName,
isFiltersApplied = false,
} = props;
@@ -46,11 +48,16 @@ export function FiltersDropdown(props: Props) {
return (
- {({ open }) => (
+ {({ open, close }) => (
<>
{menuButton ? (
-
diff --git a/plane-src/apps/web/core/components/issues/issue-layouts/filters/header/mobile-layout-selection.tsx b/plane-src/apps/web/core/components/issues/issue-layouts/filters/header/mobile-layout-selection.tsx
index 31e50bb..c59cfbb 100644
--- a/plane-src/apps/web/core/components/issues/issue-layouts/filters/header/mobile-layout-selection.tsx
+++ b/plane-src/apps/web/core/components/issues/issue-layouts/filters/header/mobile-layout-selection.tsx
@@ -6,10 +6,10 @@
import { ISSUE_LAYOUTS } from "@plane/constants";
import { useTranslation } from "@plane/i18n";
-import { Button } from "@plane/propel/button";
import { ChevronDownIcon } from "@plane/propel/icons";
import type { EIssueLayoutTypes } from "@plane/types";
-import { CustomMenu } from "@plane/ui";
+import { cn } from "@plane/utils";
+import { SelectionDropdown } from "@/components/common/selection-dropdown";
import { IssueLayoutIcon } from "../../layout-icon";
export function MobileLayoutSelection({
@@ -24,35 +24,26 @@ export function MobileLayoutSelection({
}) {
const { t } = useTranslation();
return (
-
+
{activeLayout && (
-
+
)}
-
+
}
- customButtonClassName="flex flex-grow justify-center text-secondary text-13"
- closeOnSelect
- >
- {ISSUE_LAYOUTS.filter((l) => layouts.includes(l.key)).map((layout, index) => (
-