Improve unlisted error when there is no files/ directory

This commit is contained in:
José Valim 2023-08-10 20:54:07 +02:00
parent e26d45ac46
commit d0ef0e0279

View file

@ -16,7 +16,7 @@ defmodule LivebookWeb.SessionLive.AddFileEntryUnlistedComponent do
|> assign_new(:files, fn ->
case FileSystem.File.list(assigns.session.files_dir) do
{:ok, files} -> unlisted_files(files, assigns.file_entries)
{:error, _} -> []
{:error, _} -> :none
end
end)
@ -37,12 +37,16 @@ defmodule LivebookWeb.SessionLive.AddFileEntryUnlistedComponent do
@impl true
def render(assigns) do
~H"""
<div class="flex flex-col">
<%= if @files == [] do %>
<p class="text-gray-700">
No other files found in the <code>files/</code> directory.
</p>
<% else %>
<div>
<p :if={@files == :none} class="text-gray-700">
There is no <code>files/</code> directory that exists alongside your notebook.
</p>
<p :if={@files == []} class="text-gray-700">
No other files found in the <code>files/</code> directory.
</p>
<div :if={match?([_ | _], @files)} class="flex flex-col">
<p class="text-gray-700">
Here are other files from the <code>files/</code> directory that you may want to add.
</p>
@ -77,7 +81,7 @@ defmodule LivebookWeb.SessionLive.AddFileEntryUnlistedComponent do
</.link>
</div>
</form>
<% end %>
</div>
</div>
"""
end