Enabling options tab for database properties (#23448)

* Initial commit for adding a basic general tab for the database properties

* Refactoring for dialog inputs

* removed properties nodeType and using database node and additional cleanup, diabling the functionality.

* Changes according to STS data fetch

* Reuse database Dialog

* Undo contract file change

* more refactoring

* fetched scrollbar fix into this PR

* Tabbed panel is being used for horizontal tabs

* stying fix for general tab button

* final commit for today :)

* Updates according to STS changes

* missed updates

* Refactored updates

* moved options as discussed and added collapsible sections... need to fix scroll bar

* Fixing the horizontal scroll bar of tabbedpanel

* initial updates

* need to fix the error!

* rror fixed and options are loading with sample values

* need to load real values for all felds and map values to dropdown options

* Dd loading correctly, need to add validation to recovery field and save options back

* refactor

* removing nullable property

* All changes done except recoveryTime validation

* Refactoring

* all values are saving as expected, isDirty flag is fixed. Todo: recovery validation and tests

* added general section for the options tab

* modifying pageVerify and userAccess to string array

* updates to general section of options tb

* disabling couple of general properties for MI

* Adding server edition conditions and toggling the UI options

* adding numeric validation to the recovey time

* Removing serveInfo logic and using the unsupported options approach from STS

* addressing comments and little code refactor

* changes with nullOrUndefined helper method

* replacing dropdowns with checkboxes

* adding unit test for helper method

* removed commented sample code and added comments
This commit is contained in:
Sai Avishkar Sreerama
2023-07-06 19:22:20 -04:00
committed by GitHub
parent 1bc22d896b
commit acfa93fbb8
6 changed files with 246 additions and 15 deletions

View File

@@ -443,6 +443,17 @@ export interface Database extends ObjectManagement.SqlObject {
azureServiceLevelObjective?: string;
azureEdition?: string;
azureMaxSize?: string;
autoCreateIncrementalStatistics: boolean;
autoCreateStatistics: boolean;
autoShrink: boolean;
autoUpdateStatistics: boolean;
autoUpdateStatisticsAsynchronously: boolean;
isLedgerDatabase?: boolean;
pageVerify?: string;
targetRecoveryTimeInSec?: number;
databaseReadOnly?: boolean;
encryptionEnabled: boolean;
restrictAccess?: string;
}
export interface DatabaseViewInfo extends ObjectManagement.ObjectViewInfo<Database> {
@@ -452,12 +463,13 @@ export interface DatabaseViewInfo extends ObjectManagement.ObjectViewInfo<Databa
containmentTypes: string[];
recoveryModels: string[];
files: DatabaseFile[];
isAzureDB: boolean;
azureBackupRedundancyLevels: string[];
azureServiceLevelObjectives: AzureEditionDetails[];
azureEditions: string[];
azureMaxSizes: AzureEditionDetails[];
pageVerifyOptions: string[];
restrictAccessOptions: string[];
}
export interface AzureEditionDetails {