1. After moving read databases call to RP for Tables API, we lose the `_rid` property. Since we are reading Table's database offer with SDK, we need the `_rid` of the database to find its offer. Without `_rid`, we won't be able to find the database offer and the Scale tab would disappear again. The fix is to use SDK to read databases for Table API so we have `_rid`.
2. There's a bug in the non-aad code path for updating offers which prevents users from switching from manual to autoscale and vice versa. The fix is to properly set the option headers.
Since I've cleaned up all the places that use `_rid` and `_self` of a database in my previous commit (d525afa142), we are safe to use RP to read databases for all APIs except Tables.
For Tables API, since RP doesn't support any database level operations, I have to hardcode the read database response. The only property we need in the Tables database is the id which is the string that we display in the resource tree.
Currently we maintain a cache of all database offers which can be stale since we have moved to lazy loading the offers. Instead of reading the offer from the cache, we should just find the selected database and get the offer directly by calling `database.offer()`.
The DataTable control creates 3 tables in the DOM, one for the header, one for the body and one for the footer. Because of this when navigating through the tablem it says "leaving table", when it is really the same table. It seems this is not the default and because of the option **dom: "RZlfrtip"**, the DataTable is created this way.
If I remove that setting, it will only create one table, BUT other things break, because there is a lot of custom DOM manipulation assuming the DOM was the way it was before (gross). This make me question if we wanted this on purpose to maybe solve a cross browser scrolling issue.
Instead I decided to leave it as is, until migrating to Microsoft's Fluent UI is prioritized. However I did add a summary attribute to each table, so that when listening to the narrator, it make more sense when leaving one part of the table into another part of the table. While not optimal, it should at least satisfy accessibility concern of it being confusing.
* Add Telemetry to command bar buttons
* Count and report # of files/notebooks/directories in myNotebook to telemetry
* Add resource tree clicks to Telemetry
* Log to Telemetry: opened notebook cell counts by type, kernelspec name
* Fix unit test
* Move Telemetry processor call in notebook traceNotebookTelemetry action from reducer to epic. Use action to trace other info.
* Fix react duplicate key error
* Log notebook cell context menu actions
* Reformat and cleanup
* Move resource tree tracing code out of render(). Only call once when tree is updated
* Fix build issues
Things like ConfigContext.BACKEND_ENDPOINT are dynamically changed, and assigning them statically like this only bypasses that mechanism :(
Co-authored-by: Steve Faulkner <471400+southpolesteve@users.noreply.github.com>
* Update NotificationConsoleComponent.tsx
'Accessibiliy for alt image'
* Update NotificationConsoleComponent.tsx
'meet Unit test problems'
* Update NotificationConsoleComponent.test.tsx.snap
Update for snapshot
Co-authored-by: Chris896 <caoyiqun2017@gmail.com>
* Upgrade nteract packages and related dependencies to make new stateful-component work
* Switch to new monacoEditor
* Configure store using nteract mythic configuration
* Replace CodeMirror with Monaco editor in NotebookReadOnlyRenderer
* Reformat
* Upgrade d3 to latest to resolve d3-selection conflicts with nteract/data-explorer that broke D3ForceGraph
* Upgrade jupyterlab terminal widget to work with latest version of react. Upgrade jupyterlab services to include latest fix for websocket auth
* Update jest test snapshots
* Upgrade packages to fix build issues
* Remove comment
* Fix unit tests
* Fix unit test snapshot
* Remove useless @types/node-fetch
* added SettingsV2 Tab
* lint changes
* foxed failing test
* Addressed PR comments
- removed dangerouslySetInnerHtml
- removed underscore dependency
- added AccessibleElement
- removed unnecesary exceptions to linting
* split render into separate functions
- removed sinon in test
- Added some enums to replace constant strings
- removed dangerously set inner html
- made autopilot input as StatefulValue
* add settingscomponent snapshot
* fixed linting errors
* fixed errors
* addressed PR comments
- Moved StatefulValue to new class
- Split render to more functions for throughputInputComponents
* Added sub components
- Added tests for SettingsRenderUtls
- Added empty test files for adding tests later
* Moved all inputs to fluent UI
- removed rupm
- added reusable styles
* Added Tabs
- Added ToolTipLabel component
- Removed toggleables for individual components
- Removed accessible elements
- Added IndexingPolicyComponent
* Added more tests
* Addressed PR comments
* Moved Label radio buttons to choicegroup
* fixed lint errors
* Removed StatefulValue
- Moved conflict res tab to the end
- Added styling for autpilot radiobuttons
* fixed linting errors
* fix bugs from merge to master
* fixed formatting issue
* Addressed PR comments
- Added unit tests for smaller methods within each component
* fixed linting errors
* removed redundant snapshots
* removed empty line
* made separate props objects for subcomponents
* Moved dirty checks to sub components
* Made indesing policy component height = 80% of view port
- modified auto pilot v3 messages
- Added Fluent UI tolltip
-
* Moved warning messages inline
* moved conflict res helpers out
* fixed bugs
* added stack style for message
* fixed tests
* Added tests
* fixed linting and format errors
* undid changes
* more edits
* fixed compile errors
* fixed compile errors
* fixed errors
* fixed bug with save and discard buttons
* fixed compile errors
* addressed PR comments
* Enable hiding prompt when hiding inputs (so that only output is showing)
* Fix format
* Rename variable
* Use nteract prompt instead of copying source
Today, if we have non notebook file in the container and we try to download the file, it fails. That is because, the filetype is always defined as notebook in the call to content provider's get method. Fixing it to use the right type in this change.
* Adds e2e baseline SQL test in puppeteer
* fix lint
* Skip index test
* add to ci
* Stop waiting for server
* Switch to headless mode
* Adds wait-for-server to package.json and uses it in puppeteer CI
* Adds waiton
* top level wait on
* Adds env var to secrets ci.yml
* use existing connection string
* redo tests
* nits and hopefully fix timeout issue
* Fix config file
* try waiting for delete container menu
* Removes statuseval
* Remove unused var
* Slow down and add quotes to selector
* Fix blocking point, remove wait
* Reduce to 50
* Adds database delete stuff
* remove logs, add back waitFors
* Finish container SQL spec test
ConfigContext defines all kinds of URLs and what not, I'm not
sure about the security implications of allowing all this stuff to
be modifiable by just anyone.
* Fix settings tab issue for cassandra and add feature flag
* Adding the rest of the changes....
Co-authored-by: Steve Faulkner <southpolesteve@gmail.com>
* Add support for no offers when serverless accounts
* Add workaround for ignoring failed /offers when using connection string
* Revert @azure/cosmos upgrade
* minro code edits
* Added support for acknowledging code of conduct
- Added CodeOfConduct component that shows links and a checkbox that must be acknwledged before seeing the public galley
- Added verbose message for notebook publish error (when another notebook with the same name exists in the gallery)
- Added a feature flag for enabling code of conduct acknowledgement
* Added Info Component
* minor edit
* fixed failign tests
* publish tab displayed only when code of conduct accepted
* added code of conduct fetch during publish
* fixed bug
* added test and addressed PR comments
* changed line endings
* added comment
* addressed PR comments
* 1) Updated mongo collection create pane to display a better error when a shard key is ill formed.
2) Updated an error message to use double quotes since no string interpolation is used. I thought it was included in a previoue PR but I guess the change didn't get staged.
* Added support for taking screenshot
- Screenshot is taken using html2canvas package
- Converted to base 64 and uploaded to metadata
- For Using first display output
- Notebok object is passed instead of string, to publish pane
- The first cell with output present is parsed out
- The dom is also parsed to get corresponding div element to take screenshot of the first output
* fixed bug
* Addressed PR comments
- FIxed bug that didn't capture screenshot when mutiple notebook tabs are opened
* removed unnecessary dependencies
* fixed compile issues
* more edits
* Added support for custom image upload
- Dropdown gives an option for URL or image upload
- Preview shows how the card will be displayed in the gallery
- base64 converted image stored in metadata document
- Max limit is 1.5MiB for the image
* fixed lint errors
* addressed PR comments
- Added test
* added snapshot
* fixed failing test
* Add hyperlink icon for links in DialogComponent
* Use a Cosmos DB image for sample Persona
* Fix tests
* Update standalone gallery behavior to match DE gallery
* Use /gallery endpoint for gallery
* Update Gallery Card style to remove buttons in standalone mode
* Address comments
* Add text banner
* Added infinite progress bar when gallery notebook content loads
- reused infinite progress bar from magic commands
* made single quotes to double quotes
* formatting changes
* updated state
* changed to ProgressIndicator
* undo packgae.json change
* Remove enableGallery feature flag
* Fix bugs
* Add tests to increase coverage
* Move favorites functionality behind feature.enableGalleryPublish flag
* Show code cells in NotebookViewer
* Use cosmos db logo as persona image for sample notebook gallery cards
* Update gallery card snapshot to fix test
* Add generic component
* Add validation. Rename to widgetRenderer
* Remove test code from splash screen
* Clean up infobox
* Fix styling/layout
* Move test code into unit test
* Replace <input> and <labe> by <TextField> and <Text> respectively. Fix style.
* Replace InfoBoxComponent with UI fabric MessageBar. Fix styling for TextField
* Use MessageBar for error message
* Rename WdigetRendererComponent to SmartUiComponent
* Initial commit
* Address PR comments
* Move notebook related stuff to NotebookManager and dynamically load it
* Add New gallery callout and other UI tweaks
* Update test snapshot
* This fixes an issue where errors when editing documents in an API for MongoDB endpoint would not be presented in the UI.
* Changing null to undefined in several places
* Fixed style issue.
Unignored MongoProxyClient.ts from full lint
* More linter issues since the removal from lint ignore
* Remove old resource tree and its various components
* Fix stored procedure, udf, trigger not always deleting when context menu option chosen
* Reformat and fix eslint warnings
* Remove CommandButtonOptions
* Initial migration from ADO
* Bug fixes
* Fix bugs. Make active area smaller and require shift + ctrl + dbl click
* Add missing features
* Switch from HashMap to Map as it is already polyfilled
* Create GenericPaneComponent and use it to migrate UploadItemsPane to React
* Add helper functions for building each panel section
* Address comments and some styling changes
* Unsubscribe to isNotificationConsoleExpanded when component unmounts