forked from cory/tildefriends
		
	
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import * as tfrpc from '/tfrpc.js';
 | |
| 
 | |
| tfrpc.register(async function getIdentities() {
 | |
| 	return ssb.getIdentities();
 | |
| });
 | |
| tfrpc.register(async function createID(id) {
 | |
| 	return await ssb.createIdentity();
 | |
| });
 | |
| tfrpc.register(async function getPrivateKey(id) {
 | |
| 	return bip39Words(await ssb.getPrivateKey(id));
 | |
| });
 | |
| tfrpc.register(async function addID(id) {
 | |
| 	return await ssb.addIdentity(bip39Bytes(id));
 | |
| });
 | |
| tfrpc.register(async function deleteID(id) {
 | |
| 	return await ssb.deleteIdentity(id);
 | |
| });
 | |
| tfrpc.register(async function getThemes() {
 | |
| 	// TODO
 | |
| 	return ['solarized', 'gruvbox', 'light'];
 | |
| });
 | |
| tfrpc.register(async function getTheme() {
 | |
| 	// TODO
 | |
| 	return 'solarized';
 | |
| });
 | |
| tfrpc.register(async function setTheme() {
 | |
| 	// TODO
 | |
| 	console.warn('setTheme called - not implemented');
 | |
| 	return null;
 | |
| });
 | |
| tfrpc.register(async function reload() {
 | |
| 	await main();
 | |
| });
 | |
| 
 | |
| async function main() {
 | |
| 	// Get body.html
 | |
| 	const body = utf8Decode(await getFile('body.html'));
 | |
| 
 | |
| 	// Build the document
 | |
| 	const document = `
 | |
| 	<!DOCTYPE html>
 | |
| 	<html>
 | |
| 		<head>
 | |
| 			<link rel="stylesheet" href="/static/tildefriends-v1.css"/>
 | |
| 			<script src="tf-theme-picker.js" type="module"></script>
 | |
| 			<script src="tf-password-form.js" type="module"></script>
 | |
| 			<script src="tf-delete-account-btn.js" type="module"></script>
 | |
| 			<script src="tf-identity-manager.js" type="module"></script>
 | |
| 		</head>
 | |
| 
 | |
| 		<body class="flex-column">
 | |
| 			${body}
 | |
| 		</body>
 | |
| 	</html>`;
 | |
| 
 | |
| 	// Send it to the browser
 | |
| 	app.setDocument(document);
 | |
| }
 | |
| 
 | |
| main();
 |