diff --git a/servant-js/src/Servant/JS/Angular.hs b/servant-js/src/Servant/JS/Angular.hs index 68ff0a27..53295504 100644 --- a/servant-js/src/Servant/JS/Angular.hs +++ b/servant-js/src/Servant/JS/Angular.hs @@ -128,6 +128,7 @@ generateAngularJSWith ngOptions opts req = "\n" <> method = req ^. reqMethod url = if url' == "'" then "'/'" else url' url' = "'" + ++ urlPrefix opts ++ urlArgs ++ queryArgs diff --git a/servant-js/src/Servant/JS/Internal.hs b/servant-js/src/Servant/JS/Internal.hs index 909df8d2..d9e2cc76 100644 --- a/servant-js/src/Servant/JS/Internal.hs +++ b/servant-js/src/Servant/JS/Internal.hs @@ -34,6 +34,7 @@ data CommonGeneratorOptions = CommonGeneratorOptions , successCallback :: String -- ^ name of the callback parameter when the request was successful , errorCallback :: String -- ^ name of the callback parameter when the request reported an error , moduleName :: String -- ^ namespace on which we define the js function (empty mean local var) + , urlPrefix :: String -- ^ a prefix we should add to the Url in the JS codegen } -- | Default options. @@ -45,6 +46,7 @@ data CommonGeneratorOptions = CommonGeneratorOptions -- > , successCallback = "onSuccess" -- > , errorCallback = "onError" -- > , moduleName = "" +-- > , urlPrefix = "" -- > } -- @ defCommonGeneratorOptions :: CommonGeneratorOptions @@ -55,6 +57,7 @@ defCommonGeneratorOptions = CommonGeneratorOptions , successCallback = "onSuccess" , errorCallback = "onError" , moduleName = "" + , urlPrefix = "" } type Arg = String diff --git a/servant-js/src/Servant/JS/JQuery.hs b/servant-js/src/Servant/JS/JQuery.hs index be36792e..3cf0cc13 100644 --- a/servant-js/src/Servant/JS/JQuery.hs +++ b/servant-js/src/Servant/JS/JQuery.hs @@ -81,6 +81,7 @@ generateJQueryJSWith opts req = "\n" <> method = req ^. reqMethod url = if url' == "'" then "'/'" else url' url' = "'" + ++ urlPrefix opts ++ urlArgs ++ queryArgs diff --git a/servant-js/src/Servant/JS/Vanilla.hs b/servant-js/src/Servant/JS/Vanilla.hs index c9b0fb49..04fdb1d2 100644 --- a/servant-js/src/Servant/JS/Vanilla.hs +++ b/servant-js/src/Servant/JS/Vanilla.hs @@ -88,6 +88,7 @@ generateVanillaJSWith opts req = "\n" <> method = req ^. reqMethod url = if url' == "'" then "'/'" else url' url' = "'" + ++ urlPrefix opts ++ urlArgs ++ queryArgs