a new approach for the ui

This commit is contained in:
Danny Coates 2018-10-24 19:07:10 -07:00
parent cc85486414
commit f0cfc19f8c
No known key found for this signature in database
GPG key ID: 4C442633C62E00CB
34 changed files with 2246 additions and 146 deletions

56
app/ui/signupDialog.js Normal file
View file

@ -0,0 +1,56 @@
/* global LIMITS */
const html = require('choo/html');
const { bytes } = require('../utils');
module.exports = function() {
return function(state, emit, close) {
return html`
<div class="flex flex-col p-4">
<p class="p-8">
${state.translate('accountBenefitTitle')}
<ul class="my-2">
<li>${state.translate('accountBenefitLargeFiles', {
size: bytes(LIMITS.MAX_FILE_SIZE)
})}</li>
<li>${state.translate('accountBenefitExpiry')}</li>
<li>${state.translate('accountBenefitSync')}</li>
</ul>
</p>
<form
onsubmit=${submitEmail}
data-no-csrf>
<input
id="email-input"
type="text"
class="border rounded w-full px-2 text-lg text-grey-darker leading-loose"
placeholder=${state.translate('emailEntryPlaceholder')}/>
<input
class="hidden"
id="email-submit"
type="submit"/>
</form>
<label class="border rounded bg-blue text-white leading-loose text-center my-2" for="email-submit">
${state.translate('signInMenuOption')}
</label>
<button
class=""
title="${state.translate('deletePopupCancel')}"
onclick=${close}>${state.translate('deletePopupCancel')}
</button>
</div>`;
function submitEmail(event) {
event.preventDefault();
const el = document.getElementById('email-input');
const email = el.value;
if (email) {
// just check if it's the right shape
const a = email.split('@');
if (a.length === 2 && a.every(s => s.length > 0)) {
return emit('login', email);
}
}
el.value = '';
}
};
};