defmodule Home73kWeb.BlogLive do use Home73kWeb, :live_view alias Home73k.Blog @impl true def mount(_params, _session, socket) do socket |> live_okreply() end @impl true def handle_params(_params, _url, socket) do socket |> assign(:page_title, "Blog") |> assign(:posts, Blog.list_posts()) |> live_noreply() end # @impl true # def handle_event("suggest", %{"q" => query}, socket) do # {:noreply, assign(socket, results: search(query), query: query)} # end # @impl true # def handle_event("search", %{"q" => query}, socket) do # case search(query) do # %{^query => vsn} -> # {:noreply, redirect(socket, external: "https://hexdocs.pm/#{query}/#{vsn}")} # _ -> # {:noreply, # socket # |> put_flash(:error, "No dependencies found matching \"#{query}\"") # |> assign(results: %{}, query: query)} # end # end # defp search(query) do # if not Home73kWeb.Endpoint.config(:code_reloader) do # raise "action disabled when not in development" # end # for {app, desc, vsn} <- Application.started_applications(), # app = to_string(app), # String.starts_with?(app, query) and not List.starts_with?(desc, ~c"ERTS"), # into: %{}, # do: {app, vsn} # end end