2024-03-21 14:25:07 -04:00
|
|
|
import * as tfrpc from '/tfrpc.js';
|
|
|
|
|
|
|
|
tfrpc.register(async function getIdentities() {
|
|
|
|
return ssb.getIdentities();
|
|
|
|
});
|
|
|
|
tfrpc.register(async function getPrivateKey(id) {
|
|
|
|
return bip39Words(await ssb.getPrivateKey(id));
|
|
|
|
});
|
|
|
|
tfrpc.register(async function getThemes() {
|
|
|
|
// TODO
|
|
|
|
return ['solarized', 'gruvbox', 'light'];
|
|
|
|
});
|
|
|
|
tfrpc.register(async function setTheme() {
|
|
|
|
// TODO
|
|
|
|
console.warn("setTheme called - not implemented")
|
|
|
|
return null;
|
|
|
|
});
|
|
|
|
|
2024-02-22 17:18:12 -05:00
|
|
|
async function main() {
|
|
|
|
// Get body.html
|
2024-03-21 14:25:07 -04:00
|
|
|
const body = utf8Decode(await getFile('body.html'));
|
2024-02-22 17:18:12 -05:00
|
|
|
|
|
|
|
// Build the document
|
|
|
|
const document = `
|
|
|
|
<!DOCTYPE html>
|
|
|
|
<html>
|
|
|
|
<head>
|
2024-03-21 14:25:07 -04:00
|
|
|
<link rel="stylesheet" href="/static/tildefriends-latest.css"/>
|
2024-02-22 17:18:12 -05:00
|
|
|
<link rel="stylesheet" href="style.css"/>
|
2024-03-21 14:25:07 -04:00
|
|
|
<script src="script.js" type="module"></script>
|
|
|
|
<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>
|
2024-02-22 17:18:12 -05:00
|
|
|
</head>
|
|
|
|
|
2024-03-21 14:25:07 -04:00
|
|
|
<body class="flex-column">
|
2024-02-22 17:18:12 -05:00
|
|
|
${body}
|
|
|
|
</body>
|
|
|
|
</html>`;
|
|
|
|
|
|
|
|
// Send it to the browser
|
|
|
|
app.setDocument(document);
|
|
|
|
}
|
|
|
|
|
|
|
|
main();
|