Packages
phoenix_webcomponent
3.1.0
3.2.4
3.2.3
3.2.2
3.2.1
3.2.0
3.1.5
3.1.4
3.1.3
3.1.2
3.1.1
3.1.0
2.8.0
2.7.0
2.6.0
2.5.4
2.5.3
2.5.2
2.5.1
2.5.0
2.4.0
2.3.6
2.3.5
2.3.4
2.3.3
2.3.2
2.3.1
2.2.3
2.2.2
2.2.1
2.2.0
2.1.4
2.1.3
2.1.2
2.1.1
2.1.0
2.0.0
1.6.3
1.6.2
1.6.1
1.6.0
1.5.1
1.5.0
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.0
1.2.0
1.1.1
1.1.0
1.0.0
1.0.0-beta.4
1.0.0-beta.3
1.0.0-beta.2
0.0.0
Phoenix view functions for working with WebComponent
Current section
Files
Jump to
Current section
Files
lib/mix/tasks/gen_icon.ex
defmodule Mix.Tasks.PhxWc.GenIcons do
# Generate Material Design Icons
# try to define with macro, it's too slow
@moduledoc """
Generate Phoenix.WebComponent.MaterialDesignIcons fron 7000+ svg files
"""
use Mix.Task
@shortdoc "Generate Phoenix.WebComponent.MaterialDesignIcons.ex file"
def run(_) do
Mix.Task.run("app.start")
icons =
File.ls!(Application.app_dir(:phoenix_webcomponent, "priv/mdi/svg"))
|> Enum.filter(&String.ends_with?(&1, ".svg"))
|> Enum.map(&String.trim(&1, ".svg"))
quoted = EEx.compile_file("#{__DIR__}/material_design_icons.eex")
{result, _bindings} = Code.eval_quoted(quoted, icons: icons)
fl = Path.expand("../../phoenix_webcomponent/material_design_icons.ex", __DIR__)
File.write!(fl, result)
end
end