Packages
livebook
0.3.0
0.19.8
0.19.7
0.19.6
0.19.5
0.19.4
0.19.3
0.19.2
0.19.1
0.19.0
0.18.6
0.18.5
0.18.4
0.18.3
0.18.2
0.18.1
0.18.0
0.17.3
0.17.2
0.17.1
0.17.0
0.16.4
0.16.3
0.16.2
0.16.1
0.16.0
0.15.5
0.15.4
0.15.3
0.15.2
0.15.1
0.15.0
0.14.7
0.14.6
0.14.5
0.14.4
0.14.3
0.14.2
0.14.1
0.14.0
0.14.0-rc.1
0.14.0-rc.0
0.13.3
0.13.2
0.13.1
0.13.0
0.12.1
0.12.0
0.11.4
0.11.3
0.11.2
0.11.1
0.11.0
0.10.0
0.9.3
0.9.2
0.9.1
0.9.0
0.8.2
0.8.1
0.8.0
0.7.2
0.7.1
0.7.0
0.6.3
0.6.2
0.6.1
0.6.0
0.5.2
0.5.1
0.5.0
0.4.1
0.4.0
0.3.2
0.3.1
0.3.0
0.2.3
0.2.2
0.2.1
0.2.0
0.1.2
0.1.1
0.1.0
Automate code & data workflows with interactive notebooks
Current section
Files
Jump to
Current section
Files
lib/livebook_web/live/session_live/delete_section_component.ex
defmodule LivebookWeb.SessionLive.DeleteSectionComponent do
use LivebookWeb, :live_component
@impl true
def render(assigns) do
~H"""
<div class="p-6 pb-4 flex flex-col space-y-8">
<h3 class="text-2xl font-semibold text-gray-800">
Delete section
</h3>
<p class="text-gray-700">
Are you sure you want to delete this section -
<span class="font-semibold">“<%= @section.name %>”</span>?
</p>
<form phx-submit="delete" phx-target={@myself}>
<h3 class="mb-1 text-lg font-semibold text-gray-800">
Options
</h3>
<%# If there is no previous section, all cells need to be deleted %>
<.switch_checkbox
name="delete_cells"
label="Delete all cells in this section"
checked={@is_first}
disabled={@is_first} />
<div class="mt-8 flex justify-end space-x-2">
<button type="submit" class="button button-red">
<.remix_icon icon="delete-bin-6-line" class="align-middle mr-1" />
Delete
</button>
<%= live_patch "Cancel", to: @return_to, class: "button button-outlined-gray" %>
</div>
</form>
</div>
"""
end
@impl true
def handle_event("delete", %{"delete_cells" => delete_cells}, socket) do
delete_cells? = delete_cells == "true"
Livebook.Session.delete_section(
socket.assigns.session.pid,
socket.assigns.section.id,
delete_cells?
)
{:noreply, push_patch(socket, to: socket.assigns.return_to)}
end
end