defmodule DrainCloudCoreWeb.Router do use DrainCloudCoreWeb, :router use Plug.ErrorHandler import Plug.Conn alias DrainCloudCoreWeb.ErrorHandler, as: ErrorHandler pipeline :browser do plug :accepts, ["html"] plug :fetch_session plug :fetch_live_flash plug :put_root_layout, html: {DrainCloudCoreWeb.Layouts, :root} plug :protect_from_forgery plug :put_secure_browser_headers end pipeline :api do plug :accepts, ["json"] end scope "/api", DrainCloudCoreWeb do pipe_through :api post "/register", AuthController, :register end @impl Plug.ErrorHandler def handle_errors(conn, %{kind: _kind, reason: reason, stack: _stack}) do send_resp(conn, 500, ErrorHandler.handle_reason(reason)) end if Application.compile_env(:draincloud_core, :dev_routes) do import Phoenix.LiveDashboard.Router scope "/dev" do pipe_through :browser live_dashboard "/dashboard", metrics: DrainCloudCoreWeb.Telemetry end end end