@reventlessdev/reventless-graphql-server 1.0.0-alpha.14 → 1.0.0-alpha.140
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1004 -0
- package/README.md +1 -1
- package/package.json +6 -6
- package/src/GraphQL_ServerInstance.res +59 -13
- package/src/GraphQL_ServerInstance.res.mjs +50 -7
- package/src/GraphQL_SubscriptionBridge.res +1 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,1010 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# 1.0.0-alpha.140 (2026-10-10)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# 1.0.0-alpha.139 (2026-10-08)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# 1.0.0-alpha.138 (2026-10-08)
|
|
23
|
+
|
|
24
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
# 1.0.0-alpha.137 (2026-10-08)
|
|
31
|
+
|
|
32
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
# 1.0.0-alpha.136 (2026-10-06)
|
|
39
|
+
|
|
40
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
# 1.0.0-alpha.135 (2026-10-01)
|
|
47
|
+
|
|
48
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
# 1.0.0-alpha.134 (2026-10-01)
|
|
55
|
+
|
|
56
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
# 1.0.0-alpha.133 (2026-10-01)
|
|
63
|
+
|
|
64
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
# 1.0.0-alpha.132 (2026-09-29)
|
|
71
|
+
|
|
72
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
# 1.0.0-alpha.131 (2026-09-28)
|
|
79
|
+
|
|
80
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
# 1.0.0-alpha.130 (2026-09-28)
|
|
87
|
+
|
|
88
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
# 1.0.0-alpha.129 (2026-09-28)
|
|
95
|
+
|
|
96
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
# 1.0.0-alpha.128 (2026-09-28)
|
|
103
|
+
|
|
104
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
# 1.0.0-alpha.127 (2026-09-27)
|
|
111
|
+
|
|
112
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
# 1.0.0-alpha.126 (2026-09-25)
|
|
119
|
+
|
|
120
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
# 1.0.0-alpha.125 (2026-09-25)
|
|
127
|
+
|
|
128
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
# 1.0.0-alpha.124 (2026-09-25)
|
|
135
|
+
|
|
136
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
# 1.0.0-alpha.123 (2026-09-25)
|
|
143
|
+
|
|
144
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
# 1.0.0-alpha.122 (2026-09-24)
|
|
151
|
+
|
|
152
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
# 1.0.0-alpha.121 (2026-09-24)
|
|
159
|
+
|
|
160
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
# 1.0.0-alpha.120 (2026-09-23)
|
|
167
|
+
|
|
168
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
# 1.0.0-alpha.119 (2026-09-23)
|
|
175
|
+
|
|
176
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
# 1.0.0-alpha.118 (2026-09-22)
|
|
183
|
+
|
|
184
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
# 1.0.0-alpha.117 (2026-09-21)
|
|
191
|
+
|
|
192
|
+
### Bug Fixes
|
|
193
|
+
|
|
194
|
+
* **deps:** update rescript to 12.3.1 ([ea1ce37](https://github.com/ReventlessDev/reventless-core/commit/ea1ce377297640f6d0d360e6c84c778d59ecbcc5))
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
# 1.0.0-alpha.116 (2026-09-21)
|
|
198
|
+
|
|
199
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
# 1.0.0-alpha.115 (2026-09-21)
|
|
206
|
+
|
|
207
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
# 1.0.0-alpha.114 (2026-09-21)
|
|
214
|
+
|
|
215
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
# 1.0.0-alpha.113 (2026-09-20)
|
|
222
|
+
|
|
223
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
# 1.0.0-alpha.112 (2026-09-20)
|
|
230
|
+
|
|
231
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
# 1.0.0-alpha.111 (2026-09-16)
|
|
238
|
+
|
|
239
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
# 1.0.0-alpha.110 (2026-09-11)
|
|
246
|
+
|
|
247
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
# 1.0.0-alpha.109 (2026-09-09)
|
|
254
|
+
|
|
255
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
256
|
+
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
# 1.0.0-alpha.108 (2026-09-08)
|
|
262
|
+
|
|
263
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
# 1.0.0-alpha.107 (2026-09-08)
|
|
270
|
+
|
|
271
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
272
|
+
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
# 1.0.0-alpha.106 (2026-09-07)
|
|
278
|
+
|
|
279
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
# 1.0.0-alpha.105 (2026-09-07)
|
|
286
|
+
|
|
287
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
# 1.0.0-alpha.104 (2026-09-04)
|
|
294
|
+
|
|
295
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
296
|
+
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
# 1.0.0-alpha.103 (2026-09-04)
|
|
302
|
+
|
|
303
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
# 1.0.0-alpha.102 (2026-09-02)
|
|
310
|
+
|
|
311
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
# 1.0.0-alpha.101 (2026-09-01)
|
|
318
|
+
|
|
319
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
# 1.0.0-alpha.100 (2026-09-01)
|
|
326
|
+
|
|
327
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
# 1.0.0-alpha.99 (2026-08-27)
|
|
334
|
+
|
|
335
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
# 1.0.0-alpha.98 (2026-08-23)
|
|
342
|
+
|
|
343
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
|
|
349
|
+
# 1.0.0-alpha.97 (2026-08-23)
|
|
350
|
+
|
|
351
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
# 1.0.0-alpha.96 (2026-08-23)
|
|
358
|
+
|
|
359
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
# 1.0.0-alpha.95 (2026-08-22)
|
|
366
|
+
|
|
367
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
# 1.0.0-alpha.94 (2026-08-21)
|
|
374
|
+
|
|
375
|
+
### Bug Fixes
|
|
376
|
+
|
|
377
|
+
* **core:** make @resolves/[@resolves](https://github.com/resolves)Many work end to end ([4c52957](https://github.com/ReventlessDev/reventless-core/commit/4c5295759dcb4b3eda4f0f4f2c1bc387fed88fcb))
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
# 1.0.0-alpha.93 (2026-08-20)
|
|
381
|
+
|
|
382
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
|
|
388
|
+
# 1.0.0-alpha.92 (2026-08-20)
|
|
389
|
+
|
|
390
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
391
|
+
|
|
392
|
+
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
|
|
396
|
+
# 1.0.0-alpha.91 (2026-08-20)
|
|
397
|
+
|
|
398
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
399
|
+
|
|
400
|
+
|
|
401
|
+
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
# 1.0.0-alpha.90 (2026-08-20)
|
|
405
|
+
|
|
406
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
# 1.0.0-alpha.89 (2026-08-19)
|
|
413
|
+
|
|
414
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
# 1.0.0-alpha.88 (2026-08-18)
|
|
421
|
+
|
|
422
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
423
|
+
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
# 1.0.0-alpha.87 (2026-08-18)
|
|
429
|
+
|
|
430
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
|
|
434
|
+
|
|
435
|
+
|
|
436
|
+
# 1.0.0-alpha.86 (2026-08-16)
|
|
437
|
+
|
|
438
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
|
|
442
|
+
|
|
443
|
+
|
|
444
|
+
# 1.0.0-alpha.85 (2026-08-16)
|
|
445
|
+
|
|
446
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
# 1.0.0-alpha.84 (2026-08-15)
|
|
453
|
+
|
|
454
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
455
|
+
|
|
456
|
+
|
|
457
|
+
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
# 1.0.0-alpha.83 (2026-08-15)
|
|
461
|
+
|
|
462
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
463
|
+
|
|
464
|
+
|
|
465
|
+
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
# 1.0.0-alpha.82 (2026-08-14)
|
|
469
|
+
|
|
470
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
471
|
+
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
|
|
475
|
+
|
|
476
|
+
# 1.0.0-alpha.81 (2026-08-14)
|
|
477
|
+
|
|
478
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
479
|
+
|
|
480
|
+
|
|
481
|
+
|
|
482
|
+
|
|
483
|
+
|
|
484
|
+
# 1.0.0-alpha.80 (2026-08-13)
|
|
485
|
+
|
|
486
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
487
|
+
|
|
488
|
+
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
|
|
492
|
+
# 1.0.0-alpha.79 (2026-08-13)
|
|
493
|
+
|
|
494
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
495
|
+
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
|
|
499
|
+
|
|
500
|
+
# 1.0.0-alpha.78 (2026-08-13)
|
|
501
|
+
|
|
502
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
503
|
+
|
|
504
|
+
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
|
|
508
|
+
# 1.0.0-alpha.77 (2026-08-12)
|
|
509
|
+
|
|
510
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
511
|
+
|
|
512
|
+
|
|
513
|
+
|
|
514
|
+
|
|
515
|
+
|
|
516
|
+
# 1.0.0-alpha.76 (2026-08-12)
|
|
517
|
+
|
|
518
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
519
|
+
|
|
520
|
+
|
|
521
|
+
|
|
522
|
+
|
|
523
|
+
|
|
524
|
+
# 1.0.0-alpha.75 (2026-08-12)
|
|
525
|
+
|
|
526
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
|
|
530
|
+
|
|
531
|
+
|
|
532
|
+
# 1.0.0-alpha.74 (2026-08-12)
|
|
533
|
+
|
|
534
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
535
|
+
|
|
536
|
+
|
|
537
|
+
|
|
538
|
+
|
|
539
|
+
|
|
540
|
+
# 1.0.0-alpha.73 (2026-08-12)
|
|
541
|
+
|
|
542
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
543
|
+
|
|
544
|
+
|
|
545
|
+
|
|
546
|
+
|
|
547
|
+
|
|
548
|
+
# 1.0.0-alpha.72 (2026-08-11)
|
|
549
|
+
|
|
550
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
551
|
+
|
|
552
|
+
|
|
553
|
+
|
|
554
|
+
|
|
555
|
+
|
|
556
|
+
# 1.0.0-alpha.71 (2026-08-10)
|
|
557
|
+
|
|
558
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
|
|
562
|
+
|
|
563
|
+
|
|
564
|
+
# 1.0.0-alpha.70 (2026-08-10)
|
|
565
|
+
|
|
566
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
567
|
+
|
|
568
|
+
|
|
569
|
+
|
|
570
|
+
|
|
571
|
+
|
|
572
|
+
# 1.0.0-alpha.69 (2026-08-09)
|
|
573
|
+
|
|
574
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
575
|
+
|
|
576
|
+
|
|
577
|
+
|
|
578
|
+
|
|
579
|
+
|
|
580
|
+
# 1.0.0-alpha.68 (2026-08-09)
|
|
581
|
+
|
|
582
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
583
|
+
|
|
584
|
+
|
|
585
|
+
|
|
586
|
+
|
|
587
|
+
|
|
588
|
+
# 1.0.0-alpha.67 (2026-08-09)
|
|
589
|
+
|
|
590
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
591
|
+
|
|
592
|
+
|
|
593
|
+
|
|
594
|
+
|
|
595
|
+
|
|
596
|
+
# 1.0.0-alpha.66 (2026-08-09)
|
|
597
|
+
|
|
598
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
599
|
+
|
|
600
|
+
|
|
601
|
+
|
|
602
|
+
|
|
603
|
+
|
|
604
|
+
# 1.0.0-alpha.65 (2026-08-08)
|
|
605
|
+
|
|
606
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
607
|
+
|
|
608
|
+
|
|
609
|
+
|
|
610
|
+
|
|
611
|
+
|
|
612
|
+
# 1.0.0-alpha.64 (2026-08-08)
|
|
613
|
+
|
|
614
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
615
|
+
|
|
616
|
+
|
|
617
|
+
|
|
618
|
+
|
|
619
|
+
|
|
620
|
+
# 1.0.0-alpha.63 (2026-08-08)
|
|
621
|
+
|
|
622
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
623
|
+
|
|
624
|
+
|
|
625
|
+
|
|
626
|
+
|
|
627
|
+
|
|
628
|
+
# 1.0.0-alpha.62 (2026-08-07)
|
|
629
|
+
|
|
630
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
631
|
+
|
|
632
|
+
|
|
633
|
+
|
|
634
|
+
|
|
635
|
+
|
|
636
|
+
# 1.0.0-alpha.61 (2026-08-05)
|
|
637
|
+
|
|
638
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
639
|
+
|
|
640
|
+
|
|
641
|
+
|
|
642
|
+
|
|
643
|
+
|
|
644
|
+
# 1.0.0-alpha.60 (2026-08-04)
|
|
645
|
+
|
|
646
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
647
|
+
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
|
|
651
|
+
|
|
652
|
+
# 1.0.0-alpha.59 (2026-08-04)
|
|
653
|
+
|
|
654
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
655
|
+
|
|
656
|
+
|
|
657
|
+
|
|
658
|
+
|
|
659
|
+
|
|
660
|
+
# 1.0.0-alpha.58 (2026-08-04)
|
|
661
|
+
|
|
662
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
663
|
+
|
|
664
|
+
|
|
665
|
+
|
|
666
|
+
|
|
667
|
+
|
|
668
|
+
# 1.0.0-alpha.57 (2026-08-03)
|
|
669
|
+
|
|
670
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
671
|
+
|
|
672
|
+
|
|
673
|
+
|
|
674
|
+
|
|
675
|
+
|
|
676
|
+
# 1.0.0-alpha.56 (2026-08-03)
|
|
677
|
+
|
|
678
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
679
|
+
|
|
680
|
+
|
|
681
|
+
|
|
682
|
+
|
|
683
|
+
|
|
684
|
+
# 1.0.0-alpha.55 (2026-08-03)
|
|
685
|
+
|
|
686
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
|
|
692
|
+
# 1.0.0-alpha.54 (2026-08-03)
|
|
693
|
+
|
|
694
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
695
|
+
|
|
696
|
+
|
|
697
|
+
|
|
698
|
+
|
|
699
|
+
|
|
700
|
+
# 1.0.0-alpha.53 (2026-08-02)
|
|
701
|
+
|
|
702
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
703
|
+
|
|
704
|
+
|
|
705
|
+
|
|
706
|
+
|
|
707
|
+
|
|
708
|
+
# 1.0.0-alpha.52 (2026-08-02)
|
|
709
|
+
|
|
710
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
711
|
+
|
|
712
|
+
|
|
713
|
+
|
|
714
|
+
|
|
715
|
+
|
|
716
|
+
# 1.0.0-alpha.51 (2026-08-02)
|
|
717
|
+
|
|
718
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
719
|
+
|
|
720
|
+
|
|
721
|
+
|
|
722
|
+
|
|
723
|
+
|
|
724
|
+
# 1.0.0-alpha.50 (2026-08-02)
|
|
725
|
+
|
|
726
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
727
|
+
|
|
728
|
+
|
|
729
|
+
|
|
730
|
+
|
|
731
|
+
|
|
732
|
+
# 1.0.0-alpha.49 (2026-08-02)
|
|
733
|
+
|
|
734
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
735
|
+
|
|
736
|
+
|
|
737
|
+
|
|
738
|
+
|
|
739
|
+
|
|
740
|
+
# 1.0.0-alpha.48 (2026-08-01)
|
|
741
|
+
|
|
742
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
743
|
+
|
|
744
|
+
|
|
745
|
+
|
|
746
|
+
|
|
747
|
+
|
|
748
|
+
# 1.0.0-alpha.47 (2026-08-01)
|
|
749
|
+
|
|
750
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
751
|
+
|
|
752
|
+
|
|
753
|
+
|
|
754
|
+
|
|
755
|
+
|
|
756
|
+
# 1.0.0-alpha.46 (2026-08-01)
|
|
757
|
+
|
|
758
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
759
|
+
|
|
760
|
+
|
|
761
|
+
|
|
762
|
+
|
|
763
|
+
|
|
764
|
+
# 1.0.0-alpha.45 (2026-08-01)
|
|
765
|
+
|
|
766
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
767
|
+
|
|
768
|
+
|
|
769
|
+
|
|
770
|
+
|
|
771
|
+
|
|
772
|
+
# 1.0.0-alpha.44 (2026-07-31)
|
|
773
|
+
|
|
774
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
775
|
+
|
|
776
|
+
|
|
777
|
+
|
|
778
|
+
|
|
779
|
+
|
|
780
|
+
# 1.0.0-alpha.43 (2026-07-30)
|
|
781
|
+
|
|
782
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
783
|
+
|
|
784
|
+
|
|
785
|
+
|
|
786
|
+
|
|
787
|
+
|
|
788
|
+
# 1.0.0-alpha.42 (2026-07-30)
|
|
789
|
+
|
|
790
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
791
|
+
|
|
792
|
+
|
|
793
|
+
|
|
794
|
+
|
|
795
|
+
|
|
796
|
+
# 1.0.0-alpha.41 (2026-07-30)
|
|
797
|
+
|
|
798
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
799
|
+
|
|
800
|
+
|
|
801
|
+
|
|
802
|
+
|
|
803
|
+
|
|
804
|
+
# 1.0.0-alpha.40 (2026-07-30)
|
|
805
|
+
|
|
806
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
807
|
+
|
|
808
|
+
|
|
809
|
+
|
|
810
|
+
|
|
811
|
+
|
|
812
|
+
# 1.0.0-alpha.39 (2026-07-29)
|
|
813
|
+
|
|
814
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
815
|
+
|
|
816
|
+
|
|
817
|
+
|
|
818
|
+
|
|
819
|
+
|
|
820
|
+
# 1.0.0-alpha.38 (2026-07-28)
|
|
821
|
+
|
|
822
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
823
|
+
|
|
824
|
+
|
|
825
|
+
|
|
826
|
+
|
|
827
|
+
|
|
828
|
+
# 1.0.0-alpha.37 (2026-07-28)
|
|
829
|
+
|
|
830
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
831
|
+
|
|
832
|
+
|
|
833
|
+
|
|
834
|
+
|
|
835
|
+
|
|
836
|
+
# 1.0.0-alpha.36 (2026-07-28)
|
|
837
|
+
|
|
838
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
839
|
+
|
|
840
|
+
|
|
841
|
+
|
|
842
|
+
|
|
843
|
+
|
|
844
|
+
# 1.0.0-alpha.35 (2026-07-28)
|
|
845
|
+
|
|
846
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
847
|
+
|
|
848
|
+
|
|
849
|
+
|
|
850
|
+
|
|
851
|
+
|
|
852
|
+
# 1.0.0-alpha.34 (2026-07-27)
|
|
853
|
+
|
|
854
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
855
|
+
|
|
856
|
+
|
|
857
|
+
|
|
858
|
+
|
|
859
|
+
|
|
860
|
+
# 1.0.0-alpha.33 (2026-07-27)
|
|
861
|
+
|
|
862
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
863
|
+
|
|
864
|
+
|
|
865
|
+
|
|
866
|
+
|
|
867
|
+
|
|
868
|
+
# 1.0.0-alpha.32 (2026-07-27)
|
|
869
|
+
|
|
870
|
+
### Bug Fixes
|
|
871
|
+
|
|
872
|
+
* **graphql:** keep a repeat mutation registration from duplicating SDL ([b54e844](https://github.com/ReventlessDev/reventless-core/commit/b54e8446236e16196a40a1a7df9f7ba84b03b167))
|
|
873
|
+
|
|
874
|
+
|
|
875
|
+
# 1.0.0-alpha.31 (2026-07-27)
|
|
876
|
+
|
|
877
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
878
|
+
|
|
879
|
+
|
|
880
|
+
|
|
881
|
+
|
|
882
|
+
|
|
883
|
+
# 1.0.0-alpha.30 (2026-07-27)
|
|
884
|
+
|
|
885
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
886
|
+
|
|
887
|
+
|
|
888
|
+
|
|
889
|
+
|
|
890
|
+
|
|
891
|
+
# 1.0.0-alpha.29 (2026-07-26)
|
|
892
|
+
|
|
893
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
894
|
+
|
|
895
|
+
|
|
896
|
+
|
|
897
|
+
|
|
898
|
+
|
|
899
|
+
# 1.0.0-alpha.28 (2026-07-26)
|
|
900
|
+
|
|
901
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
902
|
+
|
|
903
|
+
|
|
904
|
+
|
|
905
|
+
|
|
906
|
+
|
|
907
|
+
# 1.0.0-alpha.27 (2026-07-24)
|
|
908
|
+
|
|
909
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
910
|
+
|
|
911
|
+
|
|
912
|
+
|
|
913
|
+
|
|
914
|
+
|
|
915
|
+
# 1.0.0-alpha.26 (2026-07-23)
|
|
916
|
+
|
|
917
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
918
|
+
|
|
919
|
+
|
|
920
|
+
|
|
921
|
+
|
|
922
|
+
|
|
923
|
+
# 1.0.0-alpha.25 (2026-07-22)
|
|
924
|
+
|
|
925
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
926
|
+
|
|
927
|
+
|
|
928
|
+
|
|
929
|
+
|
|
930
|
+
|
|
931
|
+
# 1.0.0-alpha.24 (2026-07-22)
|
|
932
|
+
|
|
933
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
934
|
+
|
|
935
|
+
|
|
936
|
+
|
|
937
|
+
|
|
938
|
+
|
|
939
|
+
# 1.0.0-alpha.23 (2026-07-22)
|
|
940
|
+
|
|
941
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
942
|
+
|
|
943
|
+
|
|
944
|
+
|
|
945
|
+
|
|
946
|
+
|
|
947
|
+
# 1.0.0-alpha.22 (2026-07-22)
|
|
948
|
+
|
|
949
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
950
|
+
|
|
951
|
+
|
|
952
|
+
|
|
953
|
+
|
|
954
|
+
|
|
955
|
+
# 1.0.0-alpha.21 (2026-07-21)
|
|
956
|
+
|
|
957
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
958
|
+
|
|
959
|
+
|
|
960
|
+
|
|
961
|
+
|
|
962
|
+
|
|
963
|
+
# 1.0.0-alpha.20 (2026-07-20)
|
|
964
|
+
|
|
965
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
966
|
+
|
|
967
|
+
|
|
968
|
+
|
|
969
|
+
|
|
970
|
+
|
|
971
|
+
# 1.0.0-alpha.19 (2026-07-17)
|
|
972
|
+
|
|
973
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
974
|
+
|
|
975
|
+
|
|
976
|
+
|
|
977
|
+
|
|
978
|
+
|
|
979
|
+
# 1.0.0-alpha.18 (2026-07-17)
|
|
980
|
+
|
|
981
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
982
|
+
|
|
983
|
+
|
|
984
|
+
|
|
985
|
+
|
|
986
|
+
|
|
987
|
+
# 1.0.0-alpha.17 (2026-07-16)
|
|
988
|
+
|
|
989
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
990
|
+
|
|
991
|
+
|
|
992
|
+
|
|
993
|
+
|
|
994
|
+
|
|
995
|
+
# 1.0.0-alpha.16 (2026-07-15)
|
|
996
|
+
|
|
997
|
+
**Note:** Version bump only for package @reventlessdev/reventless-graphql-server
|
|
998
|
+
|
|
999
|
+
|
|
1000
|
+
|
|
1001
|
+
|
|
1002
|
+
|
|
1003
|
+
# 1.0.0-alpha.15 (2026-07-14)
|
|
1004
|
+
|
|
1005
|
+
### Features
|
|
1006
|
+
|
|
1007
|
+
* surface masked GraphQL resolver errors server-side (local + AWS) ([b3bca51](https://github.com/ReventlessDev/reventless-core/commit/b3bca51b539e40c604b3db338d570de6215ea837))
|
|
1008
|
+
|
|
1009
|
+
|
|
6
1010
|
# 1.0.0-alpha.14 (2026-07-14)
|
|
7
1011
|
|
|
8
1012
|
### Features
|
package/README.md
CHANGED
package/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reventlessdev/reventless-graphql-server",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.140",
|
|
4
4
|
"description": "Transport-neutral GraphQL server runtime for Reventless: schema-from-fragments, resolver registration, an HTTP + graphql-ws listener, and a subscription fan-out bridge with a pluggable PubSub backend",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@reventlessdev/rescript-graphql-yoga": "1.0.0-alpha.
|
|
8
|
-
"@reventlessdev/reventless-core": "3.0.0-alpha.
|
|
7
|
+
"@reventlessdev/rescript-graphql-yoga": "1.0.0-alpha.29",
|
|
8
|
+
"@reventlessdev/reventless-core": "3.0.0-alpha.292"
|
|
9
9
|
},
|
|
10
10
|
"devDependencies": {
|
|
11
|
-
"rescript": "
|
|
11
|
+
"rescript": "12.3.1"
|
|
12
12
|
},
|
|
13
13
|
"peerDependencies": {
|
|
14
|
-
"rescript": "^12.3.
|
|
14
|
+
"rescript": "^12.3.1"
|
|
15
15
|
},
|
|
16
16
|
"publishConfig": {
|
|
17
17
|
"registry": "https://registry.npmjs.org"
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"repository": {
|
|
20
20
|
"type": "git",
|
|
21
21
|
"url": "git+https://github.com/ReventlessDev/reventless-core.git",
|
|
22
|
-
"directory": "reventless/
|
|
22
|
+
"directory": "reventless/graphql-server"
|
|
23
23
|
},
|
|
24
24
|
"scripts": {
|
|
25
25
|
"build": "rescript build",
|
|
@@ -42,6 +42,11 @@ type t = {
|
|
|
42
42
|
registerQueries: (~sdlFields: array<string>, ~resolvers: dict<resolverFn>) => unit,
|
|
43
43
|
registerSubscriptions: (~sdlFields: array<string>, ~resolvers: dict<resolverFn>) => unit,
|
|
44
44
|
registerTypes: (~sdlTypes: array<string>) => unit,
|
|
45
|
+
/** Resolvers for fields of an object type rather than of a root type — the
|
|
46
|
+
cross-table fields `@resolves` / `@resolvesMany` add to a queryable. The
|
|
47
|
+
SDL for those fields comes from the plugin's schema fragment, so only the
|
|
48
|
+
resolver map is registered here. */
|
|
49
|
+
registerFieldResolvers: (~typeName: string, ~resolvers: dict<resolverFn>) => unit,
|
|
45
50
|
getMutationResolver: string => option<resolverFn>,
|
|
46
51
|
getQueryResolver: string => option<resolverFn>,
|
|
47
52
|
// `~contextFactory` is the yoga context factory — when supplied, requests
|
|
@@ -76,6 +81,7 @@ let make = (~label: string="GraphQL"): t => {
|
|
|
76
81
|
let mutationResolvers: ref<dict<resolverFn>> = ref(Dict.make())
|
|
77
82
|
let queryResolvers: ref<dict<resolverFn>> = ref(Dict.make())
|
|
78
83
|
let subscriptionResolvers: ref<dict<resolverFn>> = ref(Dict.make())
|
|
84
|
+
let fieldResolvers: ref<dict<dict<resolverFn>>> = ref(Dict.make())
|
|
79
85
|
let mutationFields: ref<array<string>> = ref([])
|
|
80
86
|
let queryFields: ref<array<string>> = ref([])
|
|
81
87
|
let subscriptionFields: ref<array<string>> = ref([])
|
|
@@ -85,7 +91,16 @@ let make = (~label: string="GraphQL"): t => {
|
|
|
85
91
|
let lastFullSdl: ref<option<string>> = ref(None)
|
|
86
92
|
|
|
87
93
|
let registerMutations = (~sdlFields: array<string>, ~resolvers: dict<resolverFn>) => {
|
|
88
|
-
|
|
94
|
+
// A mutation field has two legitimate writers: the admin base fragment
|
|
95
|
+
// carries the Plugin aggregate's lifecycle fields, and the aggregate
|
|
96
|
+
// auto-flow registers the same fields when the admin is constructed again
|
|
97
|
+
// for a later deploy onto the same server. buildASTSchema rejects a schema
|
|
98
|
+
// that defines a field twice, so keep the first SDL definition and drop
|
|
99
|
+
// repeats by field name — mirroring the resolver dict, where a repeat
|
|
100
|
+
// registration overwrites by key (last resolver wins).
|
|
101
|
+
let existing = Set.fromArray(mutationFields.contents->Array.map(extractFieldName))
|
|
102
|
+
let fresh = sdlFields->Array.filter(f => !(existing->Set.has(extractFieldName(f))))
|
|
103
|
+
mutationFields.contents = mutationFields.contents->Array.concat(fresh)
|
|
89
104
|
resolvers->Dict.toArray->Array.forEach(((k, v)) => mutationResolvers.contents->Dict.set(k, v))
|
|
90
105
|
}
|
|
91
106
|
|
|
@@ -96,9 +111,20 @@ let make = (~label: string="GraphQL"): t => {
|
|
|
96
111
|
|
|
97
112
|
let registerSubscriptions = (~sdlFields: array<string>, ~resolvers: dict<resolverFn>) => {
|
|
98
113
|
subscriptionFields.contents = subscriptionFields.contents->Array.concat(sdlFields)
|
|
99
|
-
resolvers
|
|
100
|
-
|
|
101
|
-
)
|
|
114
|
+
resolvers
|
|
115
|
+
->Dict.toArray
|
|
116
|
+
->Array.forEach(((k, v)) => subscriptionResolvers.contents->Dict.set(k, v))
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
let registerFieldResolvers = (~typeName: string, ~resolvers: dict<resolverFn>) => {
|
|
120
|
+
let forType = switch fieldResolvers.contents->Dict.get(typeName) {
|
|
121
|
+
| Some(d) => d
|
|
122
|
+
| None =>
|
|
123
|
+
let d = Dict.make()
|
|
124
|
+
fieldResolvers.contents->Dict.set(typeName, d)
|
|
125
|
+
d
|
|
126
|
+
}
|
|
127
|
+
resolvers->Dict.toArray->Array.forEach(((k, v)) => forType->Dict.set(k, v))
|
|
102
128
|
}
|
|
103
129
|
|
|
104
130
|
// Identical type blocks dedupe: shared-type registrations (e.g. the
|
|
@@ -120,9 +146,7 @@ let make = (~label: string="GraphQL"): t => {
|
|
|
120
146
|
|
|
121
147
|
let buildSdl = () => {
|
|
122
148
|
let typesSdl =
|
|
123
|
-
typeDefinitions.contents->Array.length > 0
|
|
124
|
-
? typeDefinitions.contents->Array.join("\n\n")
|
|
125
|
-
: ""
|
|
149
|
+
typeDefinitions.contents->Array.length > 0 ? typeDefinitions.contents->Array.join("\n\n") : ""
|
|
126
150
|
let mutations =
|
|
127
151
|
mutationFields.contents->Array.length > 0
|
|
128
152
|
? mutationFields.contents->Array.join("\n")
|
|
@@ -142,9 +166,7 @@ ${mutations}
|
|
|
142
166
|
? `\n\ntype Subscription {\n${subscriptionFields.contents->Array.join("\n")}\n}`
|
|
143
167
|
: ""
|
|
144
168
|
let base =
|
|
145
|
-
typesSdl->String.length > 0
|
|
146
|
-
? typesSdl ++ "\n\n" ++ queriesMutationsSdl
|
|
147
|
-
: queriesMutationsSdl
|
|
169
|
+
typesSdl->String.length > 0 ? typesSdl ++ "\n\n" ++ queriesMutationsSdl : queriesMutationsSdl
|
|
148
170
|
base ++ subscriptionsSdl
|
|
149
171
|
}
|
|
150
172
|
|
|
@@ -164,16 +186,35 @@ ${mutations}
|
|
|
164
186
|
if subscriptionResolvers.contents->Dict.keysToArray->Array.length > 0 {
|
|
165
187
|
resolvers->Dict.set("Subscription", subscriptionResolvers.contents)
|
|
166
188
|
}
|
|
189
|
+
fieldResolvers.contents
|
|
190
|
+
->Dict.toArray
|
|
191
|
+
->Array.forEach(((typeName, byField)) => resolvers->Dict.set(typeName, byField))
|
|
167
192
|
let sdl = buildSdl()
|
|
168
193
|
lastFullSdl.contents = Some(sdl)
|
|
169
194
|
let schema = YG.createSchema({"typeDefs": sdl, "resolvers": resolvers})
|
|
170
195
|
activeSchema.contents = Some(schema)
|
|
196
|
+
// Route yoga's own logging into the framework logger. error/warn ALWAYS
|
|
197
|
+
// surface (so a masked resolver failure — which yoga reports via logger.error
|
|
198
|
+
// with the original Error even when the client response is masked — is never
|
|
199
|
+
// swallowed), while verbose debug/info stay gated on GRAPHQL_DEBUG.
|
|
200
|
+
let yogaLogging: YG.yogaLogger = {
|
|
201
|
+
debug: a =>
|
|
202
|
+
if debug {
|
|
203
|
+
log.debug(~comp=label, YG.logArgToString(a))
|
|
204
|
+
},
|
|
205
|
+
info: a =>
|
|
206
|
+
if debug {
|
|
207
|
+
log.info(~comp=label, YG.logArgToString(a))
|
|
208
|
+
},
|
|
209
|
+
warn: a => log.warn(~comp=label, YG.logArgToString(a)),
|
|
210
|
+
error: a => log.error(~comp=label, YG.logArgToString(a)),
|
|
211
|
+
}
|
|
171
212
|
let yoga = switch contextFactory {
|
|
172
213
|
| Some(ctx) =>
|
|
173
214
|
YG.createYogaWithContext({
|
|
174
215
|
"schema": schema,
|
|
175
216
|
"graphiql": true,
|
|
176
|
-
"logging":
|
|
217
|
+
"logging": yogaLogging,
|
|
177
218
|
"maskedErrors": !debug,
|
|
178
219
|
"context": ctx,
|
|
179
220
|
})
|
|
@@ -181,7 +222,7 @@ ${mutations}
|
|
|
181
222
|
YG.createYoga({
|
|
182
223
|
"schema": schema,
|
|
183
224
|
"graphiql": true,
|
|
184
|
-
"logging":
|
|
225
|
+
"logging": yogaLogging,
|
|
185
226
|
"maskedErrors": !debug,
|
|
186
227
|
})
|
|
187
228
|
}
|
|
@@ -192,7 +233,10 @@ ${mutations}
|
|
|
192
233
|
if subscriptionResolvers.contents->Dict.keysToArray->Array.length > 0 {
|
|
193
234
|
let wss = YG.newWebSocketServer({"server": server, "path": "/graphql"})
|
|
194
235
|
YG.wsUseServer({"schema": schema}, wss)
|
|
195
|
-
log.info(
|
|
236
|
+
log.info(
|
|
237
|
+
~comp=label,
|
|
238
|
+
`graphql-ws subscriptions on ws://localhost:${port->Int.toString}/graphql`,
|
|
239
|
+
)
|
|
196
240
|
}
|
|
197
241
|
activeServer.contents = Some(server)
|
|
198
242
|
}
|
|
@@ -201,6 +245,7 @@ ${mutations}
|
|
|
201
245
|
mutationResolvers.contents = Dict.make()
|
|
202
246
|
queryResolvers.contents = Dict.make()
|
|
203
247
|
subscriptionResolvers.contents = Dict.make()
|
|
248
|
+
fieldResolvers.contents = Dict.make()
|
|
204
249
|
mutationFields.contents = []
|
|
205
250
|
queryFields.contents = []
|
|
206
251
|
subscriptionFields.contents = []
|
|
@@ -299,6 +344,7 @@ ${mutations}
|
|
|
299
344
|
registerQueries,
|
|
300
345
|
registerSubscriptions,
|
|
301
346
|
registerTypes,
|
|
347
|
+
registerFieldResolvers,
|
|
302
348
|
getMutationResolver,
|
|
303
349
|
getQueryResolver,
|
|
304
350
|
start,
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
import * as Ws from "ws";
|
|
4
4
|
import * as Http from "http";
|
|
5
|
-
import * as GraphqlYoga from "graphql-yoga";
|
|
5
|
+
import * as GraphqlYoga from "@reventlessdev/rescript-graphql-yoga/src/GraphqlYoga.res.mjs";
|
|
6
|
+
import * as GraphqlYoga$1 from "graphql-yoga";
|
|
6
7
|
import * as Stdlib_Option from "@rescript/runtime/lib/es6/Stdlib_Option.js";
|
|
7
8
|
import * as Primitive_option from "@rescript/runtime/lib/es6/Primitive_option.js";
|
|
8
9
|
import * as Logger$ReventlessCore from "@reventlessdev/reventless-core/src/util/Logger.res.mjs";
|
|
@@ -29,6 +30,9 @@ function make(labelOpt) {
|
|
|
29
30
|
let subscriptionResolvers = {
|
|
30
31
|
contents: {}
|
|
31
32
|
};
|
|
33
|
+
let fieldResolvers = {
|
|
34
|
+
contents: {}
|
|
35
|
+
};
|
|
32
36
|
let mutationFields = {
|
|
33
37
|
contents: []
|
|
34
38
|
};
|
|
@@ -51,7 +55,9 @@ function make(labelOpt) {
|
|
|
51
55
|
contents: undefined
|
|
52
56
|
};
|
|
53
57
|
let registerMutations = (sdlFields, resolvers) => {
|
|
54
|
-
|
|
58
|
+
let existing = new Set(mutationFields.contents.map(extractFieldName));
|
|
59
|
+
let fresh = sdlFields.filter(f => !existing.has(extractFieldName(f)));
|
|
60
|
+
mutationFields.contents = mutationFields.contents.concat(fresh);
|
|
55
61
|
Object.entries(resolvers).forEach(param => {
|
|
56
62
|
mutationResolvers.contents[param[0]] = param[1];
|
|
57
63
|
});
|
|
@@ -68,6 +74,20 @@ function make(labelOpt) {
|
|
|
68
74
|
subscriptionResolvers.contents[param[0]] = param[1];
|
|
69
75
|
});
|
|
70
76
|
};
|
|
77
|
+
let registerFieldResolvers = (typeName, resolvers) => {
|
|
78
|
+
let d = fieldResolvers.contents[typeName];
|
|
79
|
+
let forType;
|
|
80
|
+
if (d !== undefined) {
|
|
81
|
+
forType = d;
|
|
82
|
+
} else {
|
|
83
|
+
let d$1 = {};
|
|
84
|
+
fieldResolvers.contents[typeName] = d$1;
|
|
85
|
+
forType = d$1;
|
|
86
|
+
}
|
|
87
|
+
Object.entries(resolvers).forEach(param => {
|
|
88
|
+
forType[param[0]] = param[1];
|
|
89
|
+
});
|
|
90
|
+
};
|
|
71
91
|
let registerTypes = sdlTypes => {
|
|
72
92
|
sdlTypes.forEach(t => {
|
|
73
93
|
if (!typeDefinitions.contents.includes(t)) {
|
|
@@ -109,23 +129,44 @@ type Mutation {
|
|
|
109
129
|
if (Object.keys(subscriptionResolvers.contents).length !== 0) {
|
|
110
130
|
resolvers["Subscription"] = subscriptionResolvers.contents;
|
|
111
131
|
}
|
|
132
|
+
Object.entries(fieldResolvers.contents).forEach(param => {
|
|
133
|
+
resolvers[param[0]] = param[1];
|
|
134
|
+
});
|
|
112
135
|
let sdl = buildSdl();
|
|
113
136
|
lastFullSdl.contents = sdl;
|
|
114
|
-
let schema = GraphqlYoga.createSchema({
|
|
137
|
+
let schema = GraphqlYoga$1.createSchema({
|
|
115
138
|
typeDefs: sdl,
|
|
116
139
|
resolvers: resolvers
|
|
117
140
|
});
|
|
118
141
|
activeSchema.contents = Primitive_option.some(schema);
|
|
119
|
-
let
|
|
142
|
+
let yogaLogging_debug = a => {
|
|
143
|
+
if (debug) {
|
|
144
|
+
return log.debug(label, undefined, GraphqlYoga.logArgToString(a));
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
let yogaLogging_info = a => {
|
|
148
|
+
if (debug) {
|
|
149
|
+
return log.info(label, undefined, GraphqlYoga.logArgToString(a));
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
let yogaLogging_warn = a => log.warn(label, undefined, GraphqlYoga.logArgToString(a));
|
|
153
|
+
let yogaLogging_error = a => log.error(label, undefined, GraphqlYoga.logArgToString(a));
|
|
154
|
+
let yogaLogging = {
|
|
155
|
+
debug: yogaLogging_debug,
|
|
156
|
+
info: yogaLogging_info,
|
|
157
|
+
warn: yogaLogging_warn,
|
|
158
|
+
error: yogaLogging_error
|
|
159
|
+
};
|
|
160
|
+
let yoga = contextFactory !== undefined ? GraphqlYoga$1.createYoga({
|
|
120
161
|
schema: schema,
|
|
121
162
|
graphiql: true,
|
|
122
|
-
logging:
|
|
163
|
+
logging: yogaLogging,
|
|
123
164
|
maskedErrors: !debug,
|
|
124
165
|
context: contextFactory
|
|
125
|
-
}) : GraphqlYoga.createYoga({
|
|
166
|
+
}) : GraphqlYoga$1.createYoga({
|
|
126
167
|
schema: schema,
|
|
127
168
|
graphiql: true,
|
|
128
|
-
logging:
|
|
169
|
+
logging: yogaLogging,
|
|
129
170
|
maskedErrors: !debug
|
|
130
171
|
});
|
|
131
172
|
let server = Http.createServer(yoga);
|
|
@@ -146,6 +187,7 @@ type Mutation {
|
|
|
146
187
|
mutationResolvers.contents = {};
|
|
147
188
|
queryResolvers.contents = {};
|
|
148
189
|
subscriptionResolvers.contents = {};
|
|
190
|
+
fieldResolvers.contents = {};
|
|
149
191
|
mutationFields.contents = [];
|
|
150
192
|
queryFields.contents = [];
|
|
151
193
|
subscriptionFields.contents = [];
|
|
@@ -237,6 +279,7 @@ type Mutation {
|
|
|
237
279
|
registerQueries: registerQueries,
|
|
238
280
|
registerSubscriptions: registerSubscriptions,
|
|
239
281
|
registerTypes: registerTypes,
|
|
282
|
+
registerFieldResolvers: registerFieldResolvers,
|
|
240
283
|
getMutationResolver: getMutationResolver,
|
|
241
284
|
getQueryResolver: getQueryResolver,
|
|
242
285
|
start: start,
|
|
@@ -33,8 +33,7 @@ let sourceBTopic = (returnTypeName: string) => `on${returnTypeName}_stateChanged
|
|
|
33
33
|
|
|
34
34
|
let makeFieldResolver = (~pubSub: YG.pubSub, topic: string): YG.resolverFn => {
|
|
35
35
|
Obj.magic({
|
|
36
|
-
"subscribe": (_root: JSON.t, _args: JSON.t, _ctx: JSON.t) =>
|
|
37
|
-
pubSub->YG.pubSubSubscribe(topic),
|
|
36
|
+
"subscribe": (_root: JSON.t, _args: JSON.t, _ctx: JSON.t) => pubSub->YG.pubSubSubscribe(topic),
|
|
38
37
|
"resolve": (payload: JSON.t) => payload,
|
|
39
38
|
})
|
|
40
39
|
}
|