define("amber_core/Platform-Browser", ["amber/boot", "amber_core/Kernel-Objects"], function($boot){"use strict"; var $core=$boot.api,nil=$boot.nil,$recv=$boot.asReceiver,$globals=$boot.globals; $core.addPackage('Platform-Browser'); $core.packages["Platform-Browser"].innerEval = function (expr) { return eval(expr); }; $core.packages["Platform-Browser"].transport = {"type":"amd","amdNamespace":"amber_core"}; $core.addClass('BrowserPlatform', $globals.Object, [], 'Platform-Browser'); //>>excludeStart("ide", pragmas.excludeIdeData); $globals.BrowserPlatform.comment="I am `Platform` service implementation for browser."; //>>excludeEnd("ide"); $core.addMethod( $core.method({ selector: "globals", protocol: 'accessing', fn: function (){ var self=this; var $1; $1=window; return $1; }, //>>excludeStart("ide", pragmas.excludeIdeData); args: [], source: "globals\x0a\x09^ window", referencedClasses: [], //>>excludeEnd("ide"); messageSends: [] }), $globals.BrowserPlatform); $core.addMethod( $core.method({ selector: "newXhr", protocol: 'accessing', fn: function (){ var self=this; function $XMLHttpRequest(){return $globals.XMLHttpRequest||(typeof XMLHttpRequest=="undefined"?nil:XMLHttpRequest)} //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); var $1,$receiver; if(($receiver = $XMLHttpRequest()) == null || $receiver.isNil){ self._error_("XMLHttpRequest not available."); } else { $1=$recv($XMLHttpRequest())._new(); return $1; }; return self; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"newXhr",{},$globals.BrowserPlatform)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: [], source: "newXhr\x0a\x09XMLHttpRequest\x0a\x09\x09ifNotNil: [ ^ XMLHttpRequest new ]\x0a\x09\x09ifNil: [ self error: 'XMLHttpRequest not available.' ]", referencedClasses: ["XMLHttpRequest"], //>>excludeEnd("ide"); messageSends: ["ifNotNil:ifNil:", "new", "error:"] }), $globals.BrowserPlatform); $core.addMethod( $core.method({ selector: "initialize", protocol: 'testing', fn: function (){ var self=this; function $Platform(){return $globals.Platform||(typeof Platform=="undefined"?nil:Platform)} //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); var $1; $1=self._isFeasible(); if($core.assert($1)){ $recv($Platform())._registerIfNone_(self._new()); }; return self; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"initialize",{},$globals.BrowserPlatform.klass)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: [], source: "initialize\x0a\x09self isFeasible ifTrue: [ Platform registerIfNone: self new ]", referencedClasses: ["Platform"], //>>excludeEnd("ide"); messageSends: ["ifTrue:", "isFeasible", "registerIfNone:", "new"] }), $globals.BrowserPlatform.klass); $core.addMethod( $core.method({ selector: "isFeasible", protocol: 'testing', fn: function (){ var self=this; //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); return typeof window !== "undefined"; return self; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"isFeasible",{},$globals.BrowserPlatform.klass)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: [], source: "isFeasible\x0a", referencedClasses: [], //>>excludeEnd("ide"); messageSends: [] }), $globals.BrowserPlatform.klass); $core.addClass('BrowserTerminal', $globals.Object, [], 'Platform-Browser'); //>>excludeStart("ide", pragmas.excludeIdeData); $globals.BrowserTerminal.comment="I am `Terminal` service implementation for browser."; //>>excludeEnd("ide"); $core.addMethod( $core.method({ selector: "alert:", protocol: 'actions', fn: function (aString){ var self=this; //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); var $1; $1=$recv(window)._alert_(aString); return $1; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"alert:",{aString:aString},$globals.BrowserTerminal)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: ["aString"], source: "alert: aString\x0a\x09^ window alert: aString", referencedClasses: [], //>>excludeEnd("ide"); messageSends: ["alert:"] }), $globals.BrowserTerminal); $core.addMethod( $core.method({ selector: "confirm:", protocol: 'actions', fn: function (aString){ var self=this; //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); var $1; $1=$recv(window)._confirm_(aString); return $1; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"confirm:",{aString:aString},$globals.BrowserTerminal)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: ["aString"], source: "confirm: aString\x0a\x09^ window confirm: aString", referencedClasses: [], //>>excludeEnd("ide"); messageSends: ["confirm:"] }), $globals.BrowserTerminal); $core.addMethod( $core.method({ selector: "prompt:", protocol: 'actions', fn: function (aString){ var self=this; //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); var $1; $1=$recv(window)._prompt_(aString); return $1; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"prompt:",{aString:aString},$globals.BrowserTerminal)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: ["aString"], source: "prompt: aString\x0a\x09^ window prompt: aString", referencedClasses: [], //>>excludeEnd("ide"); messageSends: ["prompt:"] }), $globals.BrowserTerminal); $core.addMethod( $core.method({ selector: "prompt:default:", protocol: 'actions', fn: function (aString,defaultString){ var self=this; //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); var $1; $1=$recv(window)._prompt_default_(aString,defaultString); return $1; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"prompt:default:",{aString:aString,defaultString:defaultString},$globals.BrowserTerminal)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: ["aString", "defaultString"], source: "prompt: aString default: defaultString\x0a\x09^ window prompt: aString default: defaultString", referencedClasses: [], //>>excludeEnd("ide"); messageSends: ["prompt:default:"] }), $globals.BrowserTerminal); $core.addMethod( $core.method({ selector: "initialize", protocol: 'testing', fn: function (){ var self=this; function $Terminal(){return $globals.Terminal||(typeof Terminal=="undefined"?nil:Terminal)} //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); var $1; $1=self._isFeasible(); if($core.assert($1)){ $recv($Terminal())._registerIfNone_(self._new()); }; return self; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"initialize",{},$globals.BrowserTerminal.klass)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: [], source: "initialize\x0a\x09self isFeasible ifTrue: [ Terminal registerIfNone: self new ]", referencedClasses: ["Terminal"], //>>excludeEnd("ide"); messageSends: ["ifTrue:", "isFeasible", "registerIfNone:", "new"] }), $globals.BrowserTerminal.klass); $core.addMethod( $core.method({ selector: "isFeasible", protocol: 'testing', fn: function (){ var self=this; //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); return typeof window !== "undefined"; return self; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"isFeasible",{},$globals.BrowserTerminal.klass)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: [], source: "isFeasible\x0a", referencedClasses: [], //>>excludeEnd("ide"); messageSends: [] }), $globals.BrowserTerminal.klass); $core.addMethod( $core.method({ selector: "postMessageTo:", protocol: '*Platform-Browser', fn: function (aFrame){ var self=this; //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); var $1; $1=self._postMessageTo_origin_(aFrame,"*"); return $1; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"postMessageTo:",{aFrame:aFrame},$globals.Object)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: ["aFrame"], source: "postMessageTo: aFrame\x0a^ self postMessageTo: aFrame origin: '*'", referencedClasses: [], //>>excludeEnd("ide"); messageSends: ["postMessageTo:origin:"] }), $globals.Object); $core.addMethod( $core.method({ selector: "postMessageTo:origin:", protocol: '*Platform-Browser', fn: function (aFrame,aString){ var self=this; //>>excludeStart("ctx", pragmas.excludeDebugContexts); return $core.withContext(function($ctx1) { //>>excludeEnd("ctx"); return aFrame.postMessage(self, aString); return self; //>>excludeStart("ctx", pragmas.excludeDebugContexts); }, function($ctx1) {$ctx1.fill(self,"postMessageTo:origin:",{aFrame:aFrame,aString:aString},$globals.Object)}); //>>excludeEnd("ctx"); }, //>>excludeStart("ide", pragmas.excludeIdeData); args: ["aFrame", "aString"], source: "postMessageTo: aFrame origin: aString\x0a", referencedClasses: [], //>>excludeEnd("ide"); messageSends: [] }), $globals.Object); });