2020-07-21 00:07:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  { FixedUiElement }  from  "./UI/Base/FixedUiElement" ;  
						 
					
						
							
								
									
										
										
										
											2021-01-22 01:03:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  Combine  from  "./UI/Base/Combine" ;  
						 
					
						
							
								
									
										
										
										
											2021-09-21 02:10:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  MinimapImplementation  from  "./UI/Base/MinimapImplementation" ;  
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  { Utils }  from  "./Utils" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  AllThemesGui  from  "./UI/AllThemesGui" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  DetermineLayout  from  "./Logic/DetermineLayout" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  LayoutConfig  from  "./Models/ThemeConfig/LayoutConfig" ;  
						 
					
						
							
								
									
										
										
										
											2021-11-03 00:44:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  DefaultGUI  from  "./UI/DefaultGUI" ;  
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  State  from  "./State" ;  
						 
					
						
							
								
									
										
										
										
											2021-10-15 14:52:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  ShowOverlayLayerImplementation  from  "./UI/ShowDataLayer/ShowOverlayLayerImplementation" ;  
						 
					
						
							
								
									
										
										
										
											2021-11-03 00:44:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  { DefaultGuiState }  from  "./UI/DefaultGuiState" ;  
						 
					
						
							
								
									
										
										
										
											2021-03-22 02:45:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-10-15 14:52:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Workaround for a stupid crash: inject some functions which would give stupid circular dependencies or crash the other nodejs scripts running from console
  
						 
					
						
							
								
									
										
										
										
											2021-09-21 02:10:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								MinimapImplementation . initialize ( )  
						 
					
						
							
								
									
										
										
										
											2021-10-15 14:52:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								ShowOverlayLayerImplementation . Implement ( ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Miscelleanous
  
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Utils . DisableLongPresses ( )  
						 
					
						
							
								
									
										
										
										
											2021-03-22 02:45:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Init  {  
						 
					
						
							
								
									
										
										
										
											2021-12-21 19:56:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    public  static  Init ( layoutToUse : LayoutConfig )  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-06-24 00:35:19 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-11-07 16:34:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        if  ( layoutToUse  ===  null )  { 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Something went wrong, error message is already on screen
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2021-11-07 16:34:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        if  ( layoutToUse  ===  undefined )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // No layout found
 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-08 04:36:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            new  AllThemesGui ( ) . setup ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2020-06-24 00:35:19 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  guiState  =  new  DefaultGuiState ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        State . state  =  new  State ( layoutToUse ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-31 02:08:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        DefaultGuiState . state  =  guiState ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // This 'leaks' the global state via the window object, useful for debugging
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // @ts-ignore
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        window . mapcomplete_state  =  State . state ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-08 17:59:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        new  DefaultGUI ( State . state ,  guiState ) . setup ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-03 16:04:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-05-28 12:59:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								document . getElementById ( "decoration-desktop" ) . remove ( ) ;  
						 
					
						
							
								
									
										
										
										
											2021-05-28 12:59:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								new  Combine ( [ "Initializing... <br/>" ,  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    new  FixedUiElement ( "<a>If this message persist, something went wrong - click here to try again</a>" ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        . SetClass ( "link-underline small" ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        . onClick ( ( )  = >  { 
							 
						 
					
						
							
								
									
										
										
										
											2021-06-17 00:37:57 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            localStorage . clear ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-28 12:59:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            window . location . reload ( true ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } ) ] ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    . AttachTo ( "centermessage" ) ;  // Add an initialization and reset button if something goes wrong
 
							 
						 
					
						
							
								
									
										
										
										
											2021-01-18 19:36:19 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-12-21 18:35:31 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// @ts-ignore
  
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								DetermineLayout . GetLayout ( ) . then ( value  = >  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    console . log ( "Got " ,  value ) 
							 
						 
					
						
							
								
									
										
										
										
											2021-12-21 19:56:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Init . Init ( value ) 
							 
						 
					
						
							
								
									
										
										
										
											2022-01-26 21:40:38 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								} ) . catch ( err  = >  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    console . error ( "Error while initializing: " ,  err ,  err . stack ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} )  
						 
					
						
							
								
									
										
										
										
											2021-10-15 05:20:02 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-05-28 12:59:48 +02:00