diff --git a/HMI/US/portrait/nspanel_US_P.HMI b/HMI/US/portrait/nspanel_US_P.HMI index ddc9dcb6..d100a813 100644 Binary files a/HMI/US/portrait/nspanel_US_P.HMI and b/HMI/US/portrait/nspanel_US_P.HMI differ diff --git a/HMI/US/portrait/nspanel_US_P.tft b/HMI/US/portrait/nspanel_US_P.tft index 176d9271..97ac7609 100644 Binary files a/HMI/US/portrait/nspanel_US_P.tft and b/HMI/US/portrait/nspanel_US_P.tft differ diff --git a/HMI/code_gen/icons/icons.py b/HMI/code_gen/icons/icons.py index 9be9835d..e49a3e54 100644 --- a/HMI/code_gen/icons/icons.py +++ b/HMI/code_gen/icons/icons.py @@ -26,15 +26,32 @@ def get_icon_id(ma_name): return icons["alert-circle-outline"] """) -# write documentation file -with open(os.path.join(__location__, "../..","icons.md"), 'w') as f: - f.write(""" -# Icons IDs -This file contains the Icons IDs included in the display firmware, addressable via serial. - -MD Icon Name | Icon ------------- | ---- -""") +# write mapping lib for typescript +with open(os.path.join(__location__, "../../../iobroker", "icon_mapping.ts"), 'w') as f: + f.write("let iconMap = new Map([\n") for icon in icon_metadata: - val = icon["name"] - f.write(f"mdi:{val} | ![{val}](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/{val}.svg)\n") + iconchar = chr(int(icon['hex'], 16)) + name = icon["name"] + f.write(f" [\"{name}\", \"{iconchar}\"],\n") + f.write("]);\n") + f.write(""" +function get_icon(ma_name:string):string{ + if(iconMap.has(ma_name)){ + return iconMap.get(ma_name); + } + return iconMap.get("alert-circle-outline"); +} +"""); + +# write documentation file +#with open(os.path.join(__location__, "../..","icons.md"), 'w') as f: +# f.write(""" +## Icons IDs +#This file contains the Icons IDs included in the display firmware, addressable via serial. +# +#MD Icon Name | Icon +#------------ | ---- +#""") +# for icon in icon_metadata: +# val = icon["name"] +# f.write(f"mdi:{val} | ![{val}](https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/0aeb4d612644d80d9d1fe242f705f362985de5dc/svg/{val}.svg)\n")