Commit graph

212 commits

Author SHA1 Message Date
Jonatan Kłosko
9c9bca825a
Update Kino notebook (#377) 2021-06-24 12:17:05 +02:00
Jonatan Kłosko
6c53c09a61
Add copy to clipboard button to virtualized output (#393)
* Add copy to clipboard button to virtualized output

* Move text output into its own component

* Update button background
2021-06-24 12:15:12 +02:00
Jonatan Kłosko
4ca6f9eb5e
Implement reactive input (#389)
* Implement reactive input

* Store reactive attribute only when truthy

* Polishing
2021-06-24 11:58:13 +02:00
Ben Reinhart
ed072198d1
Fix minor typos in the elixir and livebook livebook (#390) 2021-06-23 23:59:17 +02:00
Ben Reinhart
3332b39670
Bump the modal's z-index (#387)
* Bump the modal's z-index

* Simplify zIndex for one-off usecase
2021-06-23 16:28:40 +02:00
Ben Reinhart
b5b99ea6e3
Fix minor typos in the distributed portals livebook (#386) 2021-06-23 10:48:11 +02:00
Ben Reinhart
4b84a8176d
Retain newlines in cell output markup for copy/paste (#385)
* Retain newlines in cell output markup for copy/paste

* Move line break

* Update lib/livebook_web/live/session_live/cell_component.ex

Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
2021-06-23 01:25:46 +02:00
Jonatan Kłosko
7024d22253
Add support for image output (#380) 2021-06-22 18:03:01 +02:00
Jonatan Kłosko
6d0da78370
Make it possible to mark evaluating cell as stale upfront (#378)
* Make it possible to mark evaluating cell as stale upfront

* Show evaluation time on stale cells as well
2021-06-22 15:06:16 +02:00
José Valim
88d3c5e760
Add section on evaluation vs compilation on Elixir notebook (#376) 2021-06-21 23:17:16 +02:00
Jonatan Kłosko
258c91be8c Adjust dynamic table styles 2021-06-21 14:56:19 +02:00
Jonatan Kłosko
8415ba311e
Show ticking timer while cell is evaluating (#374) 2021-06-20 17:06:30 +02:00
Jean Carlos
e538bd6c93
Changed radio button it to select (#373)
* Add password input

* Save empty string for password in .livemd file

* Update lib/livebook_web/live/session_live/cell_component.ex

* Changed radio button it to select
* Changed radio button it to select
* Moved select it to the top
* Keep the elements in the select ordered

* Update lib/livebook_web/helpers.ex

Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>

* Update lib/livebook_web/live/session_live/input_cell_settings_component.ex

Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>

* Update lib/livebook_web/live/session_live/input_cell_settings_component.ex

Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>

Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
2021-06-20 15:33:10 +02:00
Shavit
a104d9d73b
Show the evaluation time next to the cell indicator (#366)
* Display the time in seconds

Show the evaluation time next to the cell indicator

* Test session data

* Send evaluation time to session

Start the evaluation time inside the evaluator, display the time in seconds
or milliseconds.

The output is not a string but a map

* Add metadata to evaluation_response

* Wrap the evaluation indicator in a tooltip

  • Add metadata argument to the evaluation_response message
  • Use a tooltip to display the evaluation time

* Display the toolip below the indicator

* Remove the evaluation start time

* Make the tooltip optional

* Rename finish_cell_evaluation

* Evaluator tests

* Update test to accespt metadata

* Pass the evaluated time as a third argument

* Make status tooltip more generic

Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
2021-06-20 14:48:00 +02:00
Jonatan Kłosko
cbdc91d68d
Show insert actions when hovering over free space between cells (#369) 2021-06-18 16:14:20 +02:00
Jonatan Kłosko
56c087e79a
Improve section links behaviour (#367)
* Limit the impact of section html id changing

* Make sure section links scroll to section after loading finishes
2021-06-18 13:21:48 +02:00
Jonatan Kłosko
d6131523f6
Point notebook deps to minimal required version of Kino (#365) 2021-06-17 20:21:23 +02:00
Jonatan Kłosko
547e8e3a02
Add Kino introductory notebook (#364)
* Add Kino introductory notebook

* Update lib/livebook/notebook/explore.ex

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Update lib/livebook/notebook/explore/intro_to_kino.livemd

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Update lib/livebook/notebook/explore/intro_to_kino.livemd

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Restructure sections

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-06-17 19:52:52 +02:00
Jonatan Kłosko
137deeb12f
Enforce string values in dynamic tables (#363)
* Enforce string values in dynamic tables

* Explicitly convert values to string
2021-06-17 18:49:58 +02:00
Jonatan Kłosko
6f724f7146
Make table refetch an optional feature (#358) 2021-06-17 13:21:09 +02:00
Jean Carlos
511a47e238
Add password input (#357)
* Add password input

* Save empty string for password in .livemd file

* Update lib/livebook_web/live/session_live/cell_component.ex

Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
2021-06-17 01:30:39 +02:00
Jonatan Kłosko
b18c1579bd
Add dynamic table output (#356)
* Add dynamic table output

* Support table name
2021-06-17 01:02:27 +02:00
Wojtek Mach
8cf8f2697c
Use <kbd> for keyboard keys (#351)
* 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>
2021-06-16 13:31:53 +02:00
Jonatan Kłosko
e75ef5f339
Add numeric input (#352) 2021-06-16 12:28:47 +02:00
Jonatan Kłosko
2b2d6c9d50
Show consistent user avatar on initial page load (#349) 2021-06-15 19:33:16 +02:00
Jonatan Kłosko
adb9612fbe
Add link pointing to a new notebook (#347)
* Add link pointing to a new notebook

* Add test
2021-06-14 21:25:18 +02:00
Jonatan Kłosko
66e2c14ab7
Add notebook on VM introspection (#346)
* Add notebook on VM introspection

* Apply suggestions from code review

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Update node setup instructions

* Update lib/livebook/notebook/explore/vm_introspection.livemd

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Update node setup instructions

* Remove inspect that may give inconsistent results

* Clarify connecting all nodes

* Livebook application -> Livebook server

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-06-14 21:04:57 +02:00
José Valim
e4cd38a1f1 Add portal images, closes #330 2021-06-14 11:37:57 +02:00
Jonatan Kłosko
d3b4a8a9e6
Track and garbage collect widgets (#344) 2021-06-11 15:42:41 +02:00
Alexandre Antonio Juca
2acb4020ca
correct spelling mistake, should be list and not lits (#343) 2021-06-11 00:16:18 +02:00
Jonatan Kłosko
6274731c8d Make sure session is forked with complete data 2021-06-10 20:03:47 +02:00
Jonatan Kłosko
e02bcce0bf
Drop cell source text from data in LV when no longer needed (#342) 2021-06-10 15:41:40 +02:00
Jonatan Kłosko
b0bd7540c0
Compute cell source digest on the client (#341) 2021-06-10 14:54:55 +02:00
José Valim
13108c8591
Update intro_to_vega_lite.livemd (#338) 2021-06-09 23:02:59 +02:00
Jonatan Kłosko
e967165999
Add VegaLite intro notebook to the explore section (#335)
* Add VegaLite intro notebook to the explore section

* Update lib/livebook/notebook/explore/intro_to_vega_lite.livemd

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Update package list

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-06-09 17:38:49 +02:00
José Valim
d0c47557a2
Warning on Mix.install for Mix standalone (#336) 2021-06-09 16:51:53 +02:00
Jonatan Kłosko
c4a96bc99c
Add support for Mix runtime as the default one (#334)
* Add support for Mix runtime as a default

* Support default runtime options in the CLI

* Set cell status to queued while runtime is being started

* Clean up tests
2021-06-09 16:24:02 +02:00
José Valim
9eaa98ce56
Portal guide (#318) 2021-06-08 14:53:41 +02:00
Jonatan Kłosko
11246cdb8f
Add an option to preload session images from memory (#329)
* Add an option to preload session images from memory

* Remove images
2021-06-08 13:28:53 +02:00
Jonatan Kłosko
8dea99e600
Support inputs (#328)
* 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
2021-06-08 12:33:50 +02:00
Jonatan Kłosko
a8073ceac1
Add attributions to Delta-related packages (#324) 2021-06-06 15:27:09 +02:00
Jonatan Kłosko
da64f51589
Show an informative message on completion when there is no runtime (#316) 2021-06-03 19:43:22 +02:00
José Valim
fcf53c4bf2
Add a notebook about the unique features behind Elixir and Livebook (#314) 2021-06-03 15:47:33 +02:00
Jonatan Kłosko
91a9f62fb9 Make images in explore cards clickable 2021-06-03 14:55:25 +02:00
Jonatan Kłosko
c07da9880c
Update LV version and remove deprecations (#312)
* Bump LiveView

* Remove deprecated socket argument to live_component

* Point to an exact LV version
2021-06-03 13:53:03 +02:00
Jonatan Kłosko
f70581f255
Introduce an Explore section (#310)
* Add explore page

* Move sidebar to a configurable component

* Fix homepage test

* Add images

* Store example notebooks in files and make explore notebooks linkable

* Fix tests

* Raise on invalid notebook slug

* Keep just the file contents in notebook info

* Move notebook lookup to Explore

* Exclude notebooks in progress
2021-06-02 21:51:43 +02:00
José Valim
69890cf43e
Allow errors on boot to be reported (#311)
Because we unregistered standard_error, if there
was an error booting livebook, we would fail to
print the error. This commit makes sure the original
standard error is added back whenever the proxy
process terminates.
2021-06-02 19:01:45 +02:00
Jonatan Kłosko
80bed1aa06
Delegate output formatting rules to Kino (#309)
* Delegate output formatting rules to Kino

* Update naming

* Group output components and views

* Fallback to inspect when Kino.Render.to_output/1 fails

* Update naming

* Add reference to Kino
2021-06-01 17:47:03 +02:00
Brett Cannon
5f041d219a
Clarify/tweak some comments (#308)
* Clarify a comment for live_markdown.ex

* Tweak grammar for docs of notebook_from_markdown()
2021-05-31 22:49:56 +02:00
Jonatan Kłosko
ce7adef7e4
Add VegaLite widget integration (#306)
* 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
2021-05-31 22:48:05 +02:00