blob: 7f4216fd5911fc533ff8acbb0d0a4b82a1844436 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
require 'yaml'
configpath = ARGV[0]
outputpath = ARGV[1]
config = YAML.load_file(configpath)
output = config.map do |panel|
ret = panel
if ret["color"].kind_of? String
ret["color"] = [ret["color"]]
end
ret
end.map do |panel|
ret = {}
ret["id"] = "\"#{panel["id"]}\""
ret["color"] = "[\"" + panel["color"].join("\",\"") + "\"]"
ret["tag"] = "\"#{panel["tag"]}\""
if panel.include? "subtag"
ret["subtag"] = "\"#{panel["subtag"]}\""
end
if panel.include? "link"
ret["link"] = "\"#{panel["link"]}\""
end
if panel.include? "copy_to_sign"
ret["copy_to_sign"] = "\"#{panel["copy_to_sign"]}\""
end
ret
end.map do |panel|
"{" + panel.to_a.map do |element|
"\"#{element[0]}\":#{element[1]}"
end.join(",") + "}"
end.join(",")
header = "extends Node\n\nvar panels = ["
footer = "]"
File.write(outputpath, header + output + footer)
|