* First dark theme commits for command bar
* Updated theme on sidebar
* Updated tabs, sidebar, splash screen
* settings theme changes
* Dark theme applied to Monaco editor
* Dark theme to stored procedures
* Fixed sidebar scroll
* Updated scroll issue in sidebar
* Command bar items fixed
* Fixed lint errors
* fixed lint errors
* settings side panel fixed
* Second last iteration for css
* Fixed all the issues of css
* Updated the theme icon for now on DE to change the theme from portal/DE itself
* Formatting issue resolved
* Remove CloudShellTerminalComponent changes - revert to master version
* Fixed test issue
* Fixed formatting issue
* Fix tests: update snapshots and revert xterm imports for compatibility
* Fix xterm imports in CloudShellTerminalComponent to use @xterm packages
* Fix Cloud Shell component imports for compatibility
* Update test snapshots
* Fix xterm package consistency across all CloudShell components
* Fix TypeScript compilation errors in CloudShell components and query Documents
- Standardized xterm package imports across CloudShell components to use legacy 'xterm' package
- Fixed Terminal type compatibility issues in CommonUtils.tsx
- Added type casting for enableQueryControl property in queryDocuments.ts to handle Azure Cosmos SDK interface limitations
- Applied code formatting to ensure consistency
* Update failing snapshot tests
- Updated TreeNodeComponent snapshot tests for loading states
- Updated ThroughputInputAutoPilotV3Component snapshots for number formatting changes (10,00,000 -> 1,000,000)
- All snapshot tests now pass
* Fixed test issue
* Fixed test issue
* Updated the buttons for theme
* Updated the Theme changes based on portal theme changes
* Updated review comments
* Updated the duplicate code and fixed the fabric react error
* Few places styling added and resolving few comments
* Fixed errors
* Fixed comments
* Fixed comments
* Fixed comments
* Fixed full text policy issue for mongoru accounts
* Resolved comments for class Name and few others
* Added css for homepage in ru accounts
* Final commit with all the feedback issues resolved
* Lint error resolved
* Updated the review comments and few Ui issues
* Resolved review comments and changed header bg and active state color
* Moved svg code to different file and imported
* css fixed for the hpome page boxed for ru account
* Lint errors
* Fixed boxes issue in ru accounts
* Handled the initial theme from the portal
* Updated snap
* Update snapshots for TreeNodeComponent and CreateCopyJobScreensProvider tests
* Fix duplicate DataExplorerRoot test id causing Playwright strict mode violation
* Fix locale-dependent number formatting in ThroughputInputAutoPilotV3Component
---------
Co-authored-by: Sakshi Gupta <sakshig+microsoft@microsoft.com>
Co-authored-by: Sakshi Gupta <sakshig@microsoft.com>
* adding sessionId to UserContext
* add session id
* add session id to settings pane and fix npm run compile
* Add conditional for Portal
* set default session id on userContext init
* fix tests
---------
Co-authored-by: Asier Isayas <aisayas@microsoft.com>
* fix: for intra-account copy, validation screen should not visible
* fix: handle online operations using a button instead manual CLI commands
* reset validation cache on leaving of permission screen
* update same account logic
* fix: update job action menu list and permission screen messages
* uplift error handling to context level
* use of logError instead of console.error
* Initial dev for container copy
* remove padding from label
* Added Copy Job prerequisites screen
* Added hooks to evaluate reader role access
* added copyjob pre-requsite screen along with it's validations
* Added monitor copy job list screen
* added copy job list refresh and reset functionality
* remove arm token dependency
* fetch account details from account id instead of context
* Fix lint & typescript checks
* show copyjob screen from portal navigation
* adding copy job details screen
* remove duplicate code & show sql accounts only
* ui fixes for list job page
* pending icon
* copy job details screen ui
* reset .vscode/settings.json
* Fixed existing UTs
* disabling action buttons until it's in progress
* fixed formatting
* Adding loader on submit button and show job creation errors in the panel itself
* updating disabling action menu item logic
* added custom pager
* fix lint and ts errors
* updating file names and removing comments
* remove comments
* modularize the arom common code
* Adding content and removing tooltip
* updating job details screen
* updating online copy enabled screen
* Adding below changes
- Don't show permission screen for same account in offline mode
- Don't show identity permissions for same account in online mode
- Show error message if selected containers are identical
- Update abort signal messages
* added feedback code from explorer
* Add tooltips and long polling
- Added tooltips to permission sections
- Implemented long polling for PITR and online copy enabled sections
- Long polling automatically stops after 15 minutes
- After polling ends, a refresh button will be displayed
---------
Co-authored-by: nishthaAhujaa <nishtha17354@iiittd.ac.in>
* ddm for DE for noSQL
* ddm for DE for noSQL
* ddm for DE for noSQL
* ddm fix for the default case and test fix
* formatting issue
* updated the text change
* added validation errors
---------
Co-authored-by: Sakshi Gupta <sakshig@microsoft.com>
* Add multiple languages for Full Text Search Policy
* fix tests
* show multiple languages for multi language support enabled accounts
* addressed comments
---------
Co-authored-by: Asier Isayas <aisayas@microsoft.com>
* Send message to Fabric when container is updated (via settings, created or deleted).
* Fix format
---------
Co-authored-by: Laurent Nguyen <languye@microsoft.com>
* Cleaning up unused config from portal backend migration.
* Remove config used during backend migration.
* Add backend endpoint override from config.json.
* Add AAD and ARM endpoint overrides from config.json.
* Add GRAPH_ENDPOINT override from config.json.
* Remove unused catalog api version.
* Remove isTerminalEnabled from config. Cannot find reference in DE, DE Release, or Frontend.
* Fix mongo client unit tests.
* Removing BackendApi from constants since no longer referenced in the codebase.
* Talked with Tara and added the CATALOG_API_VERSION back to the config and substituted out the hard coded string it was intended to replace.
* Include existing portal backend endpoints in default allow list.
* Add localhost:1234 endpoint for Mongo unit tests.
* Removing old backend local test endpoint from backend endpoint list.
* [accessibility-3690553]:[Screen reader - Azure Cosmos DB-New Container]: Screen reader does not announce the associated label information for the 'Estimated monthly cost' info icon under 'New Container' blade.
* snap updated.
---------
Co-authored-by: Satyapriya Bai <v-satybai@microsoft.com>
* Add standin region selection to settings menu.
* Retrieve read and write regions from user context and populate dropdown menu. Update local storage value.
Need to now connect with updating read region of primary cosmos client.
* Change to only selecting region for cosmos client. Not setting up separate read and write clients.
* Add read and write endpoint logging to cosmos client.
* Pass changing endpoint from settings menu to client. Encountered token issues using new endpoint in client.
* Rough implementation of region selection of endpoint for cosmos client. Still need to:
1 - Use separate context var to track selected region. Directly updating database account context throws off token generation by acquireMSALTokenForAccount
2 - Remove href overrides in acquireMSALTokenForAccount.
* Update region selection to include global endpoint and generate a unique list of read and write endpoints.
Need to continue with clearing out selected endpoint when global is selected again.
Write operations stall when read region is selected even though 403 returned when region rejects operation.
Need to limit feature availablility to nosql, table, gremlin (maybe).
* Update cosmos client to fix bug.
Clients continuously generate after changing RBAC setting.
* Swapping back to default endpoint value.
* Rebase on client refresh bug fix.
* Enable region selection for NoSql, Table, Gremlin
* Add logic to reset regional endpoint when global is selected.
* Fix state changing when selecting region or resetting to global.
* Rough implementation of configuring regional endpoint when DE is loaded in portal or hosted with AAD/Entra auth.
* Ininitial attempt at adding error handling, but still having issues with errors caught at proxy plugin.
* Added rough error handling in local requestPlugin used in local environments. Passes new error to calling code.
Might need to add specific error handling for request plugin to the handleError class.
* Change how request plugin returns error so existing error handling utility can process and present error.
* Only enable region selection for nosql accounts.
* Limit region selection to portal and hosted AAD auth. SQL accounts only. Could possibly enable on table and gremlin later.
* Update error handling to account for generic error code.
* Refactor error code extraction.
* Update test snapshots and remove unneeded logging.
* Change error handling to use only the message rather than casting to any.
* Clean up debug logging in cosmos client.
* Remove unused storage keys.
* Use endpoint instead of region name to track selected region. Prevents having to do endpoint lookups.
* Add initial button state update depending on region selection.
Need to update with the API and react to user context changes.
* Disable CRUD buttons when read region selected.
* Default to write enabled in react.
* Disable query saving when read region is selected.
* Patch clientWidth error on conflicts tab.
* Resolve merge conflicts from rebase.
* Make sure proxy endpoints return in all cases.
* Remove excess client logging and match main for ConflictsTab.
* Cleaning up logging and fixing endpoint discovery bug.
* Fix formatting.
* Reformatting if statements with preferred formatting.
* Migrate region selection to local persistence. Fixes account swapping bug.
TODO: Inspect better way to reset interface elements when deleteAllStates is called. Need to react to regional endpoint being reset.
* Relocate resetting interface context to helper function.
* Remove legacy state storage for regional endpoint selection.
* Laurent suggestion updates.
* For all control plane operations, do not use ARM for Fabric. Enable "delete container" for fabric native.
* Fix unit test
* Fix tre note tests with proper fabric config. Add new fabric non-readonly test.
* Implement fabric native path
* Fix default values to work with current fabric clients
* Fix Fabric native mode
* Fix unit test
* export Fabric context
* Dynamically close Home tab for Mirrored databases in Fabric rather than conditional init (which doesn't work for Native)
* For Fabric native, don't show "Delete Database" in context menu and reading databases should return the database from the context.
* Update to V3 messaging
* For data plane operations, skip ARM for Fabric native. Refine the tests for fabric to make the distinction between mirrored key, mirrored AAD and native. Fix FabricUtil to strict compile.
* Add support for refreshing access tokens
* Buf fix: don't wait for refresh is async
* Fix format
* Fix strict compile issue
---------
Co-authored-by: Laurent Nguyen <languye@microsoft.com>
* Default to new backend endpoint if the endpoint in current context does not match existing set in constants.
* Remove some env references.
* Added comments with reasoning for selecting new backend by default.
* Update comment.
* Remove all references to useNewPortalBackendEndpoint now that old backend is disabled in all environments.
* Resolve lint issues.
* Removed references to old backend from Cassandra and Mongo Apis
* fix unit tests
---------
Co-authored-by: Asier Isayas <aisayas@microsoft.com>
* Added throughput bucketing
* fix bugs
* enable/disable per autoscale selection
* Added logic
* change query bucket to group
* Updated to a tab
* Fixed unit tests
* Edit package-lock
* Compile build fix
* fix unit tests
* moving the throughput bucket flag to the client generation level
* assign default throughput based on workload type
* combined common logic
* fix unit tests
* add tests
* update tests
* npm run format
* Update ci.yml
---------
Co-authored-by: Asier Isayas <aisayas@microsoft.com>
* Reset hasDataPlaneRbacSettingChanged back to false after cosmos client is refreshed with new settings.
Dispose of old client before new one is created.
* Update client refresh variable after settings change.
* Only refresh client when related settings are changed.
* Update comparisons in settings menu.
* Remove unnecessary comments.
* Update refresh variable naming.
* Attempting to sync package.json and package-lock.json in CI.
* Remove npm install from CI after successful CI run.
* Only show retry settings with those APIs using the cosmos client -> NoSQL, Table, Gremlin
* Rename MongoProxy development endpoint constant to be consistent with other
endpoints.
* Update Playwright version to latest release due to test setup break.
* Replaced monaco editor on Container Vector Policy tab with controls same as on create container ux
* Adds vector embedding policy to container management. Adds FullTextSearch to both add container and container management.
* Fixing unit tests and formatting issues
* More fixes
* Updating full text controls based on feedback
* Minor updates
* Editing test to fix compile issue
* Minor fix
* Adding paths for jest to ignore transform due to recent changes in upstream dependencies
* Adding mock to temporarily get unit tests to pass
* Hiding FTS feature behind the new EnableNoSQLFullTextSearch capability
* Force useMongoProxyEndpoint to always return true if valid endpoint provided. Enables new Mongo proxy in all environments.
* Checking MP endpoint in config context.
* Enabling cassandra proxy in all environments. Requires later cleanup.
* Simplifying and removing endpoint validation since run when config context is generated.
* Enabling one MP API at a time globally.
* Revent to existing CP selection logic.
* Creating list of globally enable CP apis.
* Add list of mongo and cassandra APIs to config and only enable if environment outside existing list of environments.
* Remove environment checks. If API globally enabled, return true.
* Adding config initialization for mongo unit tests.
* Default to empty enable list to minimize possible impact. Config.json overrides can be used for testing.
* Add a silent parameter to acquireTokenWithMsal
If true, the function won't retry to sign in using a Popup if silent token acquisition fails.
* Improve Login for Entra ID RBAC button logic
Try to reuse an existing signed-in MSAL account to get the AAD token
and fall back to full sign-in otherwise.
Also move the logic to AuthorizationUtils
* Try to acquire an Entra ID token silently on startup.
When running in Portal MSAL should be able to reuse the
MSAL account from Portal and allow us to silently get
the RBAC token. If it fails we'll show the Login for Entry ID RBAC
button as usual.
* Small code improvements
* Remove the RBAC notice from settings pane
and try to acquire RBAC token silently after enabling RBAC.
* Use msal.ssoSilent with an optional login hint
to avoid more sign-in popups.
msal.loginPopup will be used as a backup option if ssoSilent fails.
Ideally the parent environment (Portal/Fabric) should send
a loginHint with the username of the currently signed in user that
can be passed to the token acquisition flow.
* Improve RBAC error wording, clarifying where to find the Login button.
* Introduce common function for shared throughput default and set to
false.
* Add new file.
* Adjust E2E tests to not set throughput for database create.
* allow DE to provide clearer error messages for certain conditions
* allow rendeering a "help" link for an error
* use TableCellLayout where possible
* remove RU Threshold banner, now that we have a clearer error
* refmt
* fix QueryError test
* change "RU Threshold" to "RU Limit"