1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
5 defmodule Pleroma.Web.MastodonAPI.AppView do
8 alias Pleroma.Web.OAuth.App
10 @vapid_key :web_push_encryption
11 |> Application.get_env(:vapid_details, [])
12 |> Keyword.get(:public_key)
14 def render("show.json", %{app: %App{} = app}) do
16 id: app.id |> to_string,
17 name: app.client_name,
18 client_id: app.client_id,
19 client_secret: app.client_secret,
20 redirect_uri: app.redirect_uris,
26 def render("short.json", %{app: %App{website: webiste, client_name: name}}) do
34 defp with_vapid_key(data) do
36 Map.put(data, "vapid_key", @vapid_key)