Module: BoringAvatars::Variants::Beam

Defined in:
lib/boring_avatars/variants/beam.rb

Constant Summary collapse

SIZE =
36

Class Method Summary collapse

Class Method Details

.render(input:, hash:, ids:) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/boring_avatars/variants/beam.rb', line 15

def render(input:, hash:, ids:)
  data = generate_data(hash, input.colors)
  content = [
    element("rect", { "width" => SIZE, "height" => SIZE, "fill" => data[:background_color] }),
    element(
      "rect",
      {
        "x" => 0,
        "y" => 0,
        "width" => SIZE,
        "height" => SIZE,
        "transform" => wrapper_transform(data),
        "fill" => data[:wrapper_color],
        "rx" => data[:is_circle] ? SIZE : SIZE / 6
      }
    ),
    element("g", { "transform" => face_transform(data) }, face_elements(data))
  ]

  VariantResult.new(size: SIZE, content: content)
end