set intra-account copy as the default one

This commit is contained in:
Bikram Choudhury
2025-11-18 15:57:04 +05:30
parent 5df45c0861
commit eabc0e85c5
6 changed files with 13 additions and 8 deletions

View File

@@ -129,7 +129,7 @@ export default {
}, },
onlineCopyEnabled: { onlineCopyEnabled: {
title: "Online copy enabled", title: "Online copy enabled",
description: (accountName: string) => `Enable Online copy on "${accountName}".`, description: (accountName: string) => `"To enable the online copy feature on your ${accountName} account, proceed with the action below.`,
hrefText: "Learn more about online copy jobs", hrefText: "Learn more about online copy jobs",
href: "https://learn.microsoft.com/en-us/azure/cosmos-db/container-copy?tabs=online-copy&pivots=api-nosql#enable-online-copy", href: "https://learn.microsoft.com/en-us/azure/cosmos-db/container-copy?tabs=online-copy&pivots=api-nosql#enable-online-copy",
buttonText: "Enable Online Copy", buttonText: "Enable Online Copy",

View File

@@ -1,3 +1,4 @@
import { Subscription } from "Contracts/DataModels";
import Explorer from "Explorer/Explorer"; import Explorer from "Explorer/Explorer";
import React from "react"; import React from "react";
import { userContext } from "UserContext"; import { userContext } from "UserContext";
@@ -23,8 +24,10 @@ const getInitialCopyJobState = (): CopyJobContextState => {
jobName: "", jobName: "",
migrationType: CopyJobMigrationType.Offline, migrationType: CopyJobMigrationType.Offline,
source: { source: {
subscription: null, subscription: {
account: null, subscriptionId: userContext.subscriptionId || "",
} as Subscription,
account: userContext.databaseAccount || null,
databaseId: "", databaseId: "",
containerId: "", containerId: "",
}, },

View File

@@ -85,9 +85,10 @@ const PointInTimeRestore: React.FC = () => {
setShowRefreshButton(true); setShowRefreshButton(true);
}; };
const handleRefresh = () => { const handleRefresh = async () => {
setLoading(true); setLoading(true);
handleFetchAccount(); await handleFetchAccount();
setLoading(false);
}; };
const openWindowAndMonitor = () => { const openWindowAndMonitor = () => {

View File

@@ -27,5 +27,5 @@ export const AccountDropdown: React.FC<AccountDropdownProps> = React.memo(
/> />
</FieldRow> </FieldRow>
), ),
(prev, next) => prev.options.length === next.options.length, (prev, next) => prev.options.length === next.options.length && prev.selectedKey === next.selectedKey,
); );

View File

@@ -25,5 +25,5 @@ export const SubscriptionDropdown: React.FC<SubscriptionDropdownProps> = React.m
/> />
</FieldRow> </FieldRow>
), ),
(prev, next) => prev.options.length === next.options.length, (prev, next) => prev.options.length === next.options.length && prev.selectedKey === next.selectedKey,
); );

View File

@@ -16,6 +16,7 @@ import { useDropdownOptions, useEventHandlers } from "./Utils/selectAccountUtils
const SelectAccount = React.memo(() => { const SelectAccount = React.memo(() => {
const { copyJobState, setCopyJobState } = useCopyJobContext(); const { copyJobState, setCopyJobState } = useCopyJobContext();
const selectedSubscriptionId = copyJobState?.source?.subscription?.subscriptionId; const selectedSubscriptionId = copyJobState?.source?.subscription?.subscriptionId;
const selectedSourceAccountId = copyJobState?.source?.account?.id;
const subscriptions: Subscription[] = useSubscriptions(); const subscriptions: Subscription[] = useSubscriptions();
const allAccounts: DatabaseAccount[] = useDatabaseAccounts(selectedSubscriptionId); const allAccounts: DatabaseAccount[] = useDatabaseAccounts(selectedSubscriptionId);
@@ -38,7 +39,7 @@ const SelectAccount = React.memo(() => {
<AccountDropdown <AccountDropdown
options={accountOptions} options={accountOptions}
selectedKey={copyJobState?.source?.account?.id} selectedKey={selectedSourceAccountId}
disabled={!selectedSubscriptionId} disabled={!selectedSubscriptionId}
onChange={(_ev, option) => handleSelectSourceAccount("account", option?.data)} onChange={(_ev, option) => handleSelectSourceAccount("account", option?.data)}
/> />