forked from MapComplete/MapComplete
		
	
		
			
				
	
	
		
			33 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import TagRenderingConfig from "./JSON/TagRenderingConfig";
 | |
| import * as questions from "../assets/tagRenderings/questions.json";
 | |
| import * as icons from "../assets/tagRenderings/icons.json";
 | |
| 
 | |
| export default class SharedTagRenderings {
 | |
| 
 | |
|     public static SharedTagRendering = SharedTagRenderings.generatedSharedFields();
 | |
|     public static SharedIcons = SharedTagRenderings.generatedSharedFields(true);
 | |
| 
 | |
|     private static generatedSharedFields(iconsOnly = false) {
 | |
|         const dict = {}
 | |
| 
 | |
|         function add(key, store) {
 | |
|             try {
 | |
|                 dict[key] = new TagRenderingConfig(store[key], key)
 | |
|             } catch (e) {
 | |
|                 console.error("BUG: could not parse", key, " from questions.json or icons.json - this error happened during the build step of the SharedTagRenderings", e)
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         if (!iconsOnly) {
 | |
|             for (const key in questions) {
 | |
|                 add(key, questions);
 | |
|             }
 | |
|         }
 | |
|         for (const key in icons) {
 | |
|             add(key, icons);
 | |
|         }
 | |
| 
 | |
|         return dict;
 | |
|     }
 | |
| 
 | |
| }
 |