From 982c242301b9ba00507ccf9573c6c94bf72a9e96 Mon Sep 17 00:00:00 2001 From: Jordan Hays <58005768+nofield@users.noreply.github.com> Date: Fri, 9 Sep 2022 08:50:57 -0700 Subject: [PATCH] Remove irrelevant context menu options from ledger objects in OE (#20571) * fixing icons for new ledger object SubTypes * removing irrelevant context menu options from ledger objects in OE * aligning LedgerDropped subtype context key specifically with the Table NodeType context key --- extensions/mssql/package.json | 2 +- .../browser/scripting.contribution.ts | 25 +++++++++++++++---- .../browser/media/objectTypes/objecttypes.css | 13 +++++++--- 3 files changed, 30 insertions(+), 10 deletions(-) diff --git a/extensions/mssql/package.json b/extensions/mssql/package.json index 6570c92534..cb62206bd4 100644 --- a/extensions/mssql/package.json +++ b/extensions/mssql/package.json @@ -511,7 +511,7 @@ }, { "command": "mssql.designTable", - "when": "connectionProvider == MSSQL && nodeType == Table && config.workbench.enablePreviewFeatures", + "when": "connectionProvider == MSSQL && nodeType == Table && nodeSubType != LedgerDropped && config.workbench.enablePreviewFeatures", "group": "0_query@3" }, { diff --git a/src/sql/workbench/contrib/scripting/browser/scripting.contribution.ts b/src/sql/workbench/contrib/scripting/browser/scripting.contribution.ts index 33ea36d15f..6ad245d889 100644 --- a/src/sql/workbench/contrib/scripting/browser/scripting.contribution.ts +++ b/src/sql/workbench/contrib/scripting/browser/scripting.contribution.ts @@ -132,6 +132,8 @@ MenuRegistry.appendMenuItem(MenuId.ObjectExplorerItemContext, { when: ContextKeyExpr.and( TreeNodeContextKey.NodeType.isEqualTo(NodeType.Table), + TreeNodeContextKey.SubType.notEqualsTo('LedgerAppendOnly'), + TreeNodeContextKey.SubType.notEqualsTo('LedgerDropped'), ConnectionContextKey.Provider.notEqualsTo('KUSTO'), ConnectionContextKey.Provider.notEqualsTo('LOGANALYTICS'), ServerInfoContextKey.EngineEdition.notEqualsTo(DatabaseEngineEdition.SqlOnDemand.toString()), @@ -151,8 +153,14 @@ MenuRegistry.appendMenuItem(MenuId.ObjectExplorerItemContext, { ConnectionContextKey.Provider.notEqualsTo('KUSTO'), ConnectionContextKey.Provider.notEqualsTo('LOGANALYTICS'), ContextKeyExpr.or( - TreeNodeContextKey.NodeType.isEqualTo(NodeType.Table), - TreeNodeContextKey.NodeType.isEqualTo(NodeType.View), + ContextKeyExpr.and( + TreeNodeContextKey.NodeType.isEqualTo(NodeType.Table), + TreeNodeContextKey.SubType.notEqualsTo('LedgerDropped') + ), + ContextKeyExpr.and( + TreeNodeContextKey.NodeType.isEqualTo(NodeType.View), + TreeNodeContextKey.SubType.notEqualsTo('Ledger'), + ), TreeNodeContextKey.NodeType.isEqualTo(NodeType.Schema), ContextKeyExpr.and(TreeNodeContextKey.NodeType.isEqualTo(NodeType.User), ServerInfoContextKey.EngineEdition.notEqualsTo(DatabaseEngineEdition.SqlOnDemand.toString())), TreeNodeContextKey.NodeType.isEqualTo(NodeType.User), @@ -199,7 +207,8 @@ MenuRegistry.appendMenuItem(MenuId.ObjectExplorerItemContext, { TreeNodeContextKey.NodeType.isEqualTo(NodeType.StoredProcedure)), ContextKeyExpr.and( ConnectionContextKey.Provider.isEqualTo('MSSQL'), - TreeNodeContextKey.NodeType.isEqualTo(NodeType.View)), + TreeNodeContextKey.NodeType.isEqualTo(NodeType.View), + TreeNodeContextKey.SubType.notEqualsTo('Ledger')), ContextKeyExpr.and( ConnectionContextKey.Provider.isEqualTo('MSSQL'), TreeNodeContextKey.NodeType.isEqualTo(NodeType.AggregateFunction)), @@ -231,8 +240,14 @@ MenuRegistry.appendMenuItem(MenuId.ObjectExplorerItemContext, { ConnectionContextKey.Provider.notEqualsTo('KUSTO'), ConnectionContextKey.Provider.notEqualsTo('LOGANALYTICS'), ContextKeyExpr.or( - TreeNodeContextKey.NodeType.isEqualTo(NodeType.Table), - TreeNodeContextKey.NodeType.isEqualTo(NodeType.View), + ContextKeyExpr.and( + TreeNodeContextKey.NodeType.isEqualTo(NodeType.Table), + TreeNodeContextKey.SubType.notEqualsTo('LedgerDropped') + ), + ContextKeyExpr.and( + TreeNodeContextKey.NodeType.isEqualTo(NodeType.View), + TreeNodeContextKey.SubType.notEqualsTo('Ledger'), + ), TreeNodeContextKey.NodeType.isEqualTo(NodeType.Schema), TreeNodeContextKey.NodeType.isEqualTo(NodeType.User), TreeNodeContextKey.NodeType.isEqualTo(NodeType.UserDefinedTableType), diff --git a/src/sql/workbench/services/objectExplorer/browser/media/objectTypes/objecttypes.css b/src/sql/workbench/services/objectExplorer/browser/media/objectTypes/objecttypes.css index 65192eb55b..10fe5a29c0 100644 --- a/src/sql/workbench/services/objectExplorer/browser/media/objectTypes/objecttypes.css +++ b/src/sql/workbench/services/objectExplorer/browser/media/objectTypes/objecttypes.css @@ -579,9 +579,15 @@ background: url("TableValuedFunctionParameter_Return.svg") center center no-repeat; } -.vs .icon.table_ledger, -.vs-dark .icon.table_ledger, -.hc-black .icon.table_ledger { +.vs .icon.table_ledgerappendonly, +.vs-dark .icon.table_ledgerappendonly, +.hc-black .icon.table_ledgerappendonly, +.vs .icon.table_ledgerupdatable, +.vs-dark .icon.table_ledgerupdatable, +.hc-black .icon.table_ledgerupdatable, +.vs .icon.table_ledgerdropped, +.vs-dark .icon.table_ledgerdropped, +.hc-black .icon.table_ledgerdropped { background: url("Table_Ledger.svg") center center no-repeat; } @@ -609,7 +615,6 @@ background: url("Table_LedgerHistory.svg") center center no-repeat; } - .vs .icon.trigger, .vs-dark .icon.trigger, .hc-black .icon.trigger {