graphqljs-rails 0.3.5 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d6fd1ba21cc570be9e71909a71f3bbf455880a62
4
- data.tar.gz: f046e990d86bdb96e556a924e7abefc150472d81
3
+ metadata.gz: 0f6fc4dfe6d26aad4d498a116ec59f4d1107701d
4
+ data.tar.gz: fceef4b7e201b89e7345bf92d8f10c6260304ef8
5
5
  SHA512:
6
- metadata.gz: edc6a446d3eb0f0ac763766da7edf058a08c560a2902d6a798340f7ff3db091c76a04ab2afcde4a6d0a459b71d2b3236f2e1e483c9c3793180e0ca7e4f53fdc2
7
- data.tar.gz: 2f8aa3f7253092c8347dc9610df8bff9acbdfef504a5fd27a5dcbc05b71a995054e76525da0af9ea36e64b48707669421a4f725749406b1f4314edad46617ad8
6
+ metadata.gz: 036fc1147d670c2b4c5415b35df4a48b8cf138fdcb2c17adb714ffd4ce6350ad99949b324b9abbbb9446e9836dc18fec9b303905e73d0ec0842b0ee173c08056
7
+ data.tar.gz: c50ff6e5918cddd376119131021d4b2a79aedc56dc88b48a669ee6f870e265962312f3d8d1d07a99f4de4876945d8312d1b64da127a8d7e8de6a968a8e132563
@@ -25,23 +25,50 @@
25
25
  return extended
26
26
  }
27
27
 
28
- function __request(method, url, headers, data, callback) {
29
- var xhr = new XMLHttpRequest()
30
- xhr.open(method, url, true)
31
- xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded')
32
- xhr.setRequestHeader('Accept', 'application/json')
33
- for (var key in headers) {
34
- xhr.setRequestHeader(key, headers[key])
35
- }
36
- xhr.onerror = function () {
37
- callback(xhr, xhr.status)
28
+ function __xhr() {
29
+ if (window.XMLHttpRequest) {
30
+ return new window.XMLHttpRequest
31
+ } else {
32
+ try { return new ActiveXObject("MSXML2.XMLHTTP.3.0") } catch(ex) { return null }
38
33
  }
39
- xhr.onload = function () {
40
- callback(JSON.parse(xhr.responseText), xhr.status)
34
+ }
35
+
36
+ function __request(method, url, headers, data, callback) {
37
+ var body = "query=" + escape(data.query) + "&variables=" + escape(JSON.stringify(data.variables))
38
+ if (typeof XMLHttpRequest != 'undefined') {
39
+ var xhr = __xhr()
40
+ xhr.open(method, url, true)
41
+ xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded')
42
+ xhr.setRequestHeader('Accept', 'application/json')
43
+ for (var key in headers) { xhr.setRequestHeader(key, headers[key]) }
44
+ xhr.onerror = function () { callback(xhr, xhr.status) }
45
+ xhr.onload = function () { callback(JSON.parse(xhr.responseText), xhr.status) }
46
+ xhr.send(body)
47
+ } else if (typeof require == 'function') {
48
+ var http = require('http'), URL = require('url'), uri = URL.parse(url)
49
+ var req = http.request({
50
+ protocol: uri.protocol,
51
+ hostname: uri.hostname,
52
+ port: uri.port,
53
+ path: uri.path,
54
+ method: "POST",
55
+ headers: __extend({
56
+ 'Content-type': 'application/x-www-form-urlencoded',
57
+ 'Accept': 'application/json'
58
+ }, headers)
59
+ }, function (response) {
60
+ var str = ''
61
+ response.setEncoding('utf8')
62
+ response.on('data', function (chunk) { str += chunk })
63
+ response.on('end', function () {
64
+ callback(JSON.parse(str), response.statusCode)
65
+ })
66
+ })
67
+ req.write(body)
68
+ req.end()
41
69
  }
42
- xhr.send("query=" + escape(data.query) + "&variables=" + escape(JSON.stringify(data.variables)))
43
70
  }
44
-
71
+
45
72
  function __isTagCall(strings) {
46
73
  return Object.prototype.toString.call(strings) == '[object Array]' && strings.raw
47
74
  }
@@ -53,6 +80,8 @@
53
80
  for (var m in client) {
54
81
  if (typeof client[m] == 'function') {
55
82
  _lazy[m] = client[m].bind(client)
83
+ if (client[m].declare) _lazy[m].declare = client[m].declare.bind(client)
84
+ if (client[m].run) _lazy[m].run = client[m].run.bind(client)
56
85
  }
57
86
  }
58
87
  return _lazy
@@ -74,9 +103,9 @@
74
103
  // "fragment auth.login" will be "fragment auth_login"
75
104
  FRAGMENT_SEPERATOR = "_"
76
105
 
77
- // The autotype keyword.
78
- GraphQLClient.AUTOTYPE_PATTERN = /\(@autotype\)/
79
-
106
+ // The autodeclare keyword.
107
+ GraphQLClient.AUTODECLARE_PATTERN = /\(@autodeclare\)|\(@autotype\)/
108
+
80
109
  GraphQLClient.FRAGMENT_PATTERN = /\.\.\.\s*([A-Za-z0-9\.\_]+)/g
81
110
 
82
111
  // Flattens nested object
@@ -107,7 +136,7 @@
107
136
  }
108
137
  return obj
109
138
  }
110
-
139
+
111
140
  GraphQLClient.prototype.collectFragments = function (query, fragments) {
112
141
  var that = this
113
142
  var fragmentRegexp = GraphQLClient.FRAGMENT_PATTERN
@@ -147,13 +176,13 @@
147
176
  })).join("\n")
148
177
  }
149
178
 
150
- GraphQLClient.prototype.autoType = function (query, variables) {
179
+ GraphQLClient.prototype.autoDeclare = function (query, variables) {
151
180
  var typeMap = {
152
181
  string: "String",
153
182
  number: "Int",
154
183
  boolean: "Boolean"
155
184
  }
156
- return query.replace(GraphQLClient.AUTOTYPE_PATTERN, function () {
185
+ return query.replace(GraphQLClient.AUTODECLARE_PATTERN, function () {
157
186
  var types = []
158
187
  for (var key in variables) {
159
188
  var value = variables[key]
@@ -164,11 +193,11 @@
164
193
  }
165
194
  }
166
195
  types = types.join(", ")
167
- return "("+ types +")"
196
+ return types ? "("+ types +")" : ""
168
197
  })
169
198
  }
170
199
 
171
- GraphQLClient.prototype.cleanAutoTypeAnnotations = function (variables) {
200
+ GraphQLClient.prototype.cleanAutoDeclareAnnotations = function (variables) {
172
201
  if (!variables) variables = {}
173
202
  var newVariables = {}
174
203
  for (var key in variables) {
@@ -193,9 +222,9 @@
193
222
  }
194
223
  return fragmentObject
195
224
  }
196
-
225
+
197
226
  GraphQLClient.prototype.buildQuery = function (query, variables) {
198
- return this.autoType(this.processQuery(query, this._fragments, variables), variables)
227
+ return this.autoDeclare(this.processQuery(query, this._fragments, variables), variables)
199
228
  }
200
229
 
201
230
  GraphQLClient.prototype.createSenderFunction = function (url) {
@@ -213,7 +242,7 @@
213
242
  return new Promise(function (resolve, reject) {
214
243
  __request(that.options.method || "post", url, headers, {
215
244
  query: fragmentedQuery,
216
- variables: that.cleanAutoTypeAnnotations(variables)
245
+ variables: that.cleanAutoDeclareAnnotations(variables)
217
246
  }, function (response, status) {
218
247
  if (status == 200) {
219
248
  if (response.errors) {
@@ -239,41 +268,50 @@
239
268
  function helper(query) {
240
269
  if (__isTagCall(query)) {
241
270
  that.__prefix = this.prefix
271
+ that.__suffix = this.suffix
242
272
  var result = that.run(that.ql.apply(that, arguments))
243
273
  that.__prefix = ""
274
+ that.__suffix = ""
244
275
  return result
245
276
  }
246
- var caller = sender(this.prefix + " " + query)
277
+ var caller = sender(this.prefix + " " + query + " " + this.suffix)
247
278
  if (arguments.length > 1) {
248
279
  return caller.apply(null, Array.prototype.slice.call(arguments, 1))
249
280
  } else {
250
281
  return caller
251
282
  }
252
283
  }
253
-
254
- this.mutate = helper.bind({prefix: "mutation"})
255
- this.query = helper.bind({prefix: "query"})
256
- this.subscribe = helper.bind({prefix: "subscription"})
257
-
258
- var helperMethods = ['mutate', 'query', 'subscribe']
259
- helperMethods.forEach(function (m) {
260
- that[m].run = function (query) {
261
- return that[m](query, {})
284
+
285
+ var helpers = [
286
+ {method: 'mutate', type: 'mutation'},
287
+ {method: 'query', type: 'query'},
288
+ {method: 'subscribe', type: 'subscription'}
289
+ ]
290
+ helpers.forEach(function (m) {
291
+ that[m.method] = function (query, options) {
292
+ if (that.options.alwaysAutodeclare === true || (options && options.declare === true)) {
293
+ return helper.call({prefix: m.type + " (@autodeclare) {", suffix: "}"}, query)
294
+ } else {
295
+ return helper.call({prefix: m.type, suffix: ""}, query)
296
+ }
297
+ }
298
+ that[m.method].run = function (query) {
299
+ return that[m.method](query, {})
262
300
  }
263
301
  })
264
302
  this.run = function (query) {
265
303
  return sender(query, {})
266
304
  }
267
305
  }
268
-
306
+
269
307
  GraphQLClient.prototype.fragments = function () {
270
308
  return this._fragments
271
309
  }
272
-
310
+
273
311
  GraphQLClient.prototype.getOptions = function () {
274
312
  return this.options
275
313
  }
276
-
314
+
277
315
  GraphQLClient.prototype.fragment = function (fragment) {
278
316
  if (typeof fragment == 'string') {
279
317
  var _fragment = this._fragments[fragment.replace(/\./g, FRAGMENT_SEPERATOR)]
@@ -287,17 +325,20 @@
287
325
  return this._fragments
288
326
  }
289
327
  }
290
-
328
+
291
329
  GraphQLClient.prototype.ql = function (strings) {
292
330
  var that = this
293
331
  fragments = Array.prototype.slice.call(arguments, 1)
294
332
  fragments = fragments.map(function (fragment) {
295
- return fragment.match(/fragment\s+([^\s]*)\s/)[1]
333
+ if (typeof fragment == 'string') {
334
+ return fragment.match(/fragment\s+([^\s]*)\s/)[1]
335
+ }
296
336
  })
297
- var query = this.buildQuery(strings.reduce(function (acc, seg, i) {
337
+ var query = (typeof strings == 'string') ? strings : strings.reduce(function (acc, seg, i) {
298
338
  return acc + fragments[i - 1] + seg
299
- }))
300
- query = ((this.__prefix||"") + " " + query).trim()
339
+ })
340
+ query = this.buildQuery(query)
341
+ query = ((this.__prefix||"") + " " + query + " " + (this.__suffix||"")).trim()
301
342
  return query
302
343
  }
303
344
 
@@ -1 +1 @@
1
- !function(){function a(){var b={},c=!1,d=0,e=arguments.length;"[object Boolean]"==Object.prototype.toString.call(arguments[0])&&(c=arguments[0],d++);for(var f=function(d){for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&&(c&&"[object Object]"==Object.prototype.toString.call(d[e])?b[e]=a(!0,b[e],d[e]):b[e]=d[e])};e>d;d++){var g=arguments[d];f(g)}return b}function b(a,b,c,d,e){var f=new XMLHttpRequest;f.open(a,b,!0),f.setRequestHeader("Content-type","application/x-www-form-urlencoded"),f.setRequestHeader("Accept","application/json");for(var g in c)f.setRequestHeader(g,c[g]);f.onerror=function(){e(f,f.status)},f.onload=function(){e(JSON.parse(f.responseText),f.status)},f.send("query="+escape(d.query)+"&variables="+escape(JSON.stringify(d.variables)))}function c(a){return"[object Array]"==Object.prototype.toString.call(a)&&a.raw}function d(a,b){if(!(this instanceof d)){var c=new d(a,b,!0),e=c._sender;for(var f in c)"function"==typeof c[f]&&(e[f]=c[f].bind(c));return e}if(arguments[2]!==!0)throw"You cannot create GraphQLClient instance. Please call GraphQLClient as function.";b||(b={}),b.fragments||(b.fragments={}),this.options=b,this._fragments=this.buildFragments(b.fragments),this._sender=this.createSenderFunction(a),this.createHelpers(this._sender)}FRAGMENT_SEPERATOR="_",d.AUTOTYPE_PATTERN=/\(@autotype\)/,d.FRAGMENT_PATTERN=/\.\.\.\s*([A-Za-z0-9\.\_]+)/g,d.prototype.flatten=function(a){var b,c=arguments[1]||"",d=arguments[2]||{};for(b in a)a.hasOwnProperty(b)&&("object"==typeof a[b]?this.flatten(a[b],c+b+FRAGMENT_SEPERATOR,d):d[c+b]=a[b]);return d},d.prototype.fragmentPath=function(a,b){var c=new Function("fragments","return fragments."+b.replace(/\./g,FRAGMENT_SEPERATOR)),d=c(a);if("on"!=b&&(!d||"string"!=typeof d))throw"Fragment "+b+" not found";return d},d.prototype.collectFragments=function(a,b){var c=this,e=d.FRAGMENT_PATTERN,f=[];return(a.match(e)||[]).forEach(function(a){var d=a.replace(e,function(a,b){return b}),a=c.fragmentPath(b,d);if(a){var g=new RegExp(e.source.replace(/\((.*)\)/,d));if(a.match(g))throw"Recursive fragment usage detected on "+d+".";f.push(a);var h=f.filter(function(a){return a.match(new RegExp("fragment "+d))});h.length>0&&e.test(a)&&c.collectFragments(a,b).forEach(function(a){f.unshift(a)})}}),f},d.prototype.processQuery=function(a,b){var c=d.FRAGMENT_PATTERN,e=this.collectFragments(a,b);return a=a.replace(c,function(a,b){return"... "+b.split(".").join(FRAGMENT_SEPERATOR)}),[a].concat(e.filter(function(b){return!a.match(b)})).join("\n")},d.prototype.autoType=function(a,b){var c={string:"String",number:"Int","boolean":"Boolean"};return a.replace(d.AUTOTYPE_PATTERN,function(){var a=[];for(var d in b){var e=b[d],f=d.split("!"),g=f[1]||c[typeof e];g&&a.push("$"+f[0]+": "+g+"!")}return a=a.join(", "),"("+a+")"})},d.prototype.cleanAutoTypeAnnotations=function(a){a||(a={});var b={};for(var c in a){var d=a[c],e=c.split("!");b[e[0]]=d}return b},d.prototype.buildFragments=function(a){var b=this;a=this.flatten(a||{});var c={};for(var d in a){var e=a[d];"object"==typeof e?c[d]=b.buildFragments(e):c[d]="\nfragment "+d+" "+e}return c},d.prototype.buildQuery=function(a,b){return this.autoType(this.processQuery(a,this._fragments,b),b)},d.prototype.createSenderFunction=function(d){var e=this;return function(f){if(c(f))return e.run(e.ql.apply(e,arguments));var g=function(c,g){g||(g={}),c||(c={});var h=e.buildQuery(f,c);return headers=a(e.options.headers||{},g.headers||{}),new Promise(function(a,f){b(e.options.method||"post",d,headers,{query:h,variables:e.cleanAutoTypeAnnotations(c)},function(b,c){200==c?b.errors?f(b.errors):b.data&&a(b.data):f(b)})})};return arguments.length>1?g.apply(null,Array.prototype.slice.call(arguments,1)):g}},d.prototype.createHelpers=function(a){function b(b){if(c(b)){d.__prefix=this.prefix;var e=d.run(d.ql.apply(d,arguments));return d.__prefix="",e}var f=a(this.prefix+" "+b);return arguments.length>1?f.apply(null,Array.prototype.slice.call(arguments,1)):f}var d=this;this.mutate=b.bind({prefix:"mutation"}),this.query=b.bind({prefix:"query"}),this.subscribe=b.bind({prefix:"subscription"});var e=["mutate","query","subscribe"];e.forEach(function(a){d[a].run=function(b){return d[a](b,{})}}),this.run=function(b){return a(b,{})}},d.prototype.fragments=function(){return this._fragments},d.prototype.getOptions=function(){return this.options},d.prototype.fragment=function(b){if("string"==typeof b){var c=this._fragments[b.replace(/\./g,FRAGMENT_SEPERATOR)];if(!c)throw"Fragment "+b+" not found!";return c.trim()}return this.options.fragments=a(!0,this.options.fragments,b),this._fragments=this.buildFragments(this.options.fragments),this._fragments},d.prototype.ql=function(a){fragments=Array.prototype.slice.call(arguments,1),fragments=fragments.map(function(a){return a.match(/fragment\s+([^\s]*)\s/)[1]});var b=this.buildQuery(a.reduce(function(a,b,c){return a+fragments[c-1]+b}));return b=((this.__prefix||"")+" "+b).trim()},function(a,b){"function"==typeof define&&define.amd?define(function(){return a.graphql=b(d)}):"object"==typeof module&&module.exports?module.exports=b(a.GraphQLClient):a.graphql=b(a.GraphQLClient)}(this,function(){return d})}();
1
+ !function(){function a(){var b={},c=!1,d=0,e=arguments.length;"[object Boolean]"==Object.prototype.toString.call(arguments[0])&&(c=arguments[0],d++);for(var f=function(d){for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&&(c&&"[object Object]"==Object.prototype.toString.call(d[e])?b[e]=a(!0,b[e],d[e]):b[e]=d[e])};e>d;d++){var g=arguments[d];f(g)}return b}function b(){if(window.XMLHttpRequest)return new window.XMLHttpRequest;try{return new ActiveXObject("MSXML2.XMLHTTP.3.0")}catch(a){return null}}function c(c,d,e,f,g){var h="query="+escape(f.query)+"&variables="+escape(JSON.stringify(f.variables));if("undefined"!=typeof XMLHttpRequest){var i=b();i.open(c,d,!0),i.setRequestHeader("Content-type","application/x-www-form-urlencoded"),i.setRequestHeader("Accept","application/json");for(var j in e)i.setRequestHeader(j,e[j]);i.onerror=function(){g(i,i.status)},i.onload=function(){g(JSON.parse(i.responseText),i.status)},i.send(h)}else if("function"==typeof require){var k=require("http"),l=require("url"),m=l.parse(d),n=k.request({protocol:m.protocol,hostname:m.hostname,port:m.port,path:m.path,method:"POST",headers:a({"Content-type":"application/x-www-form-urlencoded",Accept:"application/json"},e)},function(a){var b="";a.setEncoding("utf8"),a.on("data",function(a){b+=a}),a.on("end",function(){g(JSON.parse(b),a.statusCode)})});n.write(h),n.end()}}function d(a){return"[object Array]"==Object.prototype.toString.call(a)&&a.raw}function e(a,b){if(!(this instanceof e)){var c=new e(a,b,!0),d=c._sender;for(var f in c)"function"==typeof c[f]&&(d[f]=c[f].bind(c),c[f].declare&&(d[f].declare=c[f].declare.bind(c)),c[f].run&&(d[f].run=c[f].run.bind(c)));return d}if(arguments[2]!==!0)throw"You cannot create GraphQLClient instance. Please call GraphQLClient as function.";b||(b={}),b.fragments||(b.fragments={}),this.options=b,this._fragments=this.buildFragments(b.fragments),this._sender=this.createSenderFunction(a),this.createHelpers(this._sender)}FRAGMENT_SEPERATOR="_",e.AUTODECLARE_PATTERN=/\(@autodeclare\)|\(@autotype\)/,e.FRAGMENT_PATTERN=/\.\.\.\s*([A-Za-z0-9\.\_]+)/g,e.prototype.flatten=function(a){var b,c=arguments[1]||"",d=arguments[2]||{};for(b in a)a.hasOwnProperty(b)&&("object"==typeof a[b]?this.flatten(a[b],c+b+FRAGMENT_SEPERATOR,d):d[c+b]=a[b]);return d},e.prototype.fragmentPath=function(a,b){var c=new Function("fragments","return fragments."+b.replace(/\./g,FRAGMENT_SEPERATOR)),d=c(a);if("on"!=b&&(!d||"string"!=typeof d))throw"Fragment "+b+" not found";return d},e.prototype.collectFragments=function(a,b){var c=this,d=e.FRAGMENT_PATTERN,f=[];return(a.match(d)||[]).forEach(function(a){var e=a.replace(d,function(a,b){return b}),a=c.fragmentPath(b,e);if(a){var g=new RegExp(d.source.replace(/\((.*)\)/,e));if(a.match(g))throw"Recursive fragment usage detected on "+e+".";f.push(a);var h=f.filter(function(a){return a.match(new RegExp("fragment "+e))});h.length>0&&d.test(a)&&c.collectFragments(a,b).forEach(function(a){f.unshift(a)})}}),f},e.prototype.processQuery=function(a,b){var c=e.FRAGMENT_PATTERN,d=this.collectFragments(a,b);return a=a.replace(c,function(a,b){return"... "+b.split(".").join(FRAGMENT_SEPERATOR)}),[a].concat(d.filter(function(b){return!a.match(b)})).join("\n")},e.prototype.autoDeclare=function(a,b){var c={string:"String",number:"Int","boolean":"Boolean"};return a.replace(e.AUTODECLARE_PATTERN,function(){var a=[];for(var d in b){var e=b[d],f=d.split("!"),g=f[1]||c[typeof e];g&&a.push("$"+f[0]+": "+g+"!")}return a=a.join(", "),a?"("+a+")":""})},e.prototype.cleanAutoDeclareAnnotations=function(a){a||(a={});var b={};for(var c in a){var d=a[c],e=c.split("!");b[e[0]]=d}return b},e.prototype.buildFragments=function(a){var b=this;a=this.flatten(a||{});var c={};for(var d in a){var e=a[d];"object"==typeof e?c[d]=b.buildFragments(e):c[d]="\nfragment "+d+" "+e}return c},e.prototype.buildQuery=function(a,b){return this.autoDeclare(this.processQuery(a,this._fragments,b),b)},e.prototype.createSenderFunction=function(b){var e=this;return function(f){if(d(f))return e.run(e.ql.apply(e,arguments));var g=function(d,g){g||(g={}),d||(d={});var h=e.buildQuery(f,d);return headers=a(e.options.headers||{},g.headers||{}),new Promise(function(a,f){c(e.options.method||"post",b,headers,{query:h,variables:e.cleanAutoDeclareAnnotations(d)},function(b,c){200==c?b.errors?f(b.errors):b.data&&a(b.data):f(b)})})};return arguments.length>1?g.apply(null,Array.prototype.slice.call(arguments,1)):g}},e.prototype.createHelpers=function(a){function b(b){if(d(b)){c.__prefix=this.prefix,c.__suffix=this.suffix;var e=c.run(c.ql.apply(c,arguments));return c.__prefix="",c.__suffix="",e}var f=a(this.prefix+" "+b+" "+this.suffix);return arguments.length>1?f.apply(null,Array.prototype.slice.call(arguments,1)):f}var c=this,e=[{method:"mutate",type:"mutation"},{method:"query",type:"query"},{method:"subscribe",type:"subscription"}];e.forEach(function(a){c[a.method]=function(d,e){return c.options.alwaysAutodeclare===!0||e&&e.declare===!0?b.call({prefix:a.type+" (@autodeclare) {",suffix:"}"},d):b.call({prefix:a.type,suffix:""},d)},c[a.method].run=function(b){return c[a.method](b,{})}}),this.run=function(b){return a(b,{})}},e.prototype.fragments=function(){return this._fragments},e.prototype.getOptions=function(){return this.options},e.prototype.fragment=function(b){if("string"==typeof b){var c=this._fragments[b.replace(/\./g,FRAGMENT_SEPERATOR)];if(!c)throw"Fragment "+b+" not found!";return c.trim()}return this.options.fragments=a(!0,this.options.fragments,b),this._fragments=this.buildFragments(this.options.fragments),this._fragments},e.prototype.ql=function(a){fragments=Array.prototype.slice.call(arguments,1),fragments=fragments.map(function(a){return"string"==typeof a?a.match(/fragment\s+([^\s]*)\s/)[1]:void 0});var b="string"==typeof a?a:a.reduce(function(a,b,c){return a+fragments[c-1]+b});return b=this.buildQuery(b),b=((this.__prefix||"")+" "+b+" "+(this.__suffix||"")).trim()},function(a,b){"function"==typeof define&&define.amd?define(function(){return a.graphql=b(e)}):"object"==typeof module&&module.exports?module.exports=b(a.GraphQLClient):a.graphql=b(a.GraphQLClient)}(this,function(){return e})}();
@@ -1,5 +1,5 @@
1
1
  module GraphQLJS
2
2
  module Rails
3
- VERSION = "0.3.5"
3
+ VERSION = "0.4.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: graphqljs-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fatih Kadir Akın