2 def self.full_definitions(layers_filename, legends: nil)
3 legended_layers = YAML.load_file(Rails.root.join(legends)).keys if legends
4 YAML.load_file(Rails.root.join(layers_filename))
5 .reject { |layer| layer["apiKeyId"] && !Settings[layer["apiKeyId"]] }
8 layer["apikey"] = Settings[layer["apiKeyId"]]
9 layer.delete "apiKeyId"
11 layer["hasLegend"] = true if legended_layers&.include?(layer["layerId"])
16 def self.embed_definitions(layers_filename)
17 full_definitions(layers_filename)
18 .select { |entry| entry["canEmbed"] }
19 .to_h { |entry| [entry["layerId"], entry.slice("leafletOsmId", "leafletOsmDarkId", "apikey").compact] }