| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | <script lang="ts"> | 
					
						
							| 
									
										
										
										
											2023-06-15 16:12:46 +02:00
										 |  |  |   import ThemeViewState from "../../Models/ThemeViewState" | 
					
						
							|  |  |  |   import Translations from "../i18n/Translations" | 
					
						
							|  |  |  |   import Tr from "../Base/Tr.svelte" | 
					
						
							|  |  |  |   import Loading from "../Base/Loading.svelte" | 
					
						
							| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-15 16:12:46 +02:00
										 |  |  |   export let state: ThemeViewState | 
					
						
							|  |  |  |   /** | 
					
						
							|  |  |  |    * Gives the contributor some feedback based on the current state: | 
					
						
							|  |  |  |    * - is data loading? | 
					
						
							|  |  |  |    * - Is all data hidden due to filters? | 
					
						
							|  |  |  |    * - Is no data in view? | 
					
						
							|  |  |  |    */ | 
					
						
							| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-15 16:12:46 +02:00
										 |  |  |   let dataIsLoading = state.dataIsLoading | 
					
						
							|  |  |  |   let currentState = state.hasDataInView | 
					
						
							|  |  |  |   currentState.data === "" | 
					
						
							|  |  |  |   const t = Translations.t.centerMessage | 
					
						
							| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | </script> | 
					
						
							| 
									
										
										
										
											2023-06-15 16:12:46 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | {#if $currentState === "has-visible-features"} | 
					
						
							| 
									
										
										
										
											2023-06-15 16:12:46 +02:00
										 |  |  |   <!-- don't show anything --> | 
					
						
							| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | {:else if $currentState === "zoom-to-low"} | 
					
						
							| 
									
										
										
										
											2023-06-15 16:12:46 +02:00
										 |  |  |   <div class="alert w-fit p-4"> | 
					
						
							|  |  |  |     <Tr t={t.zoomIn} /> | 
					
						
							|  |  |  |   </div> | 
					
						
							| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | {:else if $currentState === "all-filtered-away"} | 
					
						
							| 
									
										
										
										
											2023-06-15 16:12:46 +02:00
										 |  |  |   <div class="alert w-fit p-4"> | 
					
						
							|  |  |  |     <Tr t={t.allFilteredAway} /> | 
					
						
							|  |  |  |   </div> | 
					
						
							| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | {:else if $dataIsLoading} | 
					
						
							| 
									
										
										
										
											2023-06-15 16:12:46 +02:00
										 |  |  |   <div class="alert w-fit p-4"> | 
					
						
							|  |  |  |     <Loading> | 
					
						
							|  |  |  |       <Tr t={Translations.t.centerMessage.loadingData} /> | 
					
						
							|  |  |  |     </Loading> | 
					
						
							|  |  |  |   </div> | 
					
						
							| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | {:else if $currentState === "no-data"} | 
					
						
							| 
									
										
										
										
											2023-06-15 16:12:46 +02:00
										 |  |  |   <div class="alert w-fit p-4"> | 
					
						
							|  |  |  |     <Tr t={t.noData} /> | 
					
						
							|  |  |  |   </div> | 
					
						
							| 
									
										
										
										
											2023-06-15 02:42:12 +02:00
										 |  |  | {/if} |