1 # frozen_string_literal: true
4 def self.full_definitions(layers_filename, legends: nil)
5 legended_layers = YAML.load_file(Rails.root.join(legends)).keys if legends
6 YAML.load_file(Rails.root.join(layers_filename))
7 .reject { |layer| layer["apiKeyId"] && !Settings[layer["apiKeyId"]] }
10 layer["apikey"] = Settings[layer["apiKeyId"]]
11 layer.delete "apiKeyId"
13 layer["hasLegend"] = true if legended_layers&.include?(layer["layerId"])
18 def self.embed_definitions(layers_filename)
19 full_definitions(layers_filename)
20 .select { |entry| entry["canEmbed"] }
21 .to_h { |entry| [entry["layerId"], entry.slice("leafletOsmId", "leafletOsmDarkId", "apikey").compact] }