* Add secrets to the sidebar
* Get and put secrets (naive)
* Secrets list - shortcut
* Validates secret name
* Livebook secrets as environment variables
* Restores secrets when necessary
* Minor adjustments
* Implements add_system_envs for NoopRuntime
* Moves secrets to session data
* Granular operations for secrets
* Minor adjustments
* Applying suggestions
* Test for add secrets
* Type for secret
* Applying suggestions
* Prevents duplicates
* Refactor to live_render
* Update lib/livebook/session/data.ex
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Sort secrets
* Applying suggestions
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Automate searching and adding new dependencies
* Restructure runtime management
* Leave search restrictions up to the runtime
* Support predefined dependencies in Embedded runtime dependency search
* Use the embedded runtime for dependency search test
* Fix typo
* Use module for loading embedded runtime dependencies
* Improve naming
* Make cell status italic when content changed
* Add Ctrl+Shift+Enter for evaluating all cells
* Improve the behaviour of evaluating all cells
* Fix typo
* Remove Code.Fragment backport
* Fix tests compatibility with Elixir 1.13
* Implement signature intellisense
* Don't show signatures on module attributes
* Add tests for calls with do-end block
* Unify spec formatting
* Insert parentheses when completing a function call
* Send all text until cursor in signature request
* Add configuration for completion/signature popups (#693)
* Add editor settings form
* Add configuration for intellisense defaults
* Read fresh settings when editor mounts
* Scope attribute names
* Fix disabled button styling
* Simplify signature box and enable by default
* Split settings into system and user sections
* Update lib/livebook_web/live/settings_live.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Update lib/livebook_web/live/settings_live.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Fix spacing in documentation tests
Co-authored-by: José Valim <jose.valim@dashbit.co>
* Update phoenix deps
* Update reference to LiveDashboard encode_pid
* Fix form input id references
* Move to HEEx
* Update back to filesystem LV npm package
* Further HEEx rewrites
* Refactor icons into function components
* .html.leex -> .html.heex
* Further refactoring
* Move render helpers into function components
* Add doctype back
* Further refactoring
* Refactor cell component
* Further refactoring
* Compose sidebar using function components
* Rewrite notebook card component as function component
* Fruther refactoring
* Fix race condition in runtime tests
* Rewrite tooltips into function component
* Update Tailwind purge rules
* Revert "Rewrite tooltips into function component"
This reverts commit bd6ca8f0b5.
* Refactor conditional tooltip
* Implement cells bin
* Temporarily keep cells source
* Send complete bin entries from session to clients when a cell gets removed
* Polish styles
* Hydrate bin entries on section deletion as well
* Use <kbd> for keyboard keys
* Show keyboard icon
* Render each key explicitly
* Update lib/livebook_web/live/session_live/shortcuts_component.ex
Co-authored-by: Wojtek Mach <wojtekmach@users.noreply.github.com>
* Add Livebook specific icons to the introductory notebooks
* More updates
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Render basic input
* Make each cell type a separate struct
* Add operation to set input value
* Prototype communication
* Make input name editable
* Refactoring
* Unify cell attribute setters
* IO tests
* Document input communication protocol in Runtime
* Add more tests
* Add persistence
* Fix status update on cell attributes change
* Rework persistence
* Integrate input cell with insert mode
* Add missing users keybinding
* Mimic autofocus for dynamically inserted elements
* Support input type selection
* Support URL input and set up validation
* Convert input error into a more meaningful io error
* Add missing client checks
* Consume every input only once per evaluation
* Fixes
* 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
* 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
* 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