mirror of
https://github.com/Azure/cosmos-explorer.git
synced 2026-06-29 01:27:22 +01:00
d374458e1b
* feat: Redesign container-copy flow to select destination account and enable cross-account container creation * upgrade RBAC permissions from read only to read-write * fix copyjob playwright tests * swap source-destination content * fix formating * use targetAccountOverride for capability checks in AddCollectionPanel * feat: localize ContainerCopy hardcoded strings using i18next and refactor readDatabasesWithARM * removed container copy messages json file
37 lines
1.5 KiB
TypeScript
37 lines
1.5 KiB
TypeScript
import { AccountOverride } from "Contracts/DataModels";
|
|
import { isFabricNative } from "Platform/Fabric/FabricUtil";
|
|
import * as Constants from "../Common/Constants";
|
|
import { userContext } from "../UserContext";
|
|
|
|
export const isCapabilityEnabled = (capabilityName: string, targetAccountOverride?: AccountOverride): boolean => {
|
|
const { databaseAccount } = userContext;
|
|
const capabilities = targetAccountOverride?.capabilities || databaseAccount?.properties?.capabilities;
|
|
if (capabilities) {
|
|
return capabilities.some((capability) => capability.name === capabilityName);
|
|
}
|
|
return false;
|
|
};
|
|
|
|
export const isServerlessAccount = (targetAccountOverride?: AccountOverride): boolean => {
|
|
const { databaseAccount } = userContext;
|
|
const capacityMode = targetAccountOverride?.capacityMode || databaseAccount?.properties?.capacityMode;
|
|
return (
|
|
capacityMode === Constants.CapacityMode.Serverless ||
|
|
isCapabilityEnabled(Constants.CapabilityNames.EnableServerless, targetAccountOverride)
|
|
);
|
|
};
|
|
|
|
export const isVectorSearchEnabled = (targetAccountOverride?: AccountOverride): boolean => {
|
|
return (
|
|
userContext.apiType === "SQL" &&
|
|
(isCapabilityEnabled(Constants.CapabilityNames.EnableNoSQLVectorSearch, targetAccountOverride) || isFabricNative())
|
|
);
|
|
};
|
|
|
|
export const isFullTextSearchPreviewFeaturesEnabled = (targetAccountOverride?: AccountOverride): boolean => {
|
|
return (
|
|
userContext.apiType === "SQL" &&
|
|
isCapabilityEnabled(Constants.CapabilityNames.EnableNoSQLFullTextSearchPreviewFeatures, targetAccountOverride)
|
|
);
|
|
};
|