//create a tab that focuses the current page. //like radio buttons. function to(human, machine) { return a(h('span', human, { className: o.transform(page, function (e) { return (e == human || e == machine) ? 'focus' : 'blur' }) }), function () { page(machine || human) }) }
window.getDom = function aaa() { var o = require('observable') var h = require('hyperscript') var yourName return h('div', h('h3', 'hello, what is your name?', yourName = h('input', { placeholder: 'enter name' }) ), h('h2', o.transform(o.input(yourName), function(v) { return v ? 'Happy Birthday ' + v.toUpperCase() + ' !!!' : '' }), { style: { 'font-family': 'Comic Sans MS' } }) ) }
function transform(signal, transformation) { return _transform(signal, transformation, readonly) }
var observe = require('observable'); var obs = observe.input(document.querySelector('input')); var h1 = observe.input(document.querySelector('h1'), 'textContent') obs(observe.transform(h1, function (v) { return v.toUpperCase() }));
function signUp () { var un = h('input#username', {placeholder: 'username'}) var em = h('input#email', {placeholder: 'email'}) var p1 = h('input#password1', {type:'password', placeholder: 'password'}) var p2 = h('input#password2', {type:'password', placeholder: 'confirm'}) var _p1 = o.input(p1), _p2 = o.input(p2) var message = o(); message('') var signup = o() var match = o.compute([_p1, _p2], function (p1, p2) { return (p1 === p2) && p1 ? true : false }) var su = h('input#signup', {type: 'checkbox'}) var _su = o.input(su, 'checked', 'change') return h('div#login', show(signedIn, h('div#signout', h('a', '@', username, {href: o.transform(username, function (e) { return '#!/'+e}) }), h('button', 'sign out', {onclick: function () { username(null); signedIn(false) db.deauth(function (err, data) { console.log('DEAUTH', err, data)}) }}) ), h('div#signin', h('div', div(un), show(signup, div(em)), p1, show(signup, div(p2))), show(signup, h('div', o.boolean(match, 'okay!', 'must match.'))), h('button', o.boolean(signup, 'sign-up', 'sign-in'), {onclick: function () { if(!db) return message('not connected...') if(!(signup() ? match() : true)) return message('password does not match') db.auth({ name: un.value, password: _p1(), email: em.value, signup: signup() }, function (err, data) { console.log(err, data) if(err) { message(err.message) signedIn(false) page('home') _p1(''); _p2('') } else { message('signed in!') signedIn(true) username(data.name) page('home') odom.hash('!/'+username()) _p1(''); _p2('') } }) }}), toggle(signup, 'sign in?', 'sign up?'), div(message) ) ) ) }