diff --git a/lib/livebook_web/live/path_select_component.ex b/lib/livebook_web/live/path_select_component.ex index 371a3caed..2633c21b7 100644 --- a/lib/livebook_web/live/path_select_component.ex +++ b/lib/livebook_web/live/path_select_component.ex @@ -20,14 +20,22 @@ defmodule LivebookWeb.PathSelectComponent do @impl true def mount(socket) do inner_block = Map.get(socket.assigns, :inner_block, nil) - {:ok, assign(socket, inner_block: inner_block, current_dir: nil)} + {:ok, assign(socket, inner_block: inner_block, current_dir: nil, new_directory_name: nil)} end @impl true def update(assigns, socket) do {force_reload?, assigns} = Map.pop(assigns, :force_reload, false) - %{assigns: assigns} = socket = assign(socket, assigns) + socket = + socket + |> assign(assigns) + |> update_files(force_reload?) + + {:ok, socket} + end + + defp update_files(%{assigns: assigns} = socket, force_reload?) do {dir, basename} = split_path(assigns.path) dir = Path.expand(dir) @@ -38,14 +46,14 @@ defmodule LivebookWeb.PathSelectComponent do assigns.files end - {:ok, assign(socket, files: annotate_matching(files, basename), current_dir: dir)} + assign(socket, files: annotate_matching(files, basename), current_dir: dir) end @impl true def render(assigns) do ~L"""