* initial commit
* fix: added initialize method to fix the previous/next links rendering
* added checks
* open first markdown/ipynb in the book ans expand the view
* added launch book from command pallete, removed the pick folder and save option added launching the first notebook/markdown
* moved the open book command pallet action from mssql to notebooks
* open as untitled to true
* opening markdown files issue fix
* removed opening as untitled files
* open ipynb files as untitled and changes for previous&next links to work
* add books as seperate viewlet
* localize double quote issues and renamed treeCollapsibleState
* renames and added logic to conditionally show Preview command
* moved registerCommands from widget to extension contribution
* isEditorUntitled check
* async comment updates
* formatting issues.
* promisfying the async calls
* moved existsAsync to top
* working; new query and scripting
* working; removing manage from menus and combining data explorer contributions
* consolidate dashboard contributions; move manage action to dashboard contributions; make groupings the same
* fix notebook actions not firing
* fix notebook actions
* notebooks working
* move backup and restore entry points into their own file; move explorerwidget contribution into their respective files
* fix tests
* move extension actions to their own file
* fix tests
* change tests
Updated existing serialization code so it actually supports serialization. Still needs work to replace the saveAs function when a QueryProvider doesn't support save as, but want to handle in separate PR.
Removed separate MainThread/ExtHostSerializationProvider code as the DataProtocol code is the right place to put this code
Plumbed support through the gridOutputComponent to use the new serialize method in the serialization provider
Refactored the resultSerializer so majority of code can be shared between both implementations (for example file save dialog -> save -> show file on completion)
* Update to latest SQLToolsService release
* initial commit: new modelview widget that shows books
* moved the new command action to notebook contribution and addressed the comments
* localize changes
* removed changes from src/vs file and string changes
* make directory for each contribution
* typo fix
* added previous and next buttons
* previous and next notebook API
* links for prev/next notebooks
* fixed first and last pages
* made code more readable
* addressed Kevin's comments
* moved logic over to BookTreeItem
* show buttons in dev mode only
* added BookTreeItemFormat interface
* added interface and enum
* removed localize call
* Fix#5238 Notebooks should support relative links
- Added detection of relative #links inside notebooks
- Added handling of these, at least for current notebook
Not handled: open other notebook & scroll to position.
- Fix#6221 Notebooks: Keyboard Shortcut for New Notebook has Changed.
- Use Win+Alt+N instead of Win+Shift+N
- New Grid is now "stable" (forgot to do this in last PR)
* fixed context for data explorer
* added more files
* initial servers and database context menu actions finished
* added all actions for servers and databases with correct conditions
* added nodetype and nodelabel for subtype actions
* added nodeinfo logic to oe shim
* fixed context for cms
* added all scripting actions to data explorer
* review comments
* fix import
* fix correct context key
* removed unused import
* separate PR for commands and menus added
* rename mssql context menu nodes
* remove command id constants
This is a staged refactor to use the exact same grid logic in the Notebook and query editors, including context menu support, font settings, and sizing logic. The goal long term is:
- As the core Query grid is updated, Notebook can benefit from the changes
- As we add in support for contributions like new buttons & actions working on the grid, can share the logic
- Ideally if and when we refactor things like the action bar for grid results, we can apply in both places though this is TBD.
Fixes a number of issues:
- Fixes#5755 Grids don't respond to font settings. @anthonydresser can we remove setting from each query results editor and just use Notebook Styles since these are global (not scoped) settings?
- Fixes#5501 Copy from grid settings.
- Fixes#4938 SQL Notebook result sets are missing the actions provide for SQL File results sets. this now has the core ability to solve this, and separate work items for specific asks (serialization, charting) are tracked.
Currently hidden:
- Save as... options in context menu
- All right toolbar actions (save as, chart).
Remaining issues to address in future commits:
- Need to implement support for serialization (#5137).
- Need to add charting support
- Need to solve the layout of buttons on the right hand side when a small number of columns are output. It doesn't look right that buttons are so far away from the results
- Will work with UX on this. For now, mitigating this by hiding all buttons, but will need to solve in the future
- Would like to make buttons contributable via extension, but need to refactor similar to ObjectExplorer context menu so that we can serialize context menu options across to extension host while still having internal actions with full support
With this change, Plotly types will be successfully rendered in a Notebook.
Currently they have a default width of 700px with a scrollbar if the window size is smaller (this matches other notebook viewers).
The Plotly library is dynamically required to avoid startup time perf hits. This is something we could look at for other components too.
* NB improve startup using built-in markdown render
This is a sample branch showing perf improvements if we load content using built-in markdown rendering
- Has issues where images aren't correctly rendered due to sanitization, need to copy renderer code and update settings
- Moves content load up before anythign to do with providers since we can render without knowing about these things
# Conflicts:
# src/sql/workbench/parts/notebook/cellViews/textCell.component.ts
* Re-enable logging of each cell's rendering time
* Fix test issue
* Kernel loading working with new markdown renderer
# Conflicts:
# src/sql/workbench/parts/notebook/cellViews/textCell.component.ts
* Fixed tests, cleaned up code
* markdownOutput component integration
* PR Comments
* PR feedback 2
* PR feedback again
- Added a registry for output components
- Refactored existing renderers to plug in via Angular
- Added Markdown renderer using new Angular contribution point
- Added support to notebook module to dynamically load new components
* Improve notebook link handling
- Single click now works for links inside Output areas
- Command links in untrusted notebooks have link color
- Refactored to use directive so code is in 1 place and can be easily
added elsewhere if needed
* Removed unneeded service from constructor
* Add Notebook Save integration tests
Wrote test to verify save behavior
Fixed issues found during testing,
specifically around how we notify dirty state change to extensions
* Improved error messages