Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.52 KB | None | 0 0
  1. // Generated by LiveScript 1.5.0
  2. (function(){
  3. var observer, observable, render, react, btn, input, Main;
  4. observer = require('mobx-react').observer;
  5. observable = require('mobx').observable;
  6. render = require('react-dom').render;
  7. react = require('react');
  8. btn = function(arg$){
  9. var click, text;
  10. click = arg$.click, text = arg$.text;
  11. return react.createElement('a', {
  12. target: 'blank',
  13. onClick: click,
  14. className: 'btn'
  15. }, text);
  16. };
  17. input = function(arg$){
  18. var store, handleEnterClick;
  19. store = arg$.store;
  20. handleEnterClick = function(event){
  21. if (event.keyCode !== 13) {
  22. return;
  23. }
  24. store.todos.push({
  25. text: event.target.value
  26. });
  27. return event.target.value = '';
  28. };
  29. return react.createElement('input', {
  30. onKeyDown: handleEnterClick,
  31. className: 'input'
  32. });
  33. };
  34. Main = observer(function(arg$){
  35. var store, remove, children, todo;
  36. store = arg$.store;
  37. remove = curry$(function(todo, _){
  38. var index;
  39. index = store.todos.indexOf(todo);
  40. if (index < 0) {
  41. return;
  42. }
  43. return store.todos.splice(1, index);
  44. });
  45. return react.createElement('div', {
  46. className: 'root root1662774725'
  47. }, children = [
  48. react.createElement('h3', {}, 'Tasks'), (function(){
  49. var i$, ref$, len$, results$ = [];
  50. for (i$ = 0, len$ = (ref$ = store.todos).length; i$ < len$; ++i$) {
  51. todo = ref$[i$];
  52. results$.push(react.createElement('div', {}, children = [
  53. react.createElement('span', {}, todo.text), react.createElement('span', {}, children = btn({
  54. text: 'Remove',
  55. click: remove(todo)
  56. }))
  57. ]));
  58. }
  59. return results$;
  60. }()), input({
  61. store: store
  62. }), react.createElement('hr', {})
  63. ]);
  64. });
  65. window.onload = function(){
  66. var store;
  67. store = observable({
  68. todos: [{
  69. text: 'Do dishes'
  70. }]
  71. });
  72. return render(react.createElement(Main, {
  73. store: store
  74. }), document.body.appendChild(document.createElement('app')));
  75. };
  76. function curry$(f, bound){
  77. var context,
  78. _curry = function(args) {
  79. return f.length > 1 ? function(){
  80. var params = args ? args.concat() : [];
  81. context = bound ? context || this : this;
  82. return params.push.apply(params, arguments) <
  83. f.length && arguments.length ?
  84. _curry.call(context, params) : f.apply(context, params);
  85. } : f;
  86. };
  87. return _curry();
  88. }
  89. }).call(this);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement