| 
									
										
										
										
											2018-01-20 12:35:38 -08:00
										 |  |  | <nav class="settings-nav"> | 
					
						
							| 
									
										
										
										
											2018-01-08 17:44:29 -08:00
										 |  |  |   <ul> | 
					
						
							| 
									
										
										
										
											2018-05-01 17:05:36 -07:00
										 |  |  |     {#each navItems as navItem} | 
					
						
							| 
									
										
										
										
											2018-01-08 17:44:29 -08:00
										 |  |  |     <li> | 
					
						
							| 
									
										
										
										
											2018-05-01 17:05:36 -07:00
										 |  |  |       <SettingsNavItem {page} name={navItem.name} href={navItem.href} label={navItem.label} /> | 
					
						
							| 
									
										
										
										
											2018-01-08 17:44:29 -08:00
										 |  |  |     </li> | 
					
						
							| 
									
										
										
										
											2018-05-01 17:05:36 -07:00
										 |  |  |     {/each} | 
					
						
							| 
									
										
										
										
											2018-01-13 12:12:17 -08:00
										 |  |  |     <li> | 
					
						
							| 
									
										
										
										
											2018-05-01 17:05:36 -07:00
										 |  |  |       <SettingsNavItem {page} name={page} href="/{page}" {label} /> | 
					
						
							| 
									
										
										
										
											2018-01-13 12:12:17 -08:00
										 |  |  |     </li> | 
					
						
							| 
									
										
										
										
											2018-01-08 17:44:29 -08:00
										 |  |  |   </ul> | 
					
						
							|  |  |  | </nav> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | <style> | 
					
						
							| 
									
										
										
										
											2018-01-20 12:35:38 -08:00
										 |  |  |   .settings-nav ul { | 
					
						
							| 
									
										
										
										
											2018-01-27 18:25:49 -08:00
										 |  |  |     margin: 20px 20px; | 
					
						
							| 
									
										
										
										
											2018-01-08 17:44:29 -08:00
										 |  |  |     padding: 0; | 
					
						
							|  |  |  |     list-style: none; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-20 12:35:38 -08:00
										 |  |  |   .settings-nav li { | 
					
						
							| 
									
										
										
										
											2018-01-14 11:22:57 -08:00
										 |  |  |     margin: 5px 0; | 
					
						
							| 
									
										
										
										
											2018-01-13 10:53:25 -08:00
										 |  |  |     font-size: 1em; | 
					
						
							| 
									
										
										
										
											2018-01-14 11:22:57 -08:00
										 |  |  |     display: inline-block; | 
					
						
							| 
									
										
										
										
											2018-01-08 17:44:29 -08:00
										 |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-20 12:35:38 -08:00
										 |  |  |   .settings-nav li::after { | 
					
						
							| 
									
										
										
										
											2018-01-13 10:53:25 -08:00
										 |  |  |     content: '>'; | 
					
						
							|  |  |  |     margin: 0 15px; | 
					
						
							|  |  |  |     color: var(--anchor-text); | 
					
						
							| 
									
										
										
										
											2018-01-08 17:44:29 -08:00
										 |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-20 12:35:38 -08:00
										 |  |  |   .settings-nav li:last-child::after { | 
					
						
							| 
									
										
										
										
											2018-01-13 10:53:25 -08:00
										 |  |  |     content: ''; | 
					
						
							|  |  |  |     margin-left: 0; | 
					
						
							|  |  |  |     font-size: 1em; | 
					
						
							| 
									
										
										
										
											2018-01-08 17:44:29 -08:00
										 |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-13 10:53:25 -08:00
										 |  |  | </style> | 
					
						
							|  |  |  | <script> | 
					
						
							|  |  |  |   import SettingsNavItem from './SettingsNavItem.html' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   const NAV_ITEMS = { | 
					
						
							| 
									
										
										
										
											2018-01-13 12:12:17 -08:00
										 |  |  |     'settings': 'Settings', | 
					
						
							|  |  |  |     'settings/about': 'About Pinafore', | 
					
						
							| 
									
										
										
										
											2018-01-31 18:20:30 -08:00
										 |  |  |     'settings/general': 'General', | 
					
						
							| 
									
										
										
										
											2018-01-13 12:12:17 -08:00
										 |  |  |     'settings/instances': 'Instances', | 
					
						
							| 
									
										
										
										
											2018-04-03 18:01:22 -07:00
										 |  |  |     'settings/instances/add': 'Add instance' | 
					
						
							| 
									
										
										
										
											2018-01-13 10:53:25 -08:00
										 |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   export default { | 
					
						
							|  |  |  |     components: { | 
					
						
							|  |  |  |       SettingsNavItem | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     computed: { | 
					
						
							| 
									
										
										
										
											2018-05-01 17:05:36 -07:00
										 |  |  |       navItems: ({ page }) => { | 
					
						
							| 
									
										
										
										
											2018-01-13 12:12:17 -08:00
										 |  |  |         let res = [] | 
					
						
							|  |  |  |         let breadcrumbs = page.split('/') | 
					
						
							|  |  |  |         let path = '' | 
					
						
							|  |  |  |         for (let i = 0; i < breadcrumbs.length - 1; i++) { | 
					
						
							|  |  |  |           let currentPage = breadcrumbs[i] | 
					
						
							|  |  |  |           path += currentPage | 
					
						
							|  |  |  |           res.push({ | 
					
						
							|  |  |  |             label: NAV_ITEMS[path], | 
					
						
							|  |  |  |             href: `/${path}`, | 
					
						
							|  |  |  |             name: path | 
					
						
							|  |  |  |           }) | 
					
						
							|  |  |  |           path += '/' | 
					
						
							| 
									
										
										
										
											2018-01-13 10:53:25 -08:00
										 |  |  |         } | 
					
						
							|  |  |  |         return res | 
					
						
							|  |  |  |       } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | </script> |