// jamsh 
var ui = UI.UI({
    pages   : 1,
    styles  : {},
    terminal: '',
    title   : 'Test APP'
});

function exit2() {
  process.exit();
}

print(ui)
ui.init();


ui.pages[1]={
  quit    : ui.button({left:1,top:1,content:'QUIT', action:exit2}),
  label1  : ui.label({right:1,top:2, content:'Chat Demo'}),
  chat1   : ui.chat({left:1, top:6, width:40, height:14,  prompt:'> ', label:'My Chat',
                     bot:{color:'red'}, user:{align:'right',color:'blue'}, fg:{color:'black'}}),
  log1    : ui.log({right:1, top:6, width:34, height:14,  multiline:true, wrap:true, scrollable:true, label:'Log'}),
}
Log = function () {
  var line = Array.prototype.slice.call(arguments).map(function (arg) { 
    return inspect(arg) }).join(' ');
  ui.pages[1].log1.add(line);
  ui.pages[1].log1.scrollBottom();
}
ui.pages[1].chat1.on('eval',function (user) {
  Log(user);
  // ui.pages[1].chat1.print(user,{align:'right',color:'red'});
});
ui.pages[1].chat1.on('clicked',function (ev) {
   // Log(ev);
});
ui.pages[1].chat1.on('keypress',function (ch,key) {
  // Log(key);
});
ui.pages[1].chat1.message('Hello! I am sam.');
ui.pages[1].chat1.message('You can ask a lot of stuff.');
ui.pages[1].chat1.message('But firstly I have a question.');
ui.pages[1].chat1.message('You can answer it directly here.');
ui.pages[1].chat1.message('After a question form was andwered or cancles, you can ask questions, too!');

later(1000,function () {
  if (1) ui.pages[1].chat1.ask('Are you morbid?',{
    choices:['yes','no','maybe','sometimes','like my neighbour'],
    timeout:5000,
    layout:'vertical',
    // mutable:true
  },function (result) {
    Log(result);
    if (result && result.length) return 'Thank you!';
  });
  if (0) ui.pages[1].chat1.ask('How old are you?',{
    range:[1,100],
    timeout:500000,
    // mutable:true
  },function (result) {
    Log(result);
    if (result) return 'Thank you again!';
  });
  if (0) ui.pages[1].chat1.ask('Tell me your nightmare!',{
    text:[1,100],
    timeout:5000,
    // mutable:true
  },function (result) {
    Log(result);
    if (result && result.length) return 'Thank you!';
  });
});
ui.screen.key(['escape', 'q', 'C-c'], exit2);

ui.start();
