neiam
/apollos_crib
It's Apollo's Crib
public · Issues · Pulls 1 · Labels · Forks · Compare · Actions failure · Badges · Packages
⭐
Log in to mark this repository.
undid af
0a76aa3 · gmorell · 2022-08-03 00:46
Files changed
modified
apps/room_sanctum/lib/room_sanctum_web/live/cfg_vision_live/show.ex
+10
−21
@@ -12,25 +12,20 @@ defmodule RoomSanctumWeb.VisionLive.Show do
| 12 | 12 | @impl true |
| 13 | 13 | def handle_params(%{"id" => id}, _, socket) do |
| 14 | 14 | {:noreply, |
| 15 | − socket | |
| 16 | − |> assign(:page_title, page_title(socket.assigns.live_action)) | |
| 17 | − |> assign(:vision, Configuration.get_vision!(id)) | |
| 18 | − |> assign(:vision_id, id) | |
| 19 | − |> assign(:preview, []) | |
| 20 | − |> assign(:queries, []) | |
| 21 | − |> assign(:preview_mode, :basic) | |
| 15 | + socket | |
| 16 | + |> assign(:page_title, page_title(socket.assigns.live_action)) | |
| 17 | + |> assign(:vision, Configuration.get_vision!(id)) | |
| 18 | + |> assign(:vision_id, id) | |
| 19 | + |> assign(:preview, []) | |
| 20 | + |> assign(:queries, []) | |
| 21 | + |> assign(:preview_mode, :basic) | |
| 22 | 22 | } |
| 23 | 23 | end |
| 24 | 24 | |
| 25 | 25 | def handle_info(:update, socket) do |
| 26 | 26 | Process.send_after(self(), :update, 15000) |
| 27 | 27 | %{data: data, queries: queries} = RoomSanctum.Worker.Vision.get_state(socket.assigns.vision_id) |
| 28 | − { | |
| 29 | − :noreply, | |
| 30 | − socket | |
| 31 | − |> assign(:preview, data) | |
| 32 | − |> assign(:queries, queries) | |
| 33 | − } | |
| 28 | + {:noreply, socket |> assign(:preview, data) |> assign(:queries, queries)} | |
| 34 | 29 | end |
| 35 | 30 | |
| 36 | 31 | defp do_toggle(state) do |
@@ -41,11 +36,7 @@ defmodule RoomSanctumWeb.VisionLive.Show do
| 41 | 36 | end |
| 42 | 37 | |
| 43 | 38 | def handle_event("toggle-preview-mode", _params, socket) do |
| 44 | − { | |
| 45 | − :noreply, | |
| 46 | − socket | |
| 47 | − |> assign(:preview_mode, do_toggle(socket.assigns.preview_mode)) | |
| 48 | − } | |
| 39 | + {:noreply, socket |> assign(:preview_mode, do_toggle(socket.assigns.preview_mode))} | |
| 49 | 40 | end |
| 50 | 41 | |
| 51 | 42 | defp page_title(:show), do: "Vision Detail" |
@@ -94,9 +85,7 @@ defmodule RoomSanctumWeb.VisionLive.Show do
| 94 | 85 | |
| 95 | 86 | |
| 96 | 87 | defp get_query_data_icon(item, queries) do |
| 97 | − as_map = queries | |
| 98 | − |> Enum.map(fn x -> {x.id, x} end) | |
| 99 | − |> Enum.into(%{}) | |
| 88 | + as_map = queries |> Enum.map(fn x -> {x.id, x} end) |> Enum.into(%{}) | |
| 100 | 89 | case Map.get(as_map, item) do |
| 101 | 90 | nil -> "" |
| 102 | 91 | _val -> icon(_val.source.type) |
modified
apps/room_sanctum/lib/room_sanctum_web/live/cfg_vision_live/show.html.heex
+39
−46
@@ -79,55 +79,48 @@
| 79 | 79 | <div class="card card-compact w-1/2 bg-base-100 shadow-xl m-2"> |
| 80 | 80 | <div class="card-body"> |
| 81 | 81 | |
| 82 | − <div class="flex"> | |
| 83 | − <div class="flex-auto basis-4/5"> | |
| 84 | − <h3 class="card-title w-full">Preview</h3> | |
| 82 | + <div class="flex"> | |
| 83 | + <div class="flex-auto basis-4/5"> | |
| 84 | + <h3 class="card-title w-full">Preview</h3> | |
| 85 | + </div> | |
| 86 | + <div class="flex-1 w-3/4"> | |
| 87 | + | |
| 88 | + </div> | |
| 89 | + <div class="flex-none w-20"> | |
| 90 | + <button class="btn btn-secondary btn-sm" phx-click="toggle-preview-mode"><%= @preview_mode %></button> | |
| 91 | + </div> | |
| 85 | 92 | </div> |
| 86 | − <div class="flex-1 w-3/4"> | |
| 87 | − | |
| 88 | − </div> | |
| 89 | − <div class="flex-none w-20"> | |
| 90 | − <button class="btn btn-secondary btn-sm" phx-click="toggle-preview-mode"><%= @preview_mode %></button> | |
| 91 | − </div> | |
| 92 | − </div> | |
| 93 | 93 | <%= case @preview_mode do %> |
| 94 | 94 | <%= :basic -> %> |
| 95 | − <%= for {k, p} <- @preview do %> | |
| 96 | − <div class="flex gap-2"> | |
| 97 | − <i class={"fas fa-fw fa-xl #{icon(k |> elem(1))}"}></i> | |
| 98 | − <span class="text-secondary font-bold"><%= get_query_data(k |> elem(0), @queries, 64) %></span> | |
| 99 | − </div> | |
| 100 | − <%= case k do %> | |
| 101 | − <%= {_, :gtfs} -> %> <.p_gtfs entries={condense(k, p) |> preview(k)}> | |
| 102 | − </ | |
| 103 | − .p_gtfs> | |
| 104 | − <%= {_, :gbfs} -> %> <.p_gbfs entries={condense(k, p) |> preview(k)}> | |
| 105 | − </ | |
| 106 | − .p_gbfs> | |
| 107 | − <%= {_, :tidal} -> %> <.p_tidal entries={condense(k, p) |> preview(k)}> | |
| 108 | − </ | |
| 109 | − .p_tidal> | |
| 110 | − <%= {_, :weather} -> %> <.p_weather entries={condense(k, p) |> preview(k)}> | |
| 111 | −</.p_weather> | |
| 112 | −<%= {_, :aqi} -> %> <.p_aqi entries={condense(k, p) |> preview(k)}> </.p_aqi> | |
| 113 | −<%= {_, :ephem} -> %> <.p_ephem entries={condense(k, p) |> preview(k)}> </.p_ephem> | |
| 114 | −<%= {_, :calendar} -> %> <.p_calendar entries={condense(k, p) |> preview(k)}> </.p_calendar> | |
| 115 | −<% end %> | |
| 95 | + <%= for {k, p} <- @preview do %> | |
| 96 | + <div class="flex gap-2"> | |
| 97 | + <i class={"fas fa-fw fa-xl #{icon(k |> elem(1))}"}></i> | |
| 98 | + <span class="text-secondary font-bold"><%= get_query_data(k |> elem(0), @queries, 64) %></span> | |
| 99 | + </div> | |
| 100 | + <%= case k do %> | |
| 101 | + <%= {_, :gtfs} -> %> <.p_gtfs entries={condense(k, p) |> preview(k)}> </.p_gtfs> | |
| 102 | + <%= {_, :gbfs} -> %> <.p_gbfs entries={condense(k, p) |> preview(k)}> </.p_gbfs> | |
| 103 | + <%= {_, :tidal} -> %> <.p_tidal entries={condense(k, p) |> preview(k)}> </.p_tidal> | |
| 104 | + <%= {_, :weather} -> %> <.p_weather entries={condense(k, p) |> preview(k)}> </.p_weather> | |
| 105 | + <%= {_, :aqi} -> %> <.p_aqi entries={condense(k, p) |> preview(k)}> </.p_aqi> | |
| 106 | + <%= {_, :ephem} -> %> <.p_ephem entries={condense(k, p) |> preview(k)}> </.p_ephem> | |
| 107 | + <%= {_, :calendar} -> %> <.p_calendar entries={condense(k, p) |> preview(k)}> </.p_calendar> | |
| 108 | + <% end %> | |
| 109 | + <% end %> | |
| 110 | + <%= :raw -> %> | |
| 111 | + <%= for {k, p} <- @preview do %> | |
| 112 | + <div class="flex"> | |
| 113 | + <div class="w-16"> | |
| 114 | + <i class={"fas fa-fw fa-2xl #{icon(k |> elem(1))}"}></i> | |
| 115 | + </div> | |
| 116 | + <div class="w-7/8"> | |
| 117 | + <span class="text-secondary font-bold"><%= get_query_data(k |> elem(0), @queries, 64) %></span> | |
| 118 | + <pre><%= condense(k, p) |> Poison.encode!(pretty: true)%></pre> | |
| 119 | + </div> | |
| 120 | + </div> | |
| 116 | 121 | <% end %> |
| 117 | −<%= :raw -> %> | |
| 118 | −<%= for {k, p} <- @preview do %> | |
| 119 | −<div class="flex"> | |
| 120 | − <div class="w-16"> | |
| 121 | − <i class={"fas fa-fw fa-2xl #{icon(k |> elem(1))}"}></i> | |
| 122 | − </div> | |
| 123 | − <div class="w-7/8"> | |
| 124 | − <span class="text-secondary font-bold"><%= get_query_data(k |> elem(0), @queries, 64) %></span> | |
| 125 | − <pre><%= condense(k, p) |> Poison.encode!(pretty: true)%></pre> | |
| 126 | − </div> | |
| 127 | −</div> | |
| 128 | −<% end %> | |
| 129 | 122 | <% end %> |
| 130 | −</div> | |
| 131 | −</div> | |
| 132 | −</div> | |
| 123 | + </div> | |
| 124 | + </div> | |
| 125 | + </div> | |
| 133 | 126 | </div> |
Parents: 4402e76