Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
[akkoma] / lib / pleroma / web / rich_media / parsers / twitter_card.ex
1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
4
5 defmodule Pleroma.Web.RichMedia.Parsers.TwitterCard do
6 alias Pleroma.Web.RichMedia.Parsers.MetaTagsParser
7
8 @spec parse(String.t(), map()) :: {:ok, map()} | {:error, String.t()}
9 def parse(html, data) do
10 data
11 |> parse_name_attrs(html)
12 |> parse_property_attrs(html)
13 end
14
15 defp parse_name_attrs(data, html) do
16 MetaTagsParser.parse(html, data, "twitter", %{}, "name")
17 end
18
19 defp parse_property_attrs({_, data}, html) do
20 MetaTagsParser.parse(html, data, "twitter", "No twitter card metadata found", "property")
21 end
22 end