cosmetic: adjust spacing
This commit is contained in:
parent
1f6fdd808b
commit
f1e2481641
1 changed files with 47 additions and 49 deletions
|
@ -1,61 +1,59 @@
|
||||||
Elm.Native.Http = {};
|
Elm.Native.Http = {};
|
||||||
Elm.Native.Http.make = function(elm) {
|
Elm.Native.Http.make = function(elm) {
|
||||||
|
|
||||||
elm.Native = elm.Native || {};
|
elm.Native = elm.Native || {};
|
||||||
elm.Native.Http = elm.Native.Http || {};
|
elm.Native.Http = elm.Native.Http || {};
|
||||||
if (elm.Native.Http.values) return elm.Native.Http.values;
|
if (elm.Native.Http.values) return elm.Native.Http.values;
|
||||||
|
|
||||||
|
var JS = Elm.JavaScript.make(elm);
|
||||||
|
var List = Elm.List.make(elm);
|
||||||
|
var Signal = Elm.Signal.make(elm);
|
||||||
|
|
||||||
var JS = Elm.JavaScript.make(elm);
|
function registerReq(queue,responses) {
|
||||||
var List = Elm.List.make(elm);
|
return function(req) {
|
||||||
var Signal = Elm.Signal.make(elm);
|
if (req.url.ctor !== '[]') { sendReq(queue,responses,req); }
|
||||||
|
};
|
||||||
|
|
||||||
function registerReq(queue,responses) { return function(req) {
|
|
||||||
if (req.url.ctor !== '[]') { sendReq(queue,responses,req); }
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
function updateQueue(queue,responses) {
|
|
||||||
if (queue.length > 0) {
|
|
||||||
elm.notify(responses.id, queue[0].value);
|
|
||||||
if (queue[0].value.ctor !== 'Waiting') {
|
|
||||||
queue.shift();
|
|
||||||
setTimeout(function() { updateQueue(queue,responses); }, 0);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
function sendReq(queue,responses,req) {
|
function updateQueue(queue,responses) {
|
||||||
var response = { value: { ctor:'Waiting' } };
|
if (queue.length > 0) {
|
||||||
queue.push(response);
|
elm.notify(responses.id, queue[0].value);
|
||||||
|
if (queue[0].value.ctor !== 'Waiting') {
|
||||||
var request = null;
|
queue.shift();
|
||||||
if (window.ActiveXObject) { request = new ActiveXObject("Microsoft.XMLHTTP"); }
|
setTimeout(function() { updateQueue(queue,responses); }, 0);
|
||||||
if (window.XMLHttpRequest) { request = new XMLHttpRequest(); }
|
}
|
||||||
request.onreadystatechange = function(e) {
|
}
|
||||||
if (request.readyState === 4) {
|
|
||||||
response.value = (request.status >= 200 && request.status < 300 ?
|
|
||||||
{ ctor:'Success', _0:JS.toString(request.responseText) } :
|
|
||||||
{ ctor:'Failure', _0:request.status, _1:JS.toString(request.statusText) });
|
|
||||||
setTimeout(function() { updateQueue(queue,responses); }, 0);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
request.open(JS.fromString(req.verb), JS.fromString(req.url), true);
|
|
||||||
function setHeader(pair) {
|
|
||||||
request.setRequestHeader( JS.fromString(pair._0), JS.fromString(pair._1) );
|
|
||||||
}
|
}
|
||||||
List.map(setHeader)(req.headers);
|
|
||||||
request.send(JS.fromString(req.body));
|
|
||||||
}
|
|
||||||
|
|
||||||
function send(requests) {
|
function sendReq(queue,responses,req) {
|
||||||
var responses = Signal.constant(elm.Http.values.Waiting);
|
var response = { value: { ctor:'Waiting' } };
|
||||||
var sender = A2( Signal.lift, registerReq([],responses), requests );
|
queue.push(response);
|
||||||
function f(x) { return function(y) { return x; } }
|
|
||||||
return A3( Signal.lift2, f, responses, sender );
|
|
||||||
}
|
|
||||||
|
|
||||||
return elm.Native.Http.values = {send:send};
|
var request = null;
|
||||||
|
if (window.ActiveXObject) { request = new ActiveXObject("Microsoft.XMLHTTP"); }
|
||||||
|
if (window.XMLHttpRequest) { request = new XMLHttpRequest(); }
|
||||||
|
request.onreadystatechange = function(e) {
|
||||||
|
if (request.readyState === 4) {
|
||||||
|
response.value = (request.status >= 200 && request.status < 300 ?
|
||||||
|
{ ctor:'Success', _0:JS.toString(request.responseText) } :
|
||||||
|
{ ctor:'Failure', _0:request.status, _1:JS.toString(request.statusText) });
|
||||||
|
setTimeout(function() { updateQueue(queue,responses); }, 0);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
request.open(JS.fromString(req.verb), JS.fromString(req.url), true);
|
||||||
|
function setHeader(pair) {
|
||||||
|
request.setRequestHeader( JS.fromString(pair._0), JS.fromString(pair._1) );
|
||||||
|
}
|
||||||
|
List.map(setHeader)(req.headers);
|
||||||
|
request.send(JS.fromString(req.body));
|
||||||
|
}
|
||||||
|
|
||||||
|
function send(requests) {
|
||||||
|
var responses = Signal.constant(elm.Http.values.Waiting);
|
||||||
|
var sender = A2( Signal.lift, registerReq([],responses), requests );
|
||||||
|
function f(x) { return function(y) { return x; } }
|
||||||
|
return A3( Signal.lift2, f, responses, sender );
|
||||||
|
}
|
||||||
|
|
||||||
|
return elm.Native.Http.values = {send:send};
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue