* Add support for LiveWidget.VegaLite
* LiveWidget -> Kino
* Show an error when rendering unsupported Kino widget
* Match on Kino.Widget
* Add catch-all for unknown outputs
* Add initial user config modal
* Assign user ids
* Update session data to hold user ids
* Get users list for specific ids
* Render user avatar
* User update
* Refactor user changes
* Subscribe to individual user updates
* Show users in side panel
* Add sidebar to homepage
* Don't generate the same color twice in a row
* Add documentation notes
* Fix tests
* Add tests
* Keep users in session data
* Rename color to hex_color
* #99: Add anchor links to sections and cells
* Restores some css classes removed by error
* Focus cell based on anchor link
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Force menu items into a single line
* Add shortcut for saving the notebook
* Make the disk icon always show file dialog
* Split runtime and file settings into separate modals
* Add ctrl+s to the shortcuts list
* Add togglable menu to the session page
* Make sure newly saved file appears in the file selector
* Fix path seletor force reloading
* Remove notebook generated in tests
* Add test for file list refresh after save
* Allow server-side re-ordering of sections
* `Livebook.Notenook.move_section` definition
* Management and implementation of requests
* tests
This commit allows a person to send a request to the server to move a
section. However, the functionality in not yet available in the UI.
* Allow "Move up" and "Move down" functionality for sections
* Rendering of up and down "arrows" at Section's side
* Request from UI on click
This commit enables a user to move a section upwards or downwards, much
like a cell. However, after the section moves, the focus is not changed
to it.
* Apply formatting
* Define a function to update cell status
* Defines a common function for `move_cell` and `move_section` to use to
update cell status.
* Add cell image upload modal
* Add controller for serving the images and handle this on markdown side
* Use per-session images dir
* Add etag header to session image responses
* Adjust markdown image styling
* Properly manage session images dir
* Add tests
* Set maximum file size for image uploads
* Move images dir specifics to the Session module
* Move images when nonpersistent session becomes persistent
* Update lib/livebook_web/live/session_live.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Update lib/livebook_web/live/session_live.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Update lib/livebook_web/live/session_live/cell_upload_component.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Test that close gets rid of session temporary dir
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Add notebook indicators
* Make evaluation status button point to the corresponding cell
* Rename introductory notebook
* Update path highlight when chosen for saving
* Allow specifying nonexistent directories when saving and create those
* Update lib/livebook_web/live/session_live/indicators_component.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Update lib/livebook_web/live/session_live/indicators_component.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Update lib/livebook_web/live/session_live/indicators_component.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Update lib/livebook_web/live/session_live/indicators_component.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Update lib/livebook_web/live/session_live/indicators_component.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Add section insertion button
* Add shortcut for inserting section
* Pass buttons to the component
* Add mix alias for running both formatter
* Adjustments
* Make the buttons group component stateless
* Update cell actions
* Add new focus indicator
* Update headings typography
* Update cell actions and insert buttons
* Add sidebar menu
* Add settings modal
* Update homepage
* Update settings dialog
* Rename classes
* Add floating menu
* Update icon colors on hover
* Fix homepage tests
* Format assets source
* Update monaco editor
* Fix editor width on resize
* Add more padding to the notebook content
* Update settings dialog title
* Show reevaluate button when the cell is in evaluated state
* Show section actions on focus or hover only
* Pre-fill runtime selector with the current configuration
* Ignore cmd + enter in Markdown cells
* Show all sections and enable cross-section focus navigation
* Move focus to the client
* Add shortcut for evaluating all cells
* Fix and expand tests
* Make section links scroll to the given section
* Virtualize output lines
* Remove unused dependency
* Remove VirtualizedLinesComponent
* Pass lines as HTML nodes and use as template
* Validate hook children
* Refactor markup
* Implement moving cells with keyboard shortcuts
* Add tests for cell movement operation
* Refactor
* Does not mark cells as stale if Elixir cells did not change order
* Prototype standalone mode with mix
* Move runtime initialization into separate LiveViews
* Make standalone node initialization async
* Refactor async node initialization
* Automatically scroll to the bottom of output
* Refactor streaming output
* Move MessageEmitter under Utils
* Add path selector to the mix runtime picker
* Update runtime descriptions
* Add successful or error message at the end of output
* Run formatter
* Rename Standalone to ElixirStandalone for consistency
* Show only directories when looking for a mix project
* Update docs
* Extract shared standalone logic
* Make the remote primary process monitor Manager instead of session
* Further refactoring and docs
* Add tests for collectable Callback
* Add missing macro doc
* Apply review suggestions
* Decouple sending asynchronous notifications from the runtime initialization
* Apply suggestions
* Ignore compilation warnings in the Evaluator tests
* Make Cmd + Enter evaluate cell even in navigation mode
* Fix homepage responsiveness
* Improve setting insert mode with mouse
* Extend LiveMarkdown format to support Elixir snippets in Markdown cells
* Highlight Markdown code blocks using Monaco editor API
* Use livebook metadata for forcing markdown as well