Skip to content

Commit 24e27fa

Browse files
committed
Single revision only (reduce amount of code to review)
1 parent 848165c commit 24e27fa

File tree

5 files changed

+12
-183
lines changed

5 files changed

+12
-183
lines changed

src/commands/registerCommands.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,7 @@ import { activateRevision } from './revision/activateRevision';
2626
import { chooseRevisionMode } from './revision/chooseRevisionMode';
2727
import { deactivateRevision } from './revision/deactivateRevision';
2828
import { restartRevision } from './revision/restartRevision';
29-
import { createRevisionDraft } from './revisionDraft/createRevisionDraft';
3029
import { discardRevisionDraft } from './revisionDraft/discardRevisionDraft';
31-
import { editRevisionDraft } from './revisionDraft/editRevisionDraft';
3230
import { addScaleRule } from './scaling/addScaleRule/addScaleRule';
3331
import { editScalingRange } from './scaling/editScalingRange';
3432

@@ -64,8 +62,8 @@ export function registerCommands(): void {
6462
registerCommandWithTreeNodeUnwrapping('containerApps.restartRevision', restartRevision);
6563

6664
// revision draft
67-
registerCommandWithTreeNodeUnwrapping('containerApps.createRevisionDraft', createRevisionDraft);
68-
registerCommandWithTreeNodeUnwrapping('containerApps.editRevisionDraft', editRevisionDraft);
65+
registerCommandWithTreeNodeUnwrapping('containerApps.createRevisionDraft', () => { throw new Error('Create revision draft not yet implemented.') });
66+
registerCommandWithTreeNodeUnwrapping('containerApps.editRevisionDraft', () => { throw new Error('Edit revision draft not yet implemented.') });
6967
registerCommandWithTreeNodeUnwrapping('containerApps.deployRevisionDraft', () => { throw new Error('Deploy revision draft not yet implemented.') });
7068
registerCommandWithTreeNodeUnwrapping('containerApps.discardRevisionDraft', discardRevisionDraft);
7169

src/commands/revisionDraft/createRevisionDraft.ts

Lines changed: 0 additions & 125 deletions
This file was deleted.

src/commands/revisionDraft/editRevisionDraft.ts

Lines changed: 0 additions & 24 deletions
This file was deleted.

src/tree/revisionManagement/RevisionItem.ts

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,8 @@ export class RevisionItem implements RevisionsItemModel {
3333
this.revisionsMode = containerApp.revisionsMode;
3434
}
3535

36-
get contextValue(): string {
36+
private get contextValue(): string {
3737
const values: string[] = [RevisionItem.contextValue];
38-
39-
// Enable more granular tree item filtering by revision name
40-
values.push(nonNullProp(this.revision, 'name'));
41-
4238
values.push(this.revision.active ? revisionStateActiveContextValue : revisionStateInactiveContextValue);
4339
values.push(this.revisionsMode === KnownActiveRevisionsMode.Single ? revisionModeSingleContextValue : revisionModeMultipleContextValue);
4440
return createContextValue(values);
@@ -80,7 +76,7 @@ export class RevisionItem implements RevisionsItemModel {
8076

8177
private get iconPath(): TreeItemIconPath {
8278
if (this.revisionsMode === KnownActiveRevisionsMode.Single) {
83-
return treeUtils.getIconPath('02885-icon-menu-Container-Revision-Active');
79+
return treeUtils.getIconPath('active-revision');
8480
}
8581

8682
let id: string;

src/tree/revisionManagement/RevisionsItem.ts

Lines changed: 8 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -3,57 +3,41 @@
33
* Licensed under the MIT License. See License.txt in the project root for license information.
44
*--------------------------------------------------------------------------------------------*/
55

6-
import { Revision } from "@azure/arm-appcontainers";
76
import { uiUtils } from "@microsoft/vscode-azext-azureutils";
87
import { TreeElementBase, callWithTelemetryAndErrorHandling, createContextValue, createSubscriptionContext } from "@microsoft/vscode-azext-utils";
98
import type { AzureSubscription } from "@microsoft/vscode-azureresources-api";
109
import { TreeItem, TreeItemCollapsibleState } from "vscode";
11-
import { revisionDraftFalseContextValue, revisionDraftTrueContextValue } from "../../constants";
12-
import { ext } from "../../extensionVariables";
1310
import { createContainerAppsAPIClient } from "../../utils/azureClients";
1411
import { localize } from "../../utils/localize";
1512
import { treeUtils } from "../../utils/treeUtils";
1613
import type { ContainerAppModel } from "../ContainerAppItem";
1714
import type { ContainerAppsItem } from "../ContainerAppsBranchDataProvider";
18-
import { RevisionDraftItem } from "./RevisionDraftItem";
1915
import { RevisionItem } from "./RevisionItem";
2016

2117
export class RevisionsItem implements ContainerAppsItem {
22-
static readonly idSuffix: string = 'revisions';
2318
static readonly contextValue: string = 'revisionsItem';
2419
static readonly contextValueRegExp: RegExp = new RegExp(RevisionsItem.contextValue);
2520

2621
id: string;
2722

28-
constructor(readonly subscription: AzureSubscription, readonly containerApp: ContainerAppModel) {
29-
this.id = `${containerApp.id}/${RevisionsItem.idSuffix}`;
23+
constructor(public readonly subscription: AzureSubscription, public readonly containerApp: ContainerAppModel) {
24+
this.id = `${containerApp.id}/Revisions`;
3025
}
3126

32-
get contextValue(): string {
27+
private get contextValue(): string {
3328
const values: string[] = [RevisionsItem.contextValue];
34-
values.push(ext.revisionDraftFileSystem.doesContainerAppsItemHaveRevisionDraft(this) ? revisionDraftTrueContextValue : revisionDraftFalseContextValue);
29+
// values.push(ext.revisionDraftFileSystem.doesContainerAppsItemHaveRevisionDraft(this) ? 'revisionDraft:true' : 'revisionDraft:false');
3530
return createContextValue(values);
3631
}
3732

3833
async getChildren(): Promise<TreeElementBase[]> {
39-
const revisionDraftBaseName: string | undefined = ext.revisionDraftFileSystem.getRevisionDraftFile(this)?.baseRevisionName;
40-
let draftBaseRevision: Revision | undefined;
41-
42-
const result = (await callWithTelemetryAndErrorHandling('getChildren', async (context) => {
34+
const result = await callWithTelemetryAndErrorHandling('getChildren', async (context) => {
4335
const client = await createContainerAppsAPIClient([context, createSubscriptionContext(this.subscription)]);
4436
const revisions = await uiUtils.listAllIterator(client.containerAppsRevisions.listRevisions(this.containerApp.resourceGroup, this.containerApp.name));
45-
return revisions.map(revision => {
46-
if (revision.name === revisionDraftBaseName) {
47-
draftBaseRevision = revision;
48-
}
49-
return new RevisionItem(this.subscription, this.containerApp, revision)
50-
});
51-
}))?.reverse() ?? [];
37+
return revisions.map(revision => new RevisionItem(this.subscription, this.containerApp, revision));
38+
});
5239

53-
return draftBaseRevision ? [
54-
new RevisionDraftItem(this.subscription, this.containerApp, draftBaseRevision),
55-
...result.filter(item => item.revision.name !== revisionDraftBaseName)
56-
] : result;
40+
return result?.reverse() ?? [];
5741
}
5842

5943
getTreeItem(): TreeItem {

0 commit comments

Comments
 (0)