|
@@ -1,8 +1,8 @@
|
|
define(["amber/boot"
|
|
define(["amber/boot"
|
|
//>>excludeStart("imports", pragmas.excludeImports);
|
|
//>>excludeStart("imports", pragmas.excludeImports);
|
|
-, "axxord/Axxord", "amber/web/Web"
|
|
|
|
|
|
+, "amber/web/Web", "axxord/Axxord"
|
|
//>>excludeEnd("imports");
|
|
//>>excludeEnd("imports");
|
|
-, "amber/web/Web", "amber_core/Kernel-Collections", "amber_core/Kernel-Objects", "trapped/Trapped-Backend"], function($boot
|
|
|
|
|
|
+, "amber/web/Web", "amber_core/Kernel-Collections", "amber_core/Kernel-Objects"], function($boot
|
|
//>>excludeStart("imports", pragmas.excludeImports);
|
|
//>>excludeStart("imports", pragmas.excludeImports);
|
|
|
|
|
|
//>>excludeEnd("imports");
|
|
//>>excludeEnd("imports");
|
|
@@ -299,6 +299,263 @@ $globals.TrappedDataCarrierToView);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+$core.addClass("TrappedPosition", $globals.Object, ["path", "model"], "Trapped-Frontend");
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "model",
|
|
|
|
+protocol: "accessing",
|
|
|
|
+fn: function (){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+return $self["@model"];
|
|
|
|
+
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: [],
|
|
|
|
+source: "model\x0a\x09^model",
|
|
|
|
+referencedClasses: [],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: []
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedPosition);
|
|
|
|
+
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "modify:",
|
|
|
|
+protocol: "action",
|
|
|
|
+fn: function (aBlock){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+return $core.withContext(function($ctx1) {
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+$recv($self._model())._axes_transform_($self._path(),aBlock);
|
|
|
|
+return self;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"modify:",{aBlock:aBlock},$globals.TrappedPosition)});
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: ["aBlock"],
|
|
|
|
+source: "modify: aBlock\x0a\x09self model axes: self path transform: aBlock",
|
|
|
|
+referencedClasses: [],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: ["axes:transform:", "model", "path"]
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedPosition);
|
|
|
|
+
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "path",
|
|
|
|
+protocol: "accessing",
|
|
|
|
+fn: function (){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+return $self["@path"];
|
|
|
|
+
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: [],
|
|
|
|
+source: "path\x0a\x09^path",
|
|
|
|
+referencedClasses: [],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: []
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedPosition);
|
|
|
|
+
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "path:model:",
|
|
|
|
+protocol: "accessing",
|
|
|
|
+fn: function (anArray,aTrappedMW){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+$self["@path"]=anArray;
|
|
|
|
+$self["@model"]=aTrappedMW;
|
|
|
|
+return self;
|
|
|
|
+
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: ["anArray", "aTrappedMW"],
|
|
|
|
+source: "path: anArray model: aTrappedMW\x0a\x09path := anArray.\x0a model := aTrappedMW",
|
|
|
|
+referencedClasses: [],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: []
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedPosition);
|
|
|
|
+
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "read:",
|
|
|
|
+protocol: "action",
|
|
|
|
+fn: function (aBlock){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+return $core.withContext(function($ctx1) {
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+$recv($self._model())._axes_consume_($self._path(),aBlock);
|
|
|
|
+return self;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"read:",{aBlock:aBlock},$globals.TrappedPosition)});
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: ["aBlock"],
|
|
|
|
+source: "read: aBlock\x0a\x09self model axes: self path consume: aBlock",
|
|
|
|
+referencedClasses: [],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: ["axes:consume:", "model", "path"]
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedPosition);
|
|
|
|
+
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "watch:",
|
|
|
|
+protocol: "action",
|
|
|
|
+fn: function (aBlock){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+return $core.withContext(function($ctx1) {
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+$recv($recv($self._model())._registeredAxon())._addInterest_($recv($self._class())._interestOn_block_($self._path(),(function(){
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+return $core.withContext(function($ctx2) {
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+return $self._read_(aBlock);
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+})));
|
|
|
|
+return self;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"watch:",{aBlock:aBlock},$globals.TrappedPosition)});
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: ["aBlock"],
|
|
|
|
+source: "watch: aBlock\x0a\x09self model registeredAxon addInterest: (self class\x0a\x09\x09interestOn: self path\x0a\x09\x09block: [ self read: aBlock ])",
|
|
|
|
+referencedClasses: [],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: ["addInterest:", "registeredAxon", "model", "interestOn:block:", "class", "path", "read:"]
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedPosition);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "interestOn:block:",
|
|
|
|
+protocol: "factory",
|
|
|
|
+fn: function (anAspect,aBlock){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+return $core.withContext(function($ctx1) {
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+var $1,$3,$2;
|
|
|
|
+$1=$recv($recv(anAspect)._notEmpty())._and_((function(){
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+return $core.withContext(function($ctx2) {
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+return $recv($recv(anAspect)._last())._isNil();
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+}));
|
|
|
|
+if($core.assert($1)){
|
|
|
|
+$3=$recv($globals.InterestedThruAxes)._new();
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+$ctx1.sendIdx["new"]=1;
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+$2=$recv($3)._aspect_block_($recv(anAspect)._allButLast(),aBlock);
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+$ctx1.sendIdx["aspect:block:"]=1;
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+return $2;
|
|
|
|
+} else {
|
|
|
|
+return $recv($recv($globals.InterestedUpToAxes)._new())._aspect_block_(anAspect,aBlock);
|
|
|
|
+}
|
|
|
|
+return self;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"interestOn:block:",{anAspect:anAspect,aBlock:aBlock},$globals.TrappedPosition.a$cls)});
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: ["anAspect", "aBlock"],
|
|
|
|
+source: "interestOn: anAspect block: aBlock\x0a\x09(anAspect notEmpty and: [ anAspect last isNil ])\x0a\x09\x09ifTrue: [ ^ InterestedThruAxes new aspect: anAspect allButLast block: aBlock ]\x0a\x09\x09ifFalse: [ ^ InterestedUpToAxes new aspect: anAspect block: aBlock ]",
|
|
|
|
+referencedClasses: ["InterestedThruAxes", "InterestedUpToAxes"],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: ["ifTrue:ifFalse:", "and:", "notEmpty", "isNil", "last", "aspect:block:", "new", "allButLast"]
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedPosition.a$cls);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+$core.addClass("TrappedSnapshot", $globals.TrappedPosition, ["prefix"], "Trapped-Frontend");
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "do:",
|
|
|
|
+protocol: "action",
|
|
|
|
+fn: function (aBlock){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+return $core.withContext(function($ctx1) {
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+$recv($recv($globals.TrappedPathStack)._current())._with_do_($recv([$self["@prefix"]]).__comma($self["@path"]),(function(){
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+return $core.withContext(function($ctx2) {
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+return $recv(aBlock)._value_($self["@model"]);
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+}));
|
|
|
|
+return self;
|
|
|
|
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},$globals.TrappedSnapshot)});
|
|
|
|
+//>>excludeEnd("ctx");
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: ["aBlock"],
|
|
|
|
+source: "do: aBlock\x0a\x09TrappedPathStack current with: {prefix}, path do: [ aBlock value: model ]",
|
|
|
|
+referencedClasses: ["TrappedPathStack"],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: ["with:do:", "current", ",", "value:"]
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedSnapshot);
|
|
|
|
+
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "prefix",
|
|
|
|
+protocol: "accessing",
|
|
|
|
+fn: function (){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+return $self["@prefix"];
|
|
|
|
+
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: [],
|
|
|
|
+source: "prefix\x0a\x09^ prefix",
|
|
|
|
+referencedClasses: [],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: []
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedSnapshot);
|
|
|
|
+
|
|
|
|
+$core.addMethod(
|
|
|
|
+$core.method({
|
|
|
|
+selector: "prefix:",
|
|
|
|
+protocol: "accessing",
|
|
|
|
+fn: function (anObject){
|
|
|
|
+var self=this,$self=this;
|
|
|
|
+$self["@prefix"]=anObject;
|
|
|
|
+return self;
|
|
|
|
+
|
|
|
|
+},
|
|
|
|
+//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
+args: ["anObject"],
|
|
|
|
+source: "prefix: anObject\x0a\x09prefix := anObject",
|
|
|
|
+referencedClasses: [],
|
|
|
|
+//>>excludeEnd("ide");
|
|
|
|
+messageSends: []
|
|
|
|
+}),
|
|
|
|
+$globals.TrappedSnapshot);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
$core.addClass("TrappedProcessingChain", $globals.Object, ["processors"], "Trapped-Frontend");
|
|
$core.addClass("TrappedProcessingChain", $globals.Object, ["processors"], "Trapped-Frontend");
|
|
$core.addMethod(
|
|
$core.addMethod(
|
|
$core.method({
|
|
$core.method({
|
|
@@ -1500,78 +1757,6 @@ messageSends: ["ensure:", "value"]
|
|
$globals.TrappedPathStack);
|
|
$globals.TrappedPathStack);
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
-$core.addClass("TrappedSnapshot", $globals.TrappedPosition, ["prefix"], "Trapped-Frontend");
|
|
|
|
-$core.addMethod(
|
|
|
|
-$core.method({
|
|
|
|
-selector: "do:",
|
|
|
|
-protocol: "action",
|
|
|
|
-fn: function (aBlock){
|
|
|
|
-var self=this,$self=this;
|
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
-return $core.withContext(function($ctx1) {
|
|
|
|
-//>>excludeEnd("ctx");
|
|
|
|
-$recv($recv($globals.TrappedPathStack)._current())._with_do_($recv([$self["@prefix"]]).__comma($self["@path"]),(function(){
|
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
-return $core.withContext(function($ctx2) {
|
|
|
|
-//>>excludeEnd("ctx");
|
|
|
|
-return $recv(aBlock)._value_($self["@model"]);
|
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
|
|
|
|
-//>>excludeEnd("ctx");
|
|
|
|
-}));
|
|
|
|
-return self;
|
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},$globals.TrappedSnapshot)});
|
|
|
|
-//>>excludeEnd("ctx");
|
|
|
|
-},
|
|
|
|
-//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
-args: ["aBlock"],
|
|
|
|
-source: "do: aBlock\x0a\x09TrappedPathStack current with: {prefix}, path do: [ aBlock value: model ]",
|
|
|
|
-referencedClasses: ["TrappedPathStack"],
|
|
|
|
-//>>excludeEnd("ide");
|
|
|
|
-messageSends: ["with:do:", "current", ",", "value:"]
|
|
|
|
-}),
|
|
|
|
-$globals.TrappedSnapshot);
|
|
|
|
-
|
|
|
|
-$core.addMethod(
|
|
|
|
-$core.method({
|
|
|
|
-selector: "prefix",
|
|
|
|
-protocol: "accessing",
|
|
|
|
-fn: function (){
|
|
|
|
-var self=this,$self=this;
|
|
|
|
-return $self["@prefix"];
|
|
|
|
-
|
|
|
|
-},
|
|
|
|
-//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
-args: [],
|
|
|
|
-source: "prefix\x0a\x09^ prefix",
|
|
|
|
-referencedClasses: [],
|
|
|
|
-//>>excludeEnd("ide");
|
|
|
|
-messageSends: []
|
|
|
|
-}),
|
|
|
|
-$globals.TrappedSnapshot);
|
|
|
|
-
|
|
|
|
-$core.addMethod(
|
|
|
|
-$core.method({
|
|
|
|
-selector: "prefix:",
|
|
|
|
-protocol: "accessing",
|
|
|
|
-fn: function (anObject){
|
|
|
|
-var self=this,$self=this;
|
|
|
|
-$self["@prefix"]=anObject;
|
|
|
|
-return self;
|
|
|
|
-
|
|
|
|
-},
|
|
|
|
-//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
|
-args: ["anObject"],
|
|
|
|
-source: "prefix: anObject\x0a\x09prefix := anObject",
|
|
|
|
-referencedClasses: [],
|
|
|
|
-//>>excludeEnd("ide");
|
|
|
|
-messageSends: []
|
|
|
|
-}),
|
|
|
|
-$globals.TrappedSnapshot);
|
|
|
|
-
|
|
|
|
-
|
|
|
|
$core.addMethod(
|
|
$core.addMethod(
|
|
$core.method({
|
|
$core.method({
|
|
selector: "asTrapProcSendTo:",
|
|
selector: "asTrapProcSendTo:",
|