Commit graph

116 commits

Author SHA1 Message Date
Owen Bickford
b6793d6630
Type1fool-smooth-scrolling (#638)
* add scroll behavior to html, body, & notebook elems

* don't append base url or set target on intra-page links

* add back-to-top link, class autosorting/formatting

* add convert global style to `.scroll-smooth` util

* add `isPageAnchor` function

* remove `go-to-top` link

* use `isAbsoluteUrl` and add a semicolon ;)
2021-10-24 19:38:57 +02:00
Matheus Cumpian
fe77823685
Removing "Evaluate All Below" shortcut functionality (#621) 2021-10-19 23:36:44 +02:00
Jonatan Kłosko
c354c46d89
Update dependencies (#606)
* Update dependencies

* Update dependencies major

* Update mix deps
2021-10-19 00:37:48 +02:00
Jonatan Kłosko
866abe8dee
Update favicon when navigating across sessions (#603) 2021-10-18 22:36:00 +02:00
Jean Carlos
238635a6be
Changed favicon with base on notebook status (#594)
* Change favicon based on notebook status

* Format correction

* "operation" is unused

* Improvements for better functioning of icons

* Renamed icons files

* Update favicons

* Update changelog

Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
2021-10-16 12:24:19 +02:00
Jonatan Kłosko
fedbf4f53b
Update matching brackets style (#595) 2021-10-13 14:56:33 +02:00
Jonatan Kłosko
2b1cb57a15
Start new notebooks with a focused code cell (#527)
* Start new notebooks with a focused code cell

* Update changelog
2021-08-30 16:33:40 +02:00
Jonatan Kłosko
b1807b1192
Don't sanitize class on icon tags in markdown (#522) 2021-08-28 18:56:56 +02:00
Jonatan Kłosko
acd100f3d3
Improve intellisense to handle structs and sigils (#513)
* Update Code.Fragment backport

* Support structs completion and show module subtype

* Support sigil completion

* Update changelog

* Don't show completion items for hidden modules

* Update Code.Fragment backport
2021-08-23 10:42:18 +02:00
Jonatan Kłosko
f9e67d27c0
Add a keyboard shortcut for triggering on-hover docs (#508)
* Add a keyboard shortcut for triggering on-hover docs

* Update changelog
2021-08-20 23:25:18 +02:00
Jonatan Kłosko
9822735bcf Update GitHub org references from elixir-nx to livebook-dev 2021-08-18 15:55:07 +02:00
Jonatan Kłosko
e0febac309
Switch client side markdown processing to remark (#495) 2021-08-14 10:44:46 +02:00
Jonatan Kłosko
3216727858
Keep original source when highlighting (#480) 2021-07-28 19:35:36 +02:00
Jonatan Kłosko
ee51411299
Rewrite hover details using Code.Fragment.surround_context (#471) 2021-07-27 12:32:53 +02:00
Huynh Tan
e7a8a0775f
Implement checkbox input (#461)
* Implement checkbox input

* Adjustments

Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
2021-07-26 19:59:52 +02:00
Jonatan Kłosko
af50646a8e
Convert JavaScript string column to Elixir (#467)
* Fix column/index wording

* Convert JavaScript string column to Elixir
2021-07-26 11:57:51 +02:00
Jonatan Kłosko
7c89fecd8f Improve highlighting of code blocks in Markdown 2021-07-22 16:20:17 +02:00
Jonatan Kłosko
ef06e49d18
Show full documentation when hovering over an identifier (#453)
* Show full documentation when hovering over an identifier

* Remove leftover function

* Improve determining subject boundaries
2021-07-20 21:30:53 +02:00
Jonatan Kłosko
28922b3deb
Update deps (#443)
* Update Elixir deps

* Update JS deps

* Increase assertion timeouts

* Run formatter
2021-07-09 14:13:44 +02:00
Jonatan Kłosko
bd8e06b5ce
Implement relative navigation between notebooks (#441)
* Use live redirect for local links in rendered markdown

* Resolve relative notebook URLs

* Bump LV

* Adds tests

* Handle nested relative path

* Handle child nested paths
2021-07-08 19:35:11 +02:00
Jonatan Kłosko
c1654345b7
Migrate to latest LV (#437)
* 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
2021-07-07 14:32:49 +02:00
Jonatan Kłosko
d0ec965fad Fix persistent insert mode in modals 2021-07-05 23:33:21 +02:00
Jonatan Kłosko
6d9fb90953
Merge undo stack for collaborative editing (#433) 2021-07-05 14:44:00 +02:00
Jonatan Kłosko
557df4a5bf
Add UI for file deletion and renaming (#426) 2021-07-02 23:06:05 +02:00
José Valim
2dbfb562ea Hardcode font size to 14 for consistency 2021-07-02 16:52:38 +02:00
Jonatan Kłosko
5637d09c09 Fix Enter behaviour on buttons 2021-07-01 17:06:06 +02:00
Jonatan Kłosko
c0d9f8253a
Support Enter to enter insert mode (#422) 2021-07-01 16:38:08 +02:00
Jonatan Kłosko
b92afcef8e
Highlight matching brackets only in insert mode (#421) 2021-07-01 15:58:18 +02:00
Jonatan Kłosko
2100451df7
Document editor shortcuts and add basic view (#419)
* Document more editor shortcuts

* Add basic shortcuts view

* Improve sizing

* More shortcuts

* Fix replace-all editor shortcut

* Show tab in basic view, hide find shortcut
2021-07-01 15:02:56 +02:00
Jonatan Kłosko
20ff5c95b8
Suggest restarting runtime on Mix.install error and add restart shortcut (#418)
* Suggest restarting runtime on Mix.install error and add restart shortcut

* Apply review comments
2021-07-01 13:23:07 +02:00
Jonatan Kłosko
86316e9460
Add code formatting integration to Elixir cells (#416) 2021-07-01 11:50:04 +02:00
Jonatan Kłosko
2ff327e742
Implement cells bin (#414)
* 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
2021-06-30 17:48:27 +02:00
Jonatan Kłosko
44dc3d9041
Improve section management (#411)
* Allow inserting section anywhere in the notebook

* Improve section deletion

* Polishing

* Remove section insertion shortcuts
2021-06-28 23:46:50 +02:00
Jonatan Kłosko
8e5b387f04
Update VegaLite layout when the data changes (#405) 2021-06-26 18:05:52 +02:00
Jonatan Kłosko
73a79cbdae
Add support for markdown output (#404)
* Add support for markdown output

* Make cell indicator absolute

* Update output typespec

* Move rendering to the client

* Polishing
2021-06-26 16:47:52 +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
8415ba311e
Show ticking timer while cell is evaluating (#374) 2021-06-20 17:06:30 +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
9d4139529e
Show clear error when rendering VegaLite plot fails (#362) 2021-06-17 18:24:03 +02:00
Jonatan Kłosko
3df6508b56
Disable autoscroll when focusing in insert mode (#355) 2021-06-16 16:16:26 +02:00
Jonatan Kłosko
4657ad17c3
Update Monaco and use the built-in Elixir definition (#345) 2021-06-14 15:57:13 +02:00
Jonatan Kłosko
b0bd7540c0
Compute cell source digest on the client (#341) 2021-06-10 14:54:55 +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
7b89e1ec83
Improve markdown links (#315)
* Make sure link/button clicks don't trigger cell focus

* Open external links in new browser tab
2021-06-03 16:31:41 +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
Jonatan Kłosko
f4a479b14e
Improve output container behaviour with horizontal overflow (#295) 2021-05-25 18:55:57 +02:00
Jonatan Kłosko
2e0195f658
Make sure math equations are rendered sequentially (#294) 2021-05-25 14:36:55 +02:00
Jonatan Kłosko
7804ff1d82
Set up Vega-Lite plots rendering (#287)
* Set up Vega-Lite plots rendering

* Automatically recognise VegaLite specification

* Improve matching VegaLite result

* Update naming

* StringFormatter -> DefaultFormatter
2021-05-21 17:51:31 +02:00
Tomasz Tomczyk
a750d528c4
Only focus when needed (#283) 2021-05-21 01:59:00 +02:00