fix: switch saveMode for SaveFilterSegmentButton (#20502)
This commit is contained in:
1 parent
f5750f3933
commit
9ac037c524
2 files changed
+14
-4
No files matched your search
@@ -160,10 +160,10 @@ export function DataTableProvider({
|
||||
|
||||
const setPageSizeAndGoToFirstPage = useCallback(
|
||||
(newPageSize: number | null) => {
|
||||
setPageSize(newPageSize === DEFAULT_PAGE_SIZE ? null : newPageSize);
|
||||
setPageSize(newPageSize === defaultPageSize ? null : newPageSize);
|
||||
setPageIndex(null);
|
||||
},
|
||||
[setPageSize, setPageIndex]
|
||||
[setPageSize, setPageIndex, defaultPageSize]
|
||||
);
|
||||
|
||||
const { segments, selectedSegment, canSaveSegment, setSegmentIdAndSaveToLocalStorage } = useSegments({
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { useSession } from "next-auth/react";
|
||||
import { useState } from "react";
|
||||
import { useState, useEffect } from "react";
|
||||
import { useForm } from "react-hook-form";
|
||||
|
||||
import { checkAdminOrOwner } from "@calcom/features/auth/lib/checkAdminOrOwner";
|
||||
@@ -51,12 +51,22 @@ export function SaveFilterSegmentButton() {
|
||||
selectedSegment,
|
||||
canSaveSegment,
|
||||
setSegmentId,
|
||||
pageSize,
|
||||
} = useDataTable();
|
||||
|
||||
const [saveMode, setSaveMode] = useState<"create" | "update">(() =>
|
||||
selectedSegment ? "update" : "create"
|
||||
);
|
||||
|
||||
// When the dialog is not open,
|
||||
// switch `saveMode` according to `selectedSegment`
|
||||
useEffect(() => {
|
||||
if (isOpen) {
|
||||
return;
|
||||
}
|
||||
setSaveMode(selectedSegment ? "update" : "create");
|
||||
}, [selectedSegment, isOpen]);
|
||||
|
||||
const { data: teams } = trpc.viewer.teams.list.useQuery();
|
||||
|
||||
const { mutate: createSegment } = trpc.viewer.filterSegments.create.useMutation({
|
||||
@@ -94,7 +104,7 @@ export function SaveFilterSegmentButton() {
|
||||
sorting,
|
||||
columnVisibility,
|
||||
columnSizing,
|
||||
perPage: 10,
|
||||
perPage: pageSize,
|
||||
};
|
||||
|
||||
if (saveMode === "update") {
|
||||
|
||||
Reference in new issue
Block a user