| 
									
										
										
										
											2021-07-31 14:00:28 -08:00
										 |  |  | <template> | 
					
						
							| 
									
										
										
										
											2021-08-23 12:24:38 -08:00
										 |  |  |   <div> | 
					
						
							|  |  |  |     <v-card-title> | 
					
						
							|  |  |  |       <slot> | 
					
						
							|  |  |  |         <h1 class="mx-auto">{{ $t("page.404-page-not-found") }}</h1> | 
					
						
							|  |  |  |       </slot> | 
					
						
							|  |  |  |     </v-card-title> | 
					
						
							|  |  |  |     <div class="d-flex justify-space-around"> | 
					
						
							|  |  |  |       <div class="d-flex align-center"> | 
					
						
							|  |  |  |         <p class="primary--text">4</p> | 
					
						
							|  |  |  |         <v-icon color="primary" class="mx-auto mb-0" size="200"> | 
					
						
							|  |  |  |           {{ $globals.icons.primary }} | 
					
						
							|  |  |  |         </v-icon> | 
					
						
							|  |  |  |         <p class="primary--text">4</p> | 
					
						
							|  |  |  |       </div> | 
					
						
							|  |  |  |     </div> | 
					
						
							|  |  |  |     <v-card-actions> | 
					
						
							|  |  |  |       <v-spacer></v-spacer> | 
					
						
							|  |  |  |       <slot name="actions"> | 
					
						
							|  |  |  |         <v-btn v-for="(button, index) in buttons" :key="index" nuxt :to="button.to" color="primary"> | 
					
						
							|  |  |  |           <v-icon left> {{ button.icon }} </v-icon> | 
					
						
							|  |  |  |           {{ button.text }} | 
					
						
							|  |  |  |         </v-btn> | 
					
						
							|  |  |  |       </slot> | 
					
						
							|  |  |  |       <v-spacer></v-spacer> | 
					
						
							|  |  |  |     </v-card-actions> | 
					
						
							|  |  |  |   </div> | 
					
						
							| 
									
										
										
										
											2021-07-31 14:00:28 -08:00
										 |  |  | </template> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-09 07:15:23 +01:00
										 |  |  | <script lang="ts"> | 
					
						
							|  |  |  | import { defineComponent, useContext, useMeta } from "@nuxtjs/composition-api"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export default defineComponent({ | 
					
						
							| 
									
										
										
										
											2021-10-07 09:39:47 -08:00
										 |  |  |   layout: "basic", | 
					
						
							| 
									
										
										
										
											2021-07-31 14:00:28 -08:00
										 |  |  |   props: { | 
					
						
							|  |  |  |     error: { | 
					
						
							|  |  |  |       type: Object, | 
					
						
							| 
									
										
										
										
											2021-08-01 19:24:47 -08:00
										 |  |  |       default: null, | 
					
						
							|  |  |  |     }, | 
					
						
							| 
									
										
										
										
											2021-07-31 14:00:28 -08:00
										 |  |  |   }, | 
					
						
							| 
									
										
										
										
											2022-01-09 07:15:23 +01:00
										 |  |  |   setup(props) { | 
					
						
							|  |  |  |     const { $globals, i18n } = useContext(); | 
					
						
							| 
									
										
										
										
											2022-08-15 23:55:51 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     useMeta({ | 
					
						
							|  |  |  |       title: | 
					
						
							|  |  |  |         props.error.statusCode === 404 | 
					
						
							|  |  |  |           ? (i18n.t("page.404-not-found") as string) | 
					
						
							|  |  |  |           : (i18n.t("page.an-error-occurred") as string), | 
					
						
							|  |  |  |     }); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-09 07:15:23 +01:00
										 |  |  |     const buttons = [ | 
					
						
							|  |  |  |       { icon: $globals.icons.home, to: "/", text: i18n.t("general.home") }, | 
					
						
							|  |  |  |     ]; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-31 14:00:28 -08:00
										 |  |  |     return { | 
					
						
							| 
									
										
										
										
											2022-01-09 07:15:23 +01:00
										 |  |  |       buttons, | 
					
						
							| 
									
										
										
										
											2022-08-15 23:55:51 +02:00
										 |  |  |     }; | 
					
						
							| 
									
										
										
										
											2021-08-23 12:24:38 -08:00
										 |  |  |   }, | 
					
						
							| 
									
										
										
										
											2022-01-09 07:15:23 +01:00
										 |  |  |   // Needed for useMeta
 | 
					
						
							|  |  |  |   head: {}, | 
					
						
							|  |  |  | }); | 
					
						
							| 
									
										
										
										
											2021-07-31 14:00:28 -08:00
										 |  |  | </script> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | <style scoped> | 
					
						
							|  |  |  | h1 { | 
					
						
							|  |  |  |   font-size: 20px; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2021-08-23 12:24:38 -08:00
										 |  |  | p { | 
					
						
							|  |  |  |   padding-bottom: 0 !important; | 
					
						
							|  |  |  |   margin-bottom: 0 !important; | 
					
						
							|  |  |  |   font-size: 200px; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2021-07-31 14:00:28 -08:00
										 |  |  | </style> |