Module: Emojidex::Data::CollectionAssetInformation

Included in:
Collection, CollectionCache
Defined in:
lib/emojidex/data/collection/asset_information.rb

Overview

Asset Information for Collections

Instance Method Summary collapse

Instance Method Details

#generate_checksums(formats = Emojidex::Defaults.formats, sizes = Emojidex::Defaults.sizes) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/emojidex/data/collection/asset_information.rb', line 8

def generate_checksums(formats = Emojidex::Defaults.formats,
                       sizes = Emojidex::Defaults.sizes)
  @emoji.values.each do |moji|
    moji.checksums = get_checksums(moji, formats, sizes)
    moji.combinations.each do |combo|
      combo.checksums = get_combo_checksums(moji, combo, formats, sizes)
    end
    moji.customizations.each do |combo|
      combo.checksums = get_combo_checksums(moji, combo, formats, sizes)
    end
  end
end

#generate_paths(formats = Emojidex::Defaults.formats, sizes = Emojidex::Defaults.sizes) ⇒ Object



58
59
60
61
62
63
64
65
# File 'lib/emojidex/data/collection/asset_information.rb', line 58

def generate_paths(formats = Emojidex::Defaults.formats, sizes = Emojidex::Defaults.sizes)
  @emoji.values.each do |moji|
    moji.paths = get_paths(moji, formats, sizes)
    moji.combinations.each do |combo|
      combo.paths = get_combo_paths(moji, combo, formats, sizes)
    end
  end
end

#get_checksums(moji, formats = Emojidex::Defaults.formats, sizes = Emojidex::Defaults.sizes) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/emojidex/data/collection/asset_information.rb', line 21

def get_checksums(moji, formats = Emojidex::Defaults.formats,
                  sizes = Emojidex::Defaults.sizes)
  sums = {}
  sums[:svg] = _checksum_for_file("#{@vector_source_path}/#{moji.code}.svg") if formats.include? :svg
  if formats.include? :png
    sums[:png] = {}
    sizes.keys.each do |size|
      sums[:png][size] = _checksum_for_file("#{@raster_source_path}/#{size}/#{moji.code}.png")
    end
  end
  sums
end

#get_combo_checksums(moji, combo, formats = Emojidex::Defaults.formats, sizes = Emojidex::Defaults.sizes) ⇒ Object



34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/emojidex/data/collection/asset_information.rb', line 34

def get_combo_checksums(moji, combo, formats = Emojidex::Defaults.formats,
                  sizes = Emojidex::Defaults.sizes)
  sums = combo.generate_blank_entry_set
  if formats.include? :svg
    for i in 0..(combo.components.length - 1)
      combo.components[i].each do |component|
        next if component == ''
        sums[i][component][:svg] = _checksum_for_file("#{@vector_source_path}/#{combo.base}/#{i}/#{component}.svg")
      end
    end
  end
  if formats.include? :png
    sizes.keys.each do |size|
      for i in 0..(combo.components.length - 1)
        combo.components[i].each do |component|
          next if component == ''
          sums[i][component][:png][size] = _checksum_for_file("#{@raster_source_path}/#{size}/#{combo.base}/#{i}/#{component}.png")
        end
      end
    end
  end
  sums
end

#get_combo_paths(moji, combo, formats = Emojidex::Defaults.formats, sizes = Emojidex::Defaults.sizes) ⇒ Object



94
95
96
97
98
99
100
101
102
103
104
# File 'lib/emojidex/data/collection/asset_information.rb', line 94

def get_combo_paths(moji, combo, formats = Emojidex::Defaults.formats,
              sizes = Emojidex::Defaults.sizes)
  paths = combo.generate_blank_path_set
  paths[:svg] = "#{@vector_source_path}/#{moji.code}"
  if formats.include? :png
    sizes.keys.each do |size|
      paths[:png][size] = "#{@raster_source_path}/#{size}/#{moji.code}"
    end
  end
  paths
end

#get_paths(moji, formats = Emojidex::Defaults.formats, sizes = Emojidex::Defaults.sizes) ⇒ Object



81
82
83
84
85
86
87
88
89
90
91
92
# File 'lib/emojidex/data/collection/asset_information.rb', line 81

def get_paths(moji, formats = Emojidex::Defaults.formats,
              sizes = Emojidex::Defaults.sizes)
  paths = {}
  paths[:svg] = "#{@vector_source_path}/#{moji.code}.svg"
  if formats.include? :png
    paths[:png] = {}
    sizes.keys.each do |size|
      paths[:png][size] = "#{@raster_source_path}/#{size}/#{moji.code}.png"
    end
  end
  paths
end

#get_paths?(moji, formats = Emojidex::Defaults.formats, sizes = Emojidex::Defaults.sizes) ⇒ Boolean

Returns:

  • (Boolean)


67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/emojidex/data/collection/asset_information.rb', line 67

def get_paths?(moji, formats = Emojidex::Defaults.formats, sizes = Emojidex::Defaults.sizes)
  paths = {}
  path = "#{@vector_source_path}/#{moji.code}.svg"
  paths[:svg] = path if File.exist? path
  if formats.include? :png
    paths[:png] = {}
    sizes.keys.each do |size|
      path = "#{@raster_source_path}/#{size}/#{moji.code}.png"
      paths[:png][size] = path if File.exist? path
    end
  end
  paths
end