| 
									
										
										
										
											2018-02-07 22:49:50 -08:00
										 |  |  | <li class="page-list-item"> | 
					
						
							|  |  |  |   <a :href> | 
					
						
							| 
									
										
										
										
											2018-03-16 08:42:10 -07:00
										 |  |  |     <svg class="page-list-item-svg"> | 
					
						
							| 
									
										
										
										
											2018-02-07 22:49:50 -08:00
										 |  |  |       <use xlink:href="{{icon}}" /> | 
					
						
							|  |  |  |     </svg> | 
					
						
							|  |  |  |     <span aria-label="{{label}} {{$pinnedPage === href ? 'Pinned page' : 'Unpinned page'}}"> | 
					
						
							|  |  |  |       {{label}} | 
					
						
							|  |  |  |     </span> | 
					
						
							| 
									
										
										
										
											2018-02-10 16:03:28 -08:00
										 |  |  |     {{#if pinnable}} | 
					
						
							|  |  |  |       <IconButton pressable="true" | 
					
						
							|  |  |  |                   pressed="{{$pinnedPage === href}}" | 
					
						
							|  |  |  |                   label="Pin page" | 
					
						
							|  |  |  |                   href="#fa-thumb-tack" | 
					
						
							|  |  |  |                   on:click="onPinClick(event)" /> | 
					
						
							|  |  |  |     {{/if}} | 
					
						
							| 
									
										
										
										
											2018-02-07 22:49:50 -08:00
										 |  |  |   </a> | 
					
						
							|  |  |  | </li> | 
					
						
							|  |  |  | <style> | 
					
						
							|  |  |  |   .page-list-item { | 
					
						
							|  |  |  |     border: 1px solid var(--settings-list-item-border); | 
					
						
							|  |  |  |     font-size: 1.3em; | 
					
						
							|  |  |  |     display: flex; | 
					
						
							|  |  |  |     flex-direction: column; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   .page-list-item a { | 
					
						
							|  |  |  |     padding: 20px 40px; | 
					
						
							|  |  |  |     background: var(--settings-list-item-bg); | 
					
						
							|  |  |  |     display: grid; | 
					
						
							|  |  |  |     grid-template-columns: min-content 1fr min-content; | 
					
						
							|  |  |  |     align-items: center; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   .page-list-item a, .page-list-item a:visited { | 
					
						
							|  |  |  |     color: var(--body-text-color); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   .page-list-item a:hover { | 
					
						
							|  |  |  |     text-decoration: none; | 
					
						
							|  |  |  |     background: var(--settings-list-item-bg-hover); | 
					
						
							|  |  |  |     color: var(--body-text-color); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   .page-list-item a:active { | 
					
						
							|  |  |  |     background: var(--settings-list-item-bg-active); | 
					
						
							|  |  |  |   } | 
					
						
							| 
									
										
										
										
											2018-03-16 08:42:10 -07:00
										 |  |  |   .page-list-item-svg { | 
					
						
							| 
									
										
										
										
											2018-02-07 22:49:50 -08:00
										 |  |  |     width: 24px; | 
					
						
							|  |  |  |     height: 24px; | 
					
						
							|  |  |  |     display: inline-block; | 
					
						
							|  |  |  |     margin-right: 20px; | 
					
						
							|  |  |  |     fill: var(--body-text-color); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   .page-list-item span { | 
					
						
							|  |  |  |     white-space: nowrap; | 
					
						
							|  |  |  |     overflow: hidden; | 
					
						
							|  |  |  |     text-overflow: ellipsis; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   @media (max-width: 767px) { | 
					
						
							|  |  |  |     .page-list-item a { | 
					
						
							|  |  |  |       padding: 20px 10px; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2018-03-16 08:42:10 -07:00
										 |  |  |     .page-list-item-svg { | 
					
						
							| 
									
										
										
										
											2018-02-07 22:49:50 -08:00
										 |  |  |       margin-right: 10px; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | </style> | 
					
						
							|  |  |  | <script> | 
					
						
							|  |  |  |   import { store } from '../../_store/store' | 
					
						
							|  |  |  |   import IconButton from '../../_components/IconButton' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   export default { | 
					
						
							|  |  |  |     store: () => store, | 
					
						
							|  |  |  |     components: { | 
					
						
							|  |  |  |       IconButton | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     methods: { | 
					
						
							|  |  |  |       onPinClick(e) { | 
					
						
							|  |  |  |         e.preventDefault() | 
					
						
							|  |  |  |         let currentInstance = this.store.get('currentInstance') | 
					
						
							|  |  |  |         let pinnedPages = this.store.get('pinnedPages') | 
					
						
							|  |  |  |         let href = this.get('href') | 
					
						
							|  |  |  |         pinnedPages[currentInstance] = href | 
					
						
							|  |  |  |         this.store.set({pinnedPages: pinnedPages}) | 
					
						
							| 
									
										
										
										
											2018-02-08 09:15:25 -08:00
										 |  |  |         this.store.save() | 
					
						
							| 
									
										
										
										
											2018-02-07 22:49:50 -08:00
										 |  |  |       } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | </script> |