Select Git revision

Jake Read authored
button.js 854 B
// boilerplate atkapi header
const InOut = require('../../lib/jsunit.js')
let Input = InOut.Input
let Output = InOut.Output
let State = InOut.State
let Button = InOut.Button
// a constructor, a fn, a javascript mess
function uiButton() {
var button = {
// descriptions are used in UI
description: {
name: 'Button!',
alt: 'for clicking'
}
}
button.state = State()
// alias !
var state = button.state
state.button = Button('WHAM')
state.onChange('button', onButtonPress)
button.inputs = {
thru: Input('any', onButtonPress) // makes anything into '1' event
}
button.outputs = {
whammy: Output('number')
}
function onButtonPress(evt){
button.outputs.whammy.emit(1)
}
return button
}
// exports
module.exports = uiButton