lib/activity_pub_client/app.ex

defmodule ActivityPubClient.App do
  @moduledoc """
  @TODO
  """

  use Ecto.Schema
  import Ecto.Changeset

  schema "ap_client_apps" do
    field(:site, :string)
    field(:client_id, :string)
    field(:client_secret, :string)
    # field(:redirect_uri, :string)

    timestamps()
  end

  @doc false
  def changeset(app, attrs) do
    app
    |> cast(attrs, [:site, :client_id, :client_secret])
    |> validate_required([:site, :client_id, :client_secret])
    |> unique_constraint(:site)
  end
end