assets.ex (636B)
1 defmodule ExDoc.Formatter.EPUB.Assets do 2 @moduledoc false 3 4 defmacrop embed_pattern(pattern) do 5 ["formatters/epub", pattern] 6 |> Path.join() 7 |> Path.wildcard() 8 |> Enum.map(fn path -> 9 Module.put_attribute(__CALLER__.module, :external_resource, path) 10 {Path.basename(path), File.read!(path)} 11 end) 12 end 13 14 def dist(proglang), do: dist_js() ++ dist_css(proglang) 15 16 defp dist_js(), do: embed_pattern("dist/*.js") 17 defp dist_css(:elixir), do: embed_pattern("dist/epub-elixir-*.css") 18 defp dist_css(:erlang), do: embed_pattern("dist/epub-erlang-*.css") 19 20 def metainfo, do: embed_pattern("metainfo/*") 21 end