Files
komp-todo/web/js/kotlin/komp-todo.js
rnentjes 5f7f2d681a Todos
2017-04-02 17:01:29 +02:00

192 lines
8.6 KiB
JavaScript

if (typeof kotlin === 'undefined') {
throw new Error("Error loading module 'komp-todo'. Its dependency 'kotlin' was not found. Please, check whether 'kotlin' is loaded prior to 'komp-todo'.");
}
if (typeof this['kotlinx-html-js'] === 'undefined') {
throw new Error("Error loading module 'komp-todo'. Its dependency 'kotlinx-html-js' was not found. Please, check whether 'kotlinx-html-js' is loaded prior to 'komp-todo'.");
}
if (typeof komp === 'undefined') {
throw new Error("Error loading module 'komp-todo'. Its dependency 'komp' was not found. Please, check whether 'komp' is loaded prior to 'komp-todo'.");
}
this['komp-todo'] = function (_, Kotlin, $module$kotlinx_html_js, $module$komp) {
'use strict';
var h1 = $module$kotlinx_html_js.kotlinx.html.h1_vmej1w$;
var input = $module$kotlinx_html_js.kotlinx.html.input_e1g74z$;
var header = $module$kotlinx_html_js.kotlinx.html.header_8btlf7$;
var InputType = $module$kotlinx_html_js.kotlinx.html.InputType;
var label = $module$kotlinx_html_js.kotlinx.html.label_yd75js$;
var get_classes = $module$kotlinx_html_js.kotlinx.html.get_classes_fxodxh$;
var plus = Kotlin.kotlin.collections.plus_xfiyik$;
var set_classes = $module$kotlinx_html_js.kotlinx.html.set_classes_njy09m$;
var button = $module$kotlinx_html_js.kotlinx.html.button_whohl6$;
var div = $module$kotlinx_html_js.kotlinx.html.div_ri36nr$;
var li = $module$kotlinx_html_js.kotlinx.html.li_yzv5uh$;
var ul = $module$kotlinx_html_js.kotlinx.html.ul_pzlyaf$;
var section = $module$kotlinx_html_js.kotlinx.html.section_ac1jhf$;
var strong = $module$kotlinx_html_js.kotlinx.html.strong_okpg28$;
var span = $module$kotlinx_html_js.kotlinx.html.span_6djfml$;
var a = $module$kotlinx_html_js.kotlinx.html.a_gu26kr$;
var footer = $module$kotlinx_html_js.kotlinx.html.footer_780ap1$;
var section_0 = $module$kotlinx_html_js.kotlinx.html.js.section_ceckl$;
var HtmlComponent = $module$komp.nl.astraeus.komp.HtmlComponent;
var ArrayList_init = Kotlin.kotlin.collections.ArrayList_init_ww73n8$;
var komp_0 = $module$komp.nl.astraeus.komp;
TodoApp.prototype = Object.create(HtmlComponent.prototype);
TodoApp.prototype.constructor = TodoApp;
function Todo(dataId, title, completed) {
this.dataId = dataId;
this.title = title;
this.completed = completed;
}
Todo.$metadata$ = {
kind: Kotlin.Kind.CLASS,
simpleName: 'Todo',
interfaces: []
};
function TodoApp() {
HtmlComponent.call(this);
this.todos = ArrayList_init();
}
function TodoApp$render$lambda$lambda$lambda($receiver) {
$receiver.unaryPlus_pdl1vz$('todos');
}
function TodoApp$render$lambda$lambda$lambda_0($receiver) {
$receiver.placeholder = 'What needs to be done?';
$receiver.autoFocus = true;
}
function TodoApp$render$lambda$lambda($receiver) {
h1($receiver, void 0, TodoApp$render$lambda$lambda$lambda);
input($receiver, void 0, void 0, void 0, void 0, 'new-todo', TodoApp$render$lambda$lambda$lambda_0);
}
function TodoApp$render$lambda$lambda$lambda_1($receiver) {
$receiver.type = InputType.checkBox;
}
function TodoApp$render$lambda$lambda$lambda_2($receiver) {
$receiver.for_ = 'toggle-all';
$receiver.unaryPlus_pdl1vz$('Mark all as complete');
}
function TodoApp$render$lambda$lambda$lambda$lambda$lambda$lambda(closure$todo) {
return function ($receiver) {
$receiver.type = InputType.checkBox;
$receiver.checked = closure$todo.completed;
};
}
function TodoApp$render$lambda$lambda$lambda$lambda$lambda$lambda_0(closure$todo) {
return function ($receiver) {
$receiver.unaryPlus_pdl1vz$(closure$todo.title);
};
}
function TodoApp$render$lambda$lambda$lambda$lambda$lambda(closure$todo) {
return function ($receiver) {
input($receiver, void 0, void 0, void 0, void 0, 'toggle', TodoApp$render$lambda$lambda$lambda$lambda$lambda$lambda(closure$todo));
label($receiver, 'todo-content', TodoApp$render$lambda$lambda$lambda$lambda$lambda$lambda_0(closure$todo));
button($receiver, void 0, void 0, void 0, 'destroy');
};
}
function TodoApp$render$lambda$lambda$lambda$lambda$lambda_0(closure$todo) {
return function ($receiver) {
$receiver.value = closure$todo.title;
};
}
function TodoApp$render$lambda$lambda$lambda$lambda(closure$todo) {
return function ($receiver) {
if (closure$todo.completed) {
set_classes($receiver, plus(get_classes($receiver), 'completed'));
}
var $receiver_0 = $receiver.attributes;
var value = closure$todo.dataId;
$receiver_0.put_xwzc9p$('data-id', value);
div($receiver, 'view', TodoApp$render$lambda$lambda$lambda$lambda$lambda(closure$todo));
input($receiver, void 0, void 0, void 0, void 0, 'edit', TodoApp$render$lambda$lambda$lambda$lambda$lambda_0(closure$todo));
};
}
function TodoApp$render$lambda$lambda$lambda_3(this$TodoApp) {
return function ($receiver) {
var tmp$;
tmp$ = this$TodoApp.todos.iterator();
while (tmp$.hasNext()) {
var todo = tmp$.next();
li($receiver, void 0, TodoApp$render$lambda$lambda$lambda$lambda(todo));
}
};
}
function TodoApp$render$lambda$lambda_0(this$TodoApp) {
return function ($receiver) {
input($receiver, void 0, void 0, void 0, void 0, 'toggle-all', TodoApp$render$lambda$lambda$lambda_1);
label($receiver, void 0, TodoApp$render$lambda$lambda$lambda_2);
ul($receiver, 'todo-list', TodoApp$render$lambda$lambda$lambda_3(this$TodoApp));
};
}
function TodoApp$render$lambda$lambda$lambda$lambda_0($receiver) {
$receiver.unaryPlus_pdl1vz$('0');
}
function TodoApp$render$lambda$lambda$lambda_4($receiver) {
strong($receiver, void 0, TodoApp$render$lambda$lambda$lambda$lambda_0);
$receiver.unaryPlus_pdl1vz$(' item left');
}
function TodoApp$render$lambda$lambda$lambda$lambda$lambda_1($receiver) {
$receiver.href = '#';
$receiver.unaryPlus_pdl1vz$('All');
}
function TodoApp$render$lambda$lambda$lambda$lambda_1($receiver) {
a($receiver, void 0, void 0, 'selected', TodoApp$render$lambda$lambda$lambda$lambda$lambda_1);
}
function TodoApp$render$lambda$lambda$lambda$lambda$lambda_2($receiver) {
$receiver.href = '#';
$receiver.unaryPlus_pdl1vz$('Active');
}
function TodoApp$render$lambda$lambda$lambda$lambda_2($receiver) {
a($receiver, void 0, void 0, void 0, TodoApp$render$lambda$lambda$lambda$lambda$lambda_2);
}
function TodoApp$render$lambda$lambda$lambda$lambda$lambda_3($receiver) {
$receiver.href = '#';
$receiver.unaryPlus_pdl1vz$('Completed');
}
function TodoApp$render$lambda$lambda$lambda$lambda_3($receiver) {
a($receiver, void 0, void 0, 'selected', TodoApp$render$lambda$lambda$lambda$lambda$lambda_3);
}
function TodoApp$render$lambda$lambda$lambda_5($receiver) {
li($receiver, void 0, TodoApp$render$lambda$lambda$lambda$lambda_1);
li($receiver, void 0, TodoApp$render$lambda$lambda$lambda$lambda_2);
li($receiver, void 0, TodoApp$render$lambda$lambda$lambda$lambda_3);
}
function TodoApp$render$lambda$lambda$lambda_6($receiver) {
$receiver.unaryPlus_pdl1vz$('Clear completed');
}
function TodoApp$render$lambda$lambda_1($receiver) {
span($receiver, 'todo-count', TodoApp$render$lambda$lambda$lambda_4);
ul($receiver, 'filters', TodoApp$render$lambda$lambda$lambda_5);
button($receiver, void 0, void 0, void 0, 'clear-completed', TodoApp$render$lambda$lambda$lambda_6);
}
function TodoApp$render$lambda(this$TodoApp) {
return function ($receiver) {
header($receiver, 'header', TodoApp$render$lambda$lambda);
section($receiver, 'main', TodoApp$render$lambda$lambda_0(this$TodoApp));
footer($receiver, 'footer', TodoApp$render$lambda$lambda_1);
};
}
TodoApp.prototype.render_q0cphf$ = function (consumer) {
return section_0(consumer, 'todoapp', TodoApp$render$lambda(this));
};
TodoApp.$metadata$ = {
kind: Kotlin.Kind.CLASS,
simpleName: 'TodoApp',
interfaces: [HtmlComponent]
};
function main(args) {
var tmp$;
komp_0.Komp.create_og2ns8$((tmp$ = document.body) != null ? tmp$ : Kotlin.throwNPE(), new TodoApp(), true);
}
var package$nl = _.nl || (_.nl = {});
var package$astraeus = package$nl.astraeus || (package$nl.astraeus = {});
var package$komp = package$astraeus.komp || (package$astraeus.komp = {});
var package$todo = package$komp.todo || (package$komp.todo = {});
package$todo.Todo = Todo;
package$todo.TodoApp = TodoApp;
package$todo.main_kand9s$ = main;
Kotlin.defineModule('komp-todo', _);
main([]);
return _;
}(typeof this['komp-todo'] === 'undefined' ? {} : this['komp-todo'], kotlin, this['kotlinx-html-js'], komp);
//@ sourceMappingURL=komp-todo.js.map