This commit is contained in:
Tony Garnock-Jones 2017-09-16 20:59:49 +01:00
parent 9053fb8382
commit 91e136dbfd
14 changed files with 711 additions and 493 deletions

978
dist/syndicate.js vendored

File diff suppressed because one or more lines are too long

38
dist/syndicate.min.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,7 @@
all: index.expanded.js worker.expanded.js
%.expanded.js: %.js
../../bin/syndicatec $< > $@ || (rm -f $@; false)
clean:
rm -f *.expanded.js

View File

@ -0,0 +1,26 @@
"use strict";
document.addEventListener('DOMContentLoaded', function () {
var G = new Syndicate.Ground(function () {
Syndicate.UI.spawnUIDriver();
Syndicate.Actor.spawnActor(function() { Syndicate.Actor.Facet.build(function () { {
var ui = new Syndicate.UI.Anchor();
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(Syndicate.observe('bump_count'), 0); }), (function() { var _ = Syndicate.__; return { assertion: Syndicate.observe('bump_count'), metalevel: 0 }; }), (function() {
var _cachedAssertion1505589933589_0 = (function() { var _ = Syndicate.__; return Syndicate.observe('bump_count'); }).call(this);
{ Syndicate.Actor.Facet.build(function () { { // wait for the worker to boot and start listening
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(ui.html('#clicker-holder',
'<button><span style="font-style: italic">Click me!</span></button>'), 0); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589933589_0, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589933589_0, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "message", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(Syndicate.UI.globalEvent('#clicker-holder > button', 'click', _), 0); }), (function() { var _ = Syndicate.__; return { assertion: Syndicate.UI.globalEvent('#clicker-holder > button', 'click', _), metalevel: 0 }; }), (function() {
Syndicate.Dataspace.send('bump_count');
}));
} }); });
Syndicate.Dataspace.spawn(new Syndicate.Worker('worker.expanded.js'));
}).startStepping();
G.dataspace.setOnStateChange(function (mux, patch) {
document.getElementById('spy-holder').innerText = Syndicate.prettyTrie(mux.routingTable);
});
});

View File

@ -0,0 +1,15 @@
<!doctype html>
<html>
<head>
<title>Syndicate: DOM WebWorker Example</title>
<meta charset="utf-8">
<script src="../../dist/syndicate.js"></script>
<script src="index.expanded.js"></script>
</head>
<body>
<h1>DOM WebWorker example</h1>
<div id="counter-holder"></div>
<div id="clicker-holder"></div>
<pre id="spy-holder"></pre>
</body>
</html>

View File

@ -0,0 +1,22 @@
document.addEventListener('DOMContentLoaded', function () {
ground dataspace G {
Syndicate.UI.spawnUIDriver();
spawn {
var ui = new Syndicate.UI.Anchor();
during Syndicate.observe('bump_count') { // wait for the worker to boot and start listening
assert ui.html('#clicker-holder',
'<button><span style="font-style: italic">Click me!</span></button>');
}
on message Syndicate.UI.globalEvent('#clicker-holder > button', 'click', _) {
:: 'bump_count';
}
}
Syndicate.Dataspace.spawn(new Syndicate.Worker('worker.expanded.js'));
}
G.dataspace.setOnStateChange(function (mux, patch) {
document.getElementById('spy-holder').innerText = Syndicate.prettyTrie(mux.routingTable);
});
});

View File

@ -0,0 +1,17 @@
"use strict";
importScripts("../../dist/syndicate.js");
var G = new Syndicate.WorkerGround(function () {
Syndicate.Actor.spawnActor(function() { Syndicate.Actor.Facet.build(function () { {
var ui = new Syndicate.UI.Anchor();
Syndicate.Actor.declareField(this, "counter", 0);
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(ui.html('#counter-holder', '<div><p>The current count is: '+this.counter+'</p></div>'), 1); }));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "message", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub('bump_count', 1); }), (function() { var _ = Syndicate.__; return { assertion: 'bump_count', metalevel: 1 }; }), (function() {
this.counter++;
}));
} }); });
});
G.startStepping();

View File

@ -0,0 +1,19 @@
importScripts("../../dist/syndicate.js");
var G = new Syndicate.WorkerGround(function () {
spawn {
var ui = new Syndicate.UI.Anchor();
field this.counter = 0;
assert ui.html('#counter-holder', '<div><p>The current count is: '+this.counter+'</p></div>')
metalevel 1;
on message 'bump_count'
metalevel 1
{
this.counter++;
}
}
});
G.startStepping();

View File

@ -16,7 +16,7 @@
<div class="hero-image"></div>
<div class="nav-bar" id="nav-bar">
<template id="nav-bar-btn">
<div id="nav-btn-{{order}}" class="nav-btn">{{name}}</div>
<div id="nav-btn-{{name}}" class="nav-btn">{{name}}</div>
</template>
</div>
<div id="page-contents">

View File

@ -6,8 +6,10 @@ function spawnNavBar(defaultPage) {
field this.currentPage = defaultPage;
assert currentPage(this.currentPage);
on message Syndicate.UI.globalEvent('.nav-btn', 'click', $e) {
// INVARIANT: the text content of each nav bar button is the page name
this.currentPage = e.originalTarget.textContent;
// INVARIANT: the id of each nav bar button is of the form 'nav-btn-Name',
// where Name is the name of the page associated with that button
var newPage = e.target.id.match(/nav-btn-(.*)/)[1];
this.currentPage = newPage;
}
}
}

View File

@ -91,7 +91,7 @@ var G = new Syndicate.Ground(function () {
}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(fromBroker(this.wsurl, locationRecord(_, _, _, _, _)), 0); }), (function() { var _ = Syndicate.__; return { assertion: fromBroker(this.wsurl, locationRecord((Syndicate._$("id")), (Syndicate._$("email")), _, _, _)), metalevel: 0 }; }), (function(id, email) {
var _cachedAssertion1487628703784_0 = (function() { var _ = Syndicate.__; return fromBroker(this.wsurl, locationRecord(id, email, _, _, _)); }).call(this);
var _cachedAssertion1505589935078_0 = (function() { var _ = Syndicate.__; return fromBroker(this.wsurl, locationRecord(id, email, _, _, _)); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
var ui = new Syndicate.UI.Anchor();
var marker = new google.maps.Marker({
@ -145,6 +145,6 @@ var _cachedAssertion1487628703784_0 = (function() { var _ = Syndicate.__; return
if (selectedMarker === marker) selectedMarker = null;
}));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628703784_0, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628703784_0, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589935078_0, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589935078_0, metalevel: 0 }; }), (function() {})); }); }}));
} }); });
}).startStepping();

View File

@ -57,10 +57,10 @@ function todoListItemView(id) {
Syndicate.Actor.declareField(this, "editing", false);
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(todo(id, _, _), 0); }), (function() { var _ = Syndicate.__; return { assertion: todo(id, (Syndicate._$("title")), (Syndicate._$("completed"))), metalevel: 0 }; }), (function(title, completed) {
var _cachedAssertion1487628704807_0 = (function() { var _ = Syndicate.__; return todo(id, title, completed); }).call(this);
var _cachedAssertion1505589936905_0 = (function() { var _ = Syndicate.__; return todo(id, title, completed); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(show(completed), 0); }), (function() { var _ = Syndicate.__; return { assertion: show(completed), metalevel: 0 }; }), (function() {
var _cachedAssertion1487628704807_1 = (function() { var _ = Syndicate.__; return show(completed); }).call(this);
var _cachedAssertion1505589936905_1 = (function() { var _ = Syndicate.__; return show(completed); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(this.ui.html('.todo-list',
Mustache.render(getTemplate(this.editing
@ -74,9 +74,9 @@ var _cachedAssertion1487628704807_1 = (function() { var _ = Syndicate.__; return
}),
id), 0); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_1, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_1, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_1, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_1, metalevel: 0 }; }), (function() {})); }); }}));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_0, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_0, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_0, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_0, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "message", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(this.ui.event('.toggle', 'change', _), 0); }), (function() { var _ = Syndicate.__; return { assertion: this.ui.event('.toggle', 'change', (Syndicate._$("e"))), metalevel: 0 }; }), (function(e) {
Syndicate.Dataspace.send(setCompleted(id, e.target.checked));
@ -123,38 +123,38 @@ var G = new Syndicate.Ground(function () {
this.ui = new Syndicate.UI.Anchor();
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(activeTodoCount(_), 0); }), (function() { var _ = Syndicate.__; return { assertion: activeTodoCount((Syndicate._$("count"))), metalevel: 0 }; }), (function(count) {
var _cachedAssertion1487628704807_2 = (function() { var _ = Syndicate.__; return activeTodoCount(count); }).call(this);
var _cachedAssertion1505589936905_2 = (function() { var _ = Syndicate.__; return activeTodoCount(count); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(this.ui.context('count').html('.todo-count strong', '' + count), 0); }));
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return (count !== 1) ? Syndicate.Patch.assert(this.ui.context('plural').html('.todo-count span.s', 's'), 0) : Syndicate.Patch.emptyPatch; }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_2, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_2, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_2, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_2, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(totalTodoCount(0), 0); }), (function() { var _ = Syndicate.__; return { assertion: totalTodoCount(0), metalevel: 0 }; }), (function() {
var _cachedAssertion1487628704807_3 = (function() { var _ = Syndicate.__; return totalTodoCount(0); }).call(this);
var _cachedAssertion1505589936905_3 = (function() { var _ = Syndicate.__; return totalTodoCount(0); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(Syndicate.UI.uiAttribute('section.main', 'class', 'hidden'), 0); }));
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(Syndicate.UI.uiAttribute('footer.footer', 'class', 'hidden'), 0); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_3, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_3, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_3, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_3, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(completedTodoCount(0), 0); }), (function() { var _ = Syndicate.__; return { assertion: completedTodoCount(0), metalevel: 0 }; }), (function() {
var _cachedAssertion1487628704807_4 = (function() { var _ = Syndicate.__; return completedTodoCount(0); }).call(this);
var _cachedAssertion1505589936905_4 = (function() { var _ = Syndicate.__; return completedTodoCount(0); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(Syndicate.UI.uiAttribute('button.clear-completed', 'class', 'hidden'), 0); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_4, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_4, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_4, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_4, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "message", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(Syndicate.UI.globalEvent('button.clear-completed', 'click', _), 0); }), (function() { var _ = Syndicate.__; return { assertion: Syndicate.UI.globalEvent('button.clear-completed', 'click', _), metalevel: 0 }; }), (function() {
Syndicate.Dataspace.send(clearCompletedTodos());
}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(allCompleted(), 0); }), (function() { var _ = Syndicate.__; return { assertion: allCompleted(), metalevel: 0 }; }), (function() {
var _cachedAssertion1487628704807_5 = (function() { var _ = Syndicate.__; return allCompleted(); }).call(this);
var _cachedAssertion1505589936905_5 = (function() { var _ = Syndicate.__; return allCompleted(); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addInitBlock((function() { Syndicate.Dataspace.send(Syndicate.UI.setProperty('.toggle-all', 'checked', true)); }));
Syndicate.Actor.Facet.current.addDoneBlock((function() { Syndicate.Dataspace.send(Syndicate.UI.setProperty('.toggle-all', 'checked', false)); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_5, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_5, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_5, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_5, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "message", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(Syndicate.UI.globalEvent('.toggle-all', 'change', _), 0); }), (function() { var _ = Syndicate.__; return { assertion: Syndicate.UI.globalEvent('.toggle-all', 'change', (Syndicate._$("e"))), metalevel: 0 }; }), (function(e) {
Syndicate.Dataspace.send(setAllCompleted(e.target.checked));
}));
@ -177,32 +177,32 @@ Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "re
Syndicate.Actor.spawnActor(function() { Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(Syndicate.UI.locationHash(_), 0); }), (function() { var _ = Syndicate.__; return { assertion: Syndicate.UI.locationHash((Syndicate._$("hash"))), metalevel: 0 }; }), (function(hash) {
var _cachedAssertion1487628704807_6 = (function() { var _ = Syndicate.__; return Syndicate.UI.locationHash(hash); }).call(this);
var _cachedAssertion1505589936905_6 = (function() { var _ = Syndicate.__; return Syndicate.UI.locationHash(hash); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(Syndicate.UI.uiAttribute('ul.filters > li > a[href="#'+hash+'"]',
'class', 'selected'), 0); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_6, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_6, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_6, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_6, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(Syndicate.UI.locationHash('/'), 0); }), (function() { var _ = Syndicate.__; return { assertion: Syndicate.UI.locationHash('/'), metalevel: 0 }; }), (function() {
var _cachedAssertion1487628704807_7 = (function() { var _ = Syndicate.__; return Syndicate.UI.locationHash('/'); }).call(this);
var _cachedAssertion1505589936905_7 = (function() { var _ = Syndicate.__; return Syndicate.UI.locationHash('/'); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(show(true), 0); }));
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(show(false), 0); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_7, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_7, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_7, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_7, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(Syndicate.UI.locationHash('/active'), 0); }), (function() { var _ = Syndicate.__; return { assertion: Syndicate.UI.locationHash('/active'), metalevel: 0 }; }), (function() {
var _cachedAssertion1487628704807_8 = (function() { var _ = Syndicate.__; return Syndicate.UI.locationHash('/active'); }).call(this);
var _cachedAssertion1505589936905_8 = (function() { var _ = Syndicate.__; return Syndicate.UI.locationHash('/active'); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(show(false), 0); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_8, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_8, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_8, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_8, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(Syndicate.UI.locationHash('/completed'), 0); }), (function() { var _ = Syndicate.__; return { assertion: Syndicate.UI.locationHash('/completed'), metalevel: 0 }; }), (function() {
var _cachedAssertion1487628704807_9 = (function() { var _ = Syndicate.__; return Syndicate.UI.locationHash('/completed'); }).call(this);
var _cachedAssertion1505589936905_9 = (function() { var _ = Syndicate.__; return Syndicate.UI.locationHash('/completed'); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(show(true), 0); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_9, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_9, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_9, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_9, metalevel: 0 }; }), (function() {})); }); }}));
} }); });
Syndicate.Actor.spawnActor(function() { Syndicate.Actor.Facet.build(function () { {
@ -232,22 +232,22 @@ Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "re
}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(todo(_, _, _), 0); }), (function() { var _ = Syndicate.__; return { assertion: todo((Syndicate._$("id")), _, _), metalevel: 0 }; }), (function(id) {
var _cachedAssertion1487628704807_10 = (function() { var _ = Syndicate.__; return todo(id, _, _); }).call(this);
var _cachedAssertion1505589936905_10 = (function() { var _ = Syndicate.__; return todo(id, _, _); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(todo(id, _, _), 0); }), (function() { var _ = Syndicate.__; return { assertion: todo(id, (Syndicate._$("title")), (Syndicate._$("completed"))), metalevel: 0 }; }), (function(title, completed) {
var _cachedAssertion1487628704807_11 = (function() { var _ = Syndicate.__; return todo(id, title, completed); }).call(this);
var _cachedAssertion1505589936905_11 = (function() { var _ = Syndicate.__; return todo(id, title, completed); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addInitBlock((function() {
db.todos[id] = {id: id, title: title, completed: completed};
localStorage['todos-syndicate'] = JSON.stringify(db);
}));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_11, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_11, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_11, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_11, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.addDoneBlock((function() {
delete db.todos[id];
localStorage['todos-syndicate'] = JSON.stringify(db);
}));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628704807_10, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628704807_10, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589936905_10, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589936905_10, metalevel: 0 }; }), (function() {})); }); }}));
} }); });
}).startStepping();

View File

@ -113,11 +113,11 @@ function seller() {
/// responsive record, if one exists.
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, false, "asserted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(Syndicate.observe(bookQuote(_, _)), 0); }), (function() { var _ = Syndicate.__; return { assertion: Syndicate.observe(bookQuote((Syndicate._$("title")), _)), metalevel: 0 }; }), (function(title) {
var _cachedAssertion1487628705850_0 = (function() { var _ = Syndicate.__; return Syndicate.observe(bookQuote(title, _)); }).call(this);
var _cachedAssertion1505589937975_0 = (function() { var _ = Syndicate.__; return Syndicate.observe(bookQuote(title, _)); }).call(this);
{ Syndicate.Actor.Facet.build(function () { {
Syndicate.Actor.Facet.current.addAssertion((function() { var _ = Syndicate.__; return Syndicate.Patch.assert(bookQuote(title, this.priceOf(title)), 0); }));
}
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1487628705850_0, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1487628705850_0, metalevel: 0 }; }), (function() {})); }); }}));
Syndicate.Actor.Facet.current.onEvent(Syndicate.Actor.PRIORITY_NORMAL, true, "retracted", (function() { var _ = Syndicate.__; return Syndicate.Patch.sub(_cachedAssertion1505589937975_0, 0); }), (function() { var _ = Syndicate.__; return { assertion: _cachedAssertion1505589937975_0, metalevel: 0 }; }), (function() {})); }); }}));
/// It also responds to order requests.