mirror of
https://github.com/Azure/cosmos-explorer.git
synced 2025-06-05 15:12:04 +01:00
Move column selection and sorting behind feature flag enableDocumentsTableColumnSelection
This commit is contained in:
parent
85352b74a3
commit
e23ba02561
@ -50,6 +50,7 @@ import {
|
|||||||
import { INITIAL_SELECTED_ROW_INDEX, useDocumentsTabStyles } from "Explorer/Tabs/DocumentsTabV2/DocumentsTabV2";
|
import { INITIAL_SELECTED_ROW_INDEX, useDocumentsTabStyles } from "Explorer/Tabs/DocumentsTabV2/DocumentsTabV2";
|
||||||
import { selectionHelper } from "Explorer/Tabs/DocumentsTabV2/SelectionHelper";
|
import { selectionHelper } from "Explorer/Tabs/DocumentsTabV2/SelectionHelper";
|
||||||
import { LayoutConstants } from "Explorer/Theme/ThemeUtil";
|
import { LayoutConstants } from "Explorer/Theme/ThemeUtil";
|
||||||
|
import { userContext } from "UserContext";
|
||||||
import { isEnvironmentCtrlPressed, isEnvironmentShiftPressed } from "Utils/KeyboardUtils";
|
import { isEnvironmentCtrlPressed, isEnvironmentShiftPressed } from "Utils/KeyboardUtils";
|
||||||
import { useSidePanel } from "hooks/useSidePanel";
|
import { useSidePanel } from "hooks/useSidePanel";
|
||||||
import React, { useCallback, useMemo } from "react";
|
import React, { useCallback, useMemo } from "react";
|
||||||
@ -227,51 +228,55 @@ export const DocumentsTableComponent: React.FC<IDocumentsTableComponentProps> =
|
|||||||
<MenuItem key="refresh" icon={<ArrowClockwise16Regular />} onClick={onRefreshTable}>
|
<MenuItem key="refresh" icon={<ArrowClockwise16Regular />} onClick={onRefreshTable}>
|
||||||
Refresh
|
Refresh
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<MenuItem
|
{userContext.features.enableDocumentsTableColumnSelection && (
|
||||||
icon={<TextSortAscendingRegular />}
|
<>
|
||||||
onClick={(e) => onSortClick(e, column.id, "ascending")}
|
<MenuItem
|
||||||
>
|
icon={<TextSortAscendingRegular />}
|
||||||
Sort ascending
|
onClick={(e) => onSortClick(e, column.id, "ascending")}
|
||||||
</MenuItem>
|
>
|
||||||
<MenuItem
|
Sort ascending
|
||||||
icon={<TextSortDescendingRegular />}
|
</MenuItem>
|
||||||
onClick={(e) => onSortClick(e, column.id, "descending")}
|
<MenuItem
|
||||||
>
|
icon={<TextSortDescendingRegular />}
|
||||||
Sort descending
|
onClick={(e) => onSortClick(e, column.id, "descending")}
|
||||||
</MenuItem>
|
>
|
||||||
<MenuItem icon={<ArrowResetRegular />} onClick={(e) => onSortClick(e, undefined, undefined)}>
|
Sort descending
|
||||||
Reset sorting
|
</MenuItem>
|
||||||
</MenuItem>
|
<MenuItem icon={<ArrowResetRegular />} onClick={(e) => onSortClick(e, undefined, undefined)}>
|
||||||
{!isColumnSelectionDisabled && (
|
Reset sorting
|
||||||
<MenuItem key="editcolumns" icon={<EditRegular />} onClick={openColumnSelectionPane}>
|
</MenuItem>
|
||||||
Edit columns
|
{!isColumnSelectionDisabled && (
|
||||||
</MenuItem>
|
<MenuItem key="editcolumns" icon={<EditRegular />} onClick={openColumnSelectionPane}>
|
||||||
)}
|
Edit columns
|
||||||
<MenuDivider />
|
</MenuItem>
|
||||||
<MenuItem
|
)}
|
||||||
key="keyboardresize"
|
<MenuDivider />
|
||||||
icon={<TableResizeColumnRegular />}
|
<MenuItem
|
||||||
onClick={columnSizing.enableKeyboardMode(column.id)}
|
key="keyboardresize"
|
||||||
>
|
icon={<TableResizeColumnRegular />}
|
||||||
Resize with left/right arrow keys
|
onClick={columnSizing.enableKeyboardMode(column.id)}
|
||||||
</MenuItem>
|
>
|
||||||
{!isColumnSelectionDisabled && (
|
Resize with left/right arrow keys
|
||||||
<MenuItem
|
</MenuItem>
|
||||||
key="remove"
|
{!isColumnSelectionDisabled && (
|
||||||
icon={<DeleteRegular />}
|
<MenuItem
|
||||||
onClick={() => {
|
key="remove"
|
||||||
// Remove column id from selectedColumnIds
|
icon={<DeleteRegular />}
|
||||||
const index = selectedColumnIds.indexOf(column.id);
|
onClick={() => {
|
||||||
if (index === -1) {
|
// Remove column id from selectedColumnIds
|
||||||
return;
|
const index = selectedColumnIds.indexOf(column.id);
|
||||||
}
|
if (index === -1) {
|
||||||
const newSelectedColumnIds = [...selectedColumnIds];
|
return;
|
||||||
newSelectedColumnIds.splice(index, 1);
|
}
|
||||||
onColumnSelectionChange(newSelectedColumnIds);
|
const newSelectedColumnIds = [...selectedColumnIds];
|
||||||
}}
|
newSelectedColumnIds.splice(index, 1);
|
||||||
>
|
onColumnSelectionChange(newSelectedColumnIds);
|
||||||
Remove column
|
}}
|
||||||
</MenuItem>
|
>
|
||||||
|
Remove column
|
||||||
|
</MenuItem>
|
||||||
|
)}
|
||||||
|
</>
|
||||||
)}
|
)}
|
||||||
</MenuList>
|
</MenuList>
|
||||||
</MenuPopover>
|
</MenuPopover>
|
||||||
|
@ -38,6 +38,7 @@ export type Features = {
|
|||||||
readonly copilotChatFixedMonacoEditorHeight: boolean;
|
readonly copilotChatFixedMonacoEditorHeight: boolean;
|
||||||
readonly enablePriorityBasedExecution: boolean;
|
readonly enablePriorityBasedExecution: boolean;
|
||||||
readonly disableConnectionStringLogin: boolean;
|
readonly disableConnectionStringLogin: boolean;
|
||||||
|
readonly enableDocumentsTableColumnSelection: boolean;
|
||||||
|
|
||||||
// can be set via both flight and feature flag
|
// can be set via both flight and feature flag
|
||||||
autoscaleDefault: boolean;
|
autoscaleDefault: boolean;
|
||||||
@ -108,6 +109,7 @@ export function extractFeatures(given = new URLSearchParams(window.location.sear
|
|||||||
copilotChatFixedMonacoEditorHeight: "true" === get("copilotchatfixedmonacoeditorheight"),
|
copilotChatFixedMonacoEditorHeight: "true" === get("copilotchatfixedmonacoeditorheight"),
|
||||||
enablePriorityBasedExecution: "true" === get("enableprioritybasedexecution"),
|
enablePriorityBasedExecution: "true" === get("enableprioritybasedexecution"),
|
||||||
disableConnectionStringLogin: "true" === get("disableconnectionstringlogin"),
|
disableConnectionStringLogin: "true" === get("disableconnectionstringlogin"),
|
||||||
|
enableDocumentsTableColumnSelection: "true" === get("enabledocumentstablecolumnselection"),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user