Commit graph

40 commits

Author SHA1 Message Date
Jonatan Kłosko
c5ba8f8f81
Introduce Fly.io runtime (#2708) 2024-07-15 06:19:04 +02:00
Jonatan Kłosko
4587396c9a
Encapsulate buttons and inputs in components (#2477) 2024-02-08 19:27:16 +01:00
Jonatan Kłosko
501a98d7c6
Move helpers to components (#2448) 2024-01-26 05:47:56 +01:00
Jonatan Kłosko
8633c9a357
Add button for inserting a branching section (#2205) 2023-09-15 15:25:41 +02:00
Jonatan Kłosko
146f89f5f5
Add drag and drop actions for notebook files (#2096)
Co-authored-by: José Valim <jose.valim@dashbit.co>
2023-07-21 20:11:11 +02:00
Jonatan Kłosko
ede80fc074
Implement file management (#2022)
Co-authored-by: José Valim <jose.valim@dashbit.co>
2023-07-05 20:01:12 +02:00
Jonatan Kłosko
ab3f3d6b0b Fix inserting code cell via shortcut 2023-07-03 22:05:45 +02:00
Jonatan Kłosko
16723b98f0
Insert code cell when changing default language (#2031) 2023-07-03 15:59:23 +02:00
Zach Allaun
e1ac442c8c
Mobile quality-of-life (part 1) (#2013) 2023-06-28 18:29:44 +02:00
Jonatan Kłosko
300f5683ef Fix insert button ids 2023-06-08 22:25:10 +02:00
Benedikt Reinartz
fb9193b8ab
Add support for Erlang code cells (#1892)
Co-authored-by: José Valim <jose.valim@gmail.com>
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
2023-06-02 14:49:06 +02:00
José Valim
ad0cb75f90 Organize blocks by category 2023-05-18 13:40:24 +02:00
Jonatan Kłosko
f262b9c0c9
Rebuild confirmation modal system (#1903) 2023-05-10 18:23:08 +02:00
Jonatan Kłosko
ff22d5b31c
Add icon and group code blocks (#1902) 2023-05-09 19:13:48 +02:00
ByeongUk Choi
6dd19a8dc9
Add Form to "+ Block" (#1750)
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
2023-05-09 16:49:02 +02:00
Jonatan Kłosko
e78b3a930c
Move more styles to components (#1723) 2023-02-23 19:07:00 +01:00
Jonatan Kłosko
5b5593a54b
Update to Phoenix 1.7 (#1720) 2023-02-22 19:34:54 +01:00
Adarsh Menon
1a895e4b29
Make image a block item instead of a button in the Markdown editor (#1439)
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
2022-12-29 22:32:52 +01:00
Jonatan Kłosko
3fcb6b97bb
Enable HEEx formatter (#1322) 2022-08-02 15:51:02 +02:00
Jonatan Kłosko
8e063792ff
Improvements to the smart cells flow (#1150)
* Reword reinstall to restart

* Clarify Smart cell message when dependencies are installing

* Handle universal shortcuts in inside iframe inputs

* Adjust smart cell icons

* Improve wording in the dependency install prompt

* Reevaluate cells after installing smart cell dependencies

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

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

Co-authored-by: José Valim <jose.valim@dashbit.co>
2022-04-30 12:26:03 +02:00
Jonatan Kłosko
4e49b6e643
Add insert button for diagrams (#1134) 2022-04-19 16:51:46 +02:00
Jonatan Kłosko
2b8d732a23
Introduce code zen (#1115)
* Introduce code focus mode

* Update aria labels

* Update wording

* Show shortcut in code zen toggle

* Update shortcut
2022-04-14 21:17:19 +02:00
Jonatan Kłosko
8b153b9bb0 Fix insert buttons overlapping cell actions 2022-04-05 21:53:30 +02:00
Jonatan Kłosko
05687716d4
Improve smart cell menu visibility while in insert mode (#1091) 2022-04-04 22:28:02 +02:00
Jonatan Kłosko
5117fd6e64
List database types when adding database connection for the first time (#1090)
* List database types when adding database connection for the first time

* Rename classes
2022-04-04 19:48:57 +02:00
Jonatan Kłosko
902c993098
Adjustments (#1087)
* Fix horizontal scrollbar on smaller screens

* Apply navigation shortcuts without an additional roundtrip

* Shorten the data element selector

* Fix URL in changelog

* Return reference from handle_intellisense
2022-04-04 12:19:11 +02:00
Jonatan Kłosko
75eb031719
Automate searching and adding new dependencies (#1081)
* 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
2022-04-01 20:13:37 +02:00
Jonatan Kłosko
df765f2dd3
List predefined smart cells and automatically add their dependencies (#1078)
* List predefined smart cells and automatically add their dependencies

* Generalize dependency insertion to multiple entries

* Add runtime setup modal

* Don't evaluate setup when restarting the runtime fails

* Automatically add vega_lite for chart builder

* Improve confirmation modal actions when the action is not destructive
2022-03-30 21:55:50 +02:00
Jonatan Kłosko
4369a45bd5
Regroup cell insert buttons (#1073)
* Regroup cell insert buttons

* Add spacing to divider

* Split into two menus

* Remove smart cell icon
2022-03-24 19:02:31 +01:00
Jonatan Kłosko
afce2e6047
Prevent smart cell menu from overlapping with insert buttons (#1060) 2022-03-17 21:44:40 +01:00
Jonatan Kłosko
e27ff5a960
Rename Elixir cell to Code cell (#1035) 2022-03-02 12:48:02 +01:00
Jonatan Kłosko
9d7fe44253
Introduce smart cells (#1029)
* Introduce smart cells

* Apply review comments
2022-02-28 13:53:33 +01:00
Jonatan Kłosko
e2490c0f7f
Implement signature intellisense (#640)
* 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>
2021-12-03 21:57:21 +01:00
Jonatan Kłosko
c2636b8220
Migrate inputs to Kino (#714)
* Migrate inputs to Kino

* Update lib/livebook/session/data.ex

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

* Try parsing numbers as integers

* Garbage collect input values

* Adjust tests

* Remove unused variable

* Fix frame rendering

* Wrap inputs in border depending on its type

* Add textarea

* Reorder

* Update tests

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-11-25 18:43:42 +01:00
Jonatan Kłosko
f64dd0ea90
Restructure j/k navigation to support headlines (#707)
* Accessibility fixes

* Restructure j/k navigation to support headlines

* Focus modal content when open

* Further focus adjustments

* Fix tests

* Remove unused functions
2021-11-16 21:57:10 +01: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
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
cbdc91d68d
Show insert actions when hovering over free space between cells (#369) 2021-06-18 16:14:20 +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
cc9d5a8103
Prevent from scrolling to top on modal open (#129)
* Render modal components at the end of live views

* Add error pages

* Restructure web module

* Update lib/livebook_web/templates/error/500.html.eex

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

* Update lib/livebook_web/templates/error/500.html.eex

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

* Update lib/livebook_web/views/error_view.ex

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

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-04-02 14:00:49 +02:00
Renamed from lib/livebook_web/live/insert_buttons_component.ex (Browse further)