add icons
| 
		 Before Width: | Height: | Size: 721 B After Width: | Height: | Size: 749 B  | 
| 
						 | 
				
			
			@ -32,8 +32,51 @@ a:visited {
 | 
			
		|||
	color: royalblue;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
input {
 | 
			
		||||
	border: 1px solid #dadada;
 | 
			
		||||
	padding: 5px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
label {
 | 
			
		||||
	font-size: 1.1em;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
input {
 | 
			
		||||
	font-size: 1.1em;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
button {
 | 
			
		||||
	font-size: 1.2em;
 | 
			
		||||
	border: 1px solid #333;
 | 
			
		||||
	background: #ededed;
 | 
			
		||||
	border-radius: 2px;
 | 
			
		||||
	padding: 10px 15px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
button:hover {
 | 
			
		||||
	background: #ddd;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
button:active {
 | 
			
		||||
	background: #fafafa;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
button.primary {
 | 
			
		||||
	border: 1px solid #1e3066;
 | 
			
		||||
	background: #668cff;
 | 
			
		||||
	color: white;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
button.primary:hover {
 | 
			
		||||
	background: #446add;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
button.primary:active {
 | 
			
		||||
	background: #99b3ff;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@media (max-width: 767px) {
 | 
			
		||||
	p {
 | 
			
		||||
	p, label, input {
 | 
			
		||||
		font-size: 1.3em;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 80 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								assets/icon-192.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 3.2 KiB  | 
| 
						 | 
				
			
			@ -7,14 +7,9 @@
 | 
			
		|||
	"start_url": "/",
 | 
			
		||||
	"icons": [
 | 
			
		||||
		{
 | 
			
		||||
			"src": "svelte-logo-192.png",
 | 
			
		||||
			"src": "icon-192.png",
 | 
			
		||||
			"sizes": "192x192",
 | 
			
		||||
			"type": "image/png"
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			"src": "svelte-logo-512.png",
 | 
			
		||||
			"sizes": "512x512",
 | 
			
		||||
			"type": "image/png"
 | 
			
		||||
		}
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										1
									
								
								assets/sailboat.svg
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
<svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewBox="0 0 100 100" x="0px" y="0px"><title>Artboard 1</title><path d="M92.12,59.93H59.87V8.23C70.4,14.9,87.34,30,92.12,59.93ZM31,26.9A122.4,122.4,0,0,1,9.39,60.35H31ZM37.76,99H62.24A30.67,30.67,0,0,0,92.91,68.33H50.52V6.27A5.27,5.27,0,0,0,40,6.27V68.33H7.09A30.67,30.67,0,0,0,37.76,99Z" fill="#ffffff"/></svg>
 | 
			
		||||
| 
		 After Width: | Height: | Size: 372 B  | 
| 
		 Before Width: | Height: | Size: 3.9 KiB  | 
| 
		 Before Width: | Height: | Size: 2 KiB  | 
| 
						 | 
				
			
			@ -7,7 +7,7 @@
 | 
			
		|||
 | 
			
		||||
  <p>Pinafore is a web client for <a href="https://joinmastodon.org">Mastodon</a>, optimized for performance and simplicity.</p>
 | 
			
		||||
 | 
			
		||||
	<p>To get started, <a href="/settings/instance-wizard">log in to an instance</a>.</p>
 | 
			
		||||
	<p>To get started, <a href="/settings/add-instance">log in to an instance</a>.</p>
 | 
			
		||||
 | 
			
		||||
  <p>Don't have an instance? <a href="https://joinmastodon.org">Join Mastodon!</a></p>
 | 
			
		||||
</Layout>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										52
									
								
								routes/settings/add-instance.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,52 @@
 | 
			
		|||
<:Head>
 | 
			
		||||
  <title>Instance Wizard</title>
 | 
			
		||||
</:Head>
 | 
			
		||||
 | 
			
		||||
<Layout page='settings'>
 | 
			
		||||
  <h1>Add an instance</h1>
 | 
			
		||||
 | 
			
		||||
  <p>Log in to your instance to use Pinafore.</p>
 | 
			
		||||
 | 
			
		||||
  <form on:submit='handleSubmit(event)'>
 | 
			
		||||
    <label for="instanceInput">Instance name:</label>
 | 
			
		||||
    <input type="text" id="instanceInput" bind:value='instanceName' placeholder=''>
 | 
			
		||||
    <button class="primary" type="submit" id="submitButton">Add instance</button>
 | 
			
		||||
  </form>
 | 
			
		||||
 | 
			
		||||
  <p>Don't have an instance? <a href="https://joinmastodon.org">Join Mastodon!</a></p>
 | 
			
		||||
</Layout>
 | 
			
		||||
<style>
 | 
			
		||||
  input {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  form {
 | 
			
		||||
    background: #fafafa;
 | 
			
		||||
    padding: 5px 10px 15px;
 | 
			
		||||
    border: 1px solid #ccc;
 | 
			
		||||
    margin: 0 auto;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  form label, form input, form button {
 | 
			
		||||
    display: block;
 | 
			
		||||
    margin: 20px 5px;
 | 
			
		||||
  }
 | 
			
		||||
</style>
 | 
			
		||||
<script>
 | 
			
		||||
  import Layout from '../_components/Layout.html';
 | 
			
		||||
 | 
			
		||||
  export default {
 | 
			
		||||
    components: {
 | 
			
		||||
      Layout
 | 
			
		||||
    },
 | 
			
		||||
    data: () => ({
 | 
			
		||||
      instanceName: ''
 | 
			
		||||
    }),
 | 
			
		||||
    methods: {
 | 
			
		||||
      handleSubmit(event) {
 | 
			
		||||
        event.preventDefault()
 | 
			
		||||
        let instanceName = this.get('instanceName')
 | 
			
		||||
        alert(instanceName)
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
</script>
 | 
			
		||||
| 
						 | 
				
			
			@ -1,19 +0,0 @@
 | 
			
		|||
<:Head>
 | 
			
		||||
  <title>Instance Wizard</title>
 | 
			
		||||
</:Head>
 | 
			
		||||
 | 
			
		||||
<Layout page='settings'>
 | 
			
		||||
  <h1>Instance Wizard</h1>
 | 
			
		||||
 | 
			
		||||
  <p>Add an instance!</p>
 | 
			
		||||
</Layout>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
  import Layout from '../_components/Layout.html';
 | 
			
		||||
 | 
			
		||||
  export default {
 | 
			
		||||
    components: {
 | 
			
		||||
      Layout
 | 
			
		||||
    }
 | 
			
		||||
  };
 | 
			
		||||
</script>
 | 
			
		||||
| 
						 | 
				
			
			@ -10,7 +10,7 @@
 | 
			
		|||
	<link rel='icon' type='image/png' href='/favicon.png'>
 | 
			
		||||
 | 
			
		||||
	<script>
 | 
			
		||||
		if ('serviceWorker' in navigator) {
 | 
			
		||||
		if (!location.origin.match('localhost') && 'serviceWorker' in navigator) {
 | 
			
		||||
			navigator.serviceWorker.register('/service-worker.js');
 | 
			
		||||
		}
 | 
			
		||||
	</script>
 | 
			
		||||
| 
						 | 
				
			
			@ -33,5 +33,6 @@
 | 
			
		|||
	     and anything else it needs to hydrate the app and
 | 
			
		||||
	     initialise the router -->
 | 
			
		||||
	<script src='%sapper.main%'></script>
 | 
			
		||||
<!-- Icon thanks to sailboat by Gregor Cresnar from the Noun Project -->
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||