@@ -1,11 +1,9 @@
1−{-# LANGUAGE QuasiQuotes #-}
21module Servant.JQuery.Vanilla where
32
43import Servant.JQuery.Internal
54import Control.Lens
65import Data.List
76import Data.Monoid
8−import Data.String.Interpolate
97
108-- | js codegen using XmlHttpRequest using default generation options
119generateVanillaJS :: AjaxReq -> String
@@ -13,25 +11,24 @@ generateVanillaJS = generateVanillaJSWith defCommonGeneratorOptions
1311
1412-- | js codegen using XmlHttpRequest
1513generateVanillaJSWith :: CommonGeneratorOptions -> AjaxReq -> String
16−generateVanillaJSWith opts req = [i|
17− #{fname} = function(#{argsStr})
18− {
19− var xhr = new XMLHttpRequest();
20− xhr.open('#{method}', #{url}, true);
21− #{reqheaders}
22− xhr.onreadystatechange = function (e) {
23− if (xhr.readyState == 4) {
24− var value = JSON.parse(xhr.responseText);
25− if (xhr.status == 200 || xhr.status == 201) {
26− #{onSuccess}(value);
27− } else {
28− #{onError}(value);
29− }
30− }
31− }
32− xhr.send(#{dataBody});
33− }
34−|]
14+generateVanillaJSWith opts req = "\n" <>
15+ fname <> " = function(" <> argsStr <> ")\n"
16+ <> "{\n"
17+ <> " var xhr = new XMLHttpRequest();\n"
18+ <> " xhr.open('" <> method <> "', " <> url <> ", true);\n"
19+ <> reqheaders
20+ <> " xhr.onreadystatechange = function (e) {\n"
21+ <> " if (xhr.readyState == 4) {\n"
22+ <> " var value = JSON.parse(xhr.responseText);\n"
23+ <> " if (xhr.status == 200 || xhr.status == 201) {\n"
24+ <> " onSuccess(value);\n"
25+ <> " } else {\n"
26+ <> " onError(value);\n"
27+ <> " }\n"
28+ <> " }\n"
29+ <> " }\n"
30+ <> " xhr.send(" <> dataBody <> ");\n"
31+ <> "}\n"
3532
3633 where argsStr = intercalate ", " args
3734 args = captures