* Add dialog for creating books
* create empty book
* add localized constants
* add validation to dialog
* reset the create book command to original
* address pr comments
* change error message
* Init book toc manager in bookTreeView
* Add support for new jupyter book version
* Add changes to the jupyter notebook to create books
* Create config file
* Add support of new version of jupyter book on ADS
* Fix paths for opening folder with v1 and v2 books
* Add tests for jupyter book v2
* Update tests
* Fix tests
* Fix get parent issue
* Address PR comments
* Fix bookVersion condition in getSections and fix issue on create book notebook
* Fix search
* update python notebook
* Remove commented lines
* Reworking notebook action bar functionality and appearance.
* added separator
* Revised notebookActions for collapse, clear and trusted such that they can be implemented with a boolean set to T of F and show labels or shift them into tooltip for accessibility. Updated styles for select boxes. Added toolbar icons to common icon location. Split icon definition for use as masked or background-image.
* Completed styles for action icons: collapse, clear and trusted. Added theme colors. Simplified icon behavior styles.
* Made maskedIconClass optional. Added theme colors for toolbar icons, select box border and dropdown arrow. Experimenting with adding masked icon to pseudo element so I can pull out label text from icons.
* Added icons styles to handle masked SVG elements as pseudo element beside button text. Added icons using this method to respect the color theming system.
* Adjusted styles for the cell and run all icons in notebook toolbar.
* Prepped notebook toolbar with placeholder icon for Underline action. Implemented Underline action. Added custom --wip-- ButtonMenu control, a modified copy of DropDown.
* Revised colorRegistry and corresponding notebook styles. Removed unused code from new custom control: buttonMneu. Revised icon styles to create a dropdown arrow for buttonMenu.
* Added new icon for Underline action.
* Removed comment from needed markup.
* Replaced actionItemProvider with optional undefined per DropdownMenuActionViewItem constructor.
* Cleaned up new control, removing unneeded code and referencing what the class needs. Corrected style declaration for overriding input box padding. Removed unused notebook color styles. Scoped element styles to the toolbar so others outside the toolbar are not affected.
* Removed unnecessary !important from style override.
* Removed reference to unused color entry.
* Syntax cleanup.
* Put notebook toolbar improvements behind the preview flag. This involves some conditionals and CSS classes.
* Updated icon used for Manage Packages. Created and updated styles for notebook toolbar icon spacing. Modified notebook.component contributed actions so that the label text is shifted into the title attribute. Added new icon for Not Trusted toggle.
* Replaced SVG code for not-trusted icon.
* Addressed PR feedback: changed masked classname. Revised component and CSS accordingly. Removed unnecessary instance of in-preview class. Fixed code logic that assigns label text to tooltip on incoming contributed action
* added secondary action
* create book command
* open as untitled
* create toc.yml and update title
* added comments
* throw error if filenames have unsupported chars
* update prompt message
* remove the toLocaleLower
* added await
* moced createbookpath out of the command handler
* removed tolocalelower and added comments
* moved the formatting and file handling code from core to notebook
* fixes for contents with folders
* collapse the code cell
* remove output
* reused existing command to open book
* comment typu and added await
* add saved/untitled views to the books viewlet and provide save option to untitled
* addressed comments
* fixes after merge
* await on async methods
* reverted back
* await on promise
* added localize for books view names
* initial commit
* missed a file change
* changes to make the merges work part1
* fixes after merges 2
* getChildren to get all books
* chnages to address comments
* fsPromises instead of fs.readSync
* merged master
* replaced deprecated fs.exists async call with pathExists
* renamed method
Fixed #5236
- Change the icon to blue image. Existing icons are not deleted. We will use them when the icons are - - moved as the secondary actions.
- Change the font size to 13px
- Change the height to 21px
- Move Add actions to the left
* Touchbar icon support in notebooks
- updated shortcut keys to only work if notebook is active
- Added icons
- Now have 1 "add cell" icon that prompts for code/text.
This is useful as there wasn't an icon to differentiate
initial support for Notebook extensibility. Fixes#3148 , Fixes#3382.
## Design notes
The extensibility patterns are modeled after the VSCode Document and Editor APIs but need to be different since core editor concepts are different - for example Notebooks have cells, and cells have contents rather than editors which have text lines.
Most importantly, a lot of the code is based on the MainThreadDocumentsAndEditors class, with some related classes (the MainThreadDocuments, and MainThreadEditors) brought in too. Given our current limitations I felt moving to add 3 full sets of extension host API classes was overkill so am currently using one. Will see if we need to change this in the future based on what we add in the additional APIs
## Limitations
The current implementation is limited to visible editors, rather than all documents in the workspace. We are not following the `openDocument` -> `showDocument` pattern, but instead just supporting `showDocument` directly.
## Changes in this PR
- Renamed existing APIs to make clear that they were about notebook contents, not about notebook behavior
- Added new APIs for querying notebook documents and editors
- Added new API for opening a notebook
- Moved `New Notebook` command to an extension, and added an `Open Notebook` command too
- Moved notebook feature flag to the extension
## Not covered in this PR
- Need to actually implement support for defining the provider and connection IDs for a notebook. this will be important to support New Notebook from a big data connection in Object Explorer
- Need to add APIs for adding cells, to support
- Need to implement the metadata for getting full notebook contents. I've only implemented to key APIs needed to make this all work.