feat: Add "Duplicate Tab" support for Items, Query, and Settings tabs

This commit is contained in:
Bikram Choudhury
2026-05-14 23:03:17 +05:30
parent 98eb31da7e
commit 974ca3df0b
9 changed files with 377 additions and 66 deletions
+16
View File
@@ -1,6 +1,7 @@
import { ActionType, OpenCollectionTab, TabKind } from "Contracts/ActionContracts";
import React from "react";
import * as ViewModels from "../../Contracts/ViewModels";
import { useTabs } from "../../hooks/useTabs";
import { SettingsComponent } from "../Controls/Settings/SettingsComponent";
import TabsBase from "./TabsBase";
@@ -23,6 +24,21 @@ export class CollectionSettingsTabV2 extends SettingsTabV2 {
};
}
public canDuplicate(): boolean {
return true;
}
public duplicateTab(): void {
const newTab = new CollectionSettingsTabV2({
tabKind: ViewModels.CollectionTabKind.CollectionSettingsV2,
title: this.tabTitle(),
tabPath: "",
collection: this.collection,
node: this.collection,
});
useTabs.getState().activateNewTab(newTab);
}
public onActivate(): void {
super.onActivate();
this.collection.selectedSubnodeKind(ViewModels.CollectionTabKind.CollectionSettingsV2);