@grafserv/persisted 0.0.0-beta.3 → 0.0.0-beta.30

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 CHANGED
@@ -1,5 +1,353 @@
1
1
  # @grafserv/persisted
2
2
 
3
+ ## 0.0.0-beta.30
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+ [[`7580bc16a`](https://github.com/graphile/crystal/commit/7580bc16a050fd8d916c6dabe9d1ded980090349),
9
+ [`b336a5829`](https://github.com/graphile/crystal/commit/b336a58291cfec7aef884d3843172d408abfaf3c)]:
10
+ - graphile-config@0.0.1-beta.13
11
+ - grafast@0.1.1-beta.18
12
+ - grafserv@0.1.1-beta.20
13
+
14
+ ## 0.0.0-beta.29
15
+
16
+ ### Patch Changes
17
+
18
+ - Updated dependencies
19
+ [[`866673e14`](https://github.com/graphile/crystal/commit/866673e14f7ad76b6f6d83d1b4e3a4eff8fdba37),
20
+ [`69ab227b5`](https://github.com/graphile/crystal/commit/69ab227b5e1c057a6fc8ebba87bde80d5aa7f3c8),
21
+ [`9a0f9e78c`](https://github.com/graphile/crystal/commit/9a0f9e78c4ee46f50f49bb068baddef7e1de4119),
22
+ [`d13b76f0f`](https://github.com/graphile/crystal/commit/d13b76f0fef2a58466ecb44880af62d25910e83e),
23
+ [`b167bd849`](https://github.com/graphile/crystal/commit/b167bd8499be5866b71bac6594d55bd768fda1d0),
24
+ [`6a13ecbd4`](https://github.com/graphile/crystal/commit/6a13ecbd45534c39c846c1d8bc58242108426dd1)]:
25
+ - grafserv@0.1.1-beta.19
26
+ - grafast@0.1.1-beta.17
27
+ - graphile-config@0.0.1-beta.12
28
+
29
+ ## 0.0.0-beta.28
30
+
31
+ ### Patch Changes
32
+
33
+ - Updated dependencies
34
+ [[`5626c7d36`](https://github.com/graphile/crystal/commit/5626c7d3649285e11fe9857dfa319d2883d027eb),
35
+ [`bf2a2e72a`](https://github.com/graphile/crystal/commit/bf2a2e72ab78a01f5aba6cda97b5a125563b1f3d),
36
+ [`76c7340b7`](https://github.com/graphile/crystal/commit/76c7340b74d257c454beec883384d19ef078b21e)]:
37
+ - graphile-config@0.0.1-beta.11
38
+ - grafserv@0.1.1-beta.18
39
+ - grafast@0.1.1-beta.16
40
+
41
+ ## 0.0.0-beta.27
42
+
43
+ ### Patch Changes
44
+
45
+ - Updated dependencies
46
+ [[`d5834def1`](https://github.com/graphile/crystal/commit/d5834def1fb84f3e2c0c0a6f146f8249a6df890a),
47
+ [`42b982463`](https://github.com/graphile/crystal/commit/42b9824637a6c05e02935f2b05b5e8e0c61965a6),
48
+ [`884a4b429`](https://github.com/graphile/crystal/commit/884a4b4297af90fdadaf73addd524f1fbbcfdcce),
49
+ [`38835313a`](https://github.com/graphile/crystal/commit/38835313ad93445206dccdd4cf07b90c5a6e4377),
50
+ [`cc0941731`](https://github.com/graphile/crystal/commit/cc0941731a1679bc04ce7b7fd4254009bb5f1f62),
51
+ [`b0865d169`](https://github.com/graphile/crystal/commit/b0865d1691105b5419009954c98c8109a27a5d81),
52
+ [`8b472cd51`](https://github.com/graphile/crystal/commit/8b472cd51cd66d8227f9f2722d09c0a774792b0f),
53
+ [`9cd9bb522`](https://github.com/graphile/crystal/commit/9cd9bb5222a9f0398ee4b8bfa4f741b6de2a2192)]:
54
+ - grafast@0.1.1-beta.15
55
+ - graphile-config@0.0.1-beta.10
56
+ - grafserv@0.1.1-beta.17
57
+
58
+ ## 0.0.0-beta.26
59
+
60
+ ### Patch Changes
61
+
62
+ - Updated dependencies
63
+ [[`871d32b2a`](https://github.com/graphile/crystal/commit/871d32b2a18df0d257880fc54a61d9e68c4607d6),
64
+ [`a26e3a30c`](https://github.com/graphile/crystal/commit/a26e3a30c02f963f8f5e9c9d021e871f33689e1b),
65
+ [`02c11a4d4`](https://github.com/graphile/crystal/commit/02c11a4d42bf434dffc9354b300e8d791c4eeb2d)]:
66
+ - grafast@0.1.1-beta.14
67
+ - grafserv@0.1.1-beta.16
68
+
69
+ ## 0.0.0-beta.25
70
+
71
+ ### Patch Changes
72
+
73
+ - Updated dependencies
74
+ [[`807650035`](https://github.com/graphile/crystal/commit/8076500354a3e2bc2de1b6c4e947bd710cc5bddc)]:
75
+ - grafast@0.1.1-beta.13
76
+ - grafserv@0.1.1-beta.15
77
+
78
+ ## 0.0.0-beta.24
79
+
80
+ ### Patch Changes
81
+
82
+ - Updated dependencies
83
+ [[`1bd50b61e`](https://github.com/graphile/crystal/commit/1bd50b61ebb10b7d09b3612c2e2767c41cca3b78),
84
+ [`61f8bbca5`](https://github.com/graphile/crystal/commit/61f8bbca5badda5b27872e0ee01a2d4c1372210d),
85
+ [`4e102b1a1`](https://github.com/graphile/crystal/commit/4e102b1a1cd232e6f6703df0706415f01831dab2),
86
+ [`7bb1573ba`](https://github.com/graphile/crystal/commit/7bb1573ba45a4d8b7fa9ad53cdd79686d2641383),
87
+ [`18addb385`](https://github.com/graphile/crystal/commit/18addb3852525aa91019a36d58fa2fecd8b5b443),
88
+ [`6ed615e55`](https://github.com/graphile/crystal/commit/6ed615e557b2ab1fb57f1e68c06730a8e3da7175),
89
+ [`b25cc539c`](https://github.com/graphile/crystal/commit/b25cc539c00aeda7a943c37509aaae4dc7812317),
90
+ [`867f33136`](https://github.com/graphile/crystal/commit/867f331365346fc46ed1e0d23c79719846e398f4),
91
+ [`cf535c210`](https://github.com/graphile/crystal/commit/cf535c21078da06c14dd12f30e9b4378da4ded03),
92
+ [`acf99b190`](https://github.com/graphile/crystal/commit/acf99b190954e3c5926e820daed68dfe8eb3ee1f),
93
+ [`4967a197f`](https://github.com/graphile/crystal/commit/4967a197fd2c71ee2a581fe29470ee9f30e74de5),
94
+ [`1908e1ba1`](https://github.com/graphile/crystal/commit/1908e1ba11883a34dac66f985fc20ab160e572b1),
95
+ [`084d80be6`](https://github.com/graphile/crystal/commit/084d80be6e17187c9a9932bcf079e3f460368782)]:
96
+ - grafast@0.1.1-beta.12
97
+ - grafserv@0.1.1-beta.14
98
+
99
+ ## 0.0.0-beta.23
100
+
101
+ ### Patch Changes
102
+
103
+ - Updated dependencies
104
+ [[`582bd768f`](https://github.com/graphile/crystal/commit/582bd768fec403ce3284f293b85b9fd86e4d3f40)]:
105
+ - graphile-config@0.0.1-beta.9
106
+ - grafserv@0.1.1-beta.13
107
+ - grafast@0.1.1-beta.11
108
+
109
+ ## 0.0.0-beta.22
110
+
111
+ ### Patch Changes
112
+
113
+ - Updated dependencies
114
+ [[`3c161f7e1`](https://github.com/graphile/crystal/commit/3c161f7e13375105b1035a7d5d1c0f2b507ca5c7),
115
+ [`a674a9923`](https://github.com/graphile/crystal/commit/a674a9923bc908c9315afa40e0cb256ee0953d16),
116
+ [`b7cfeffd1`](https://github.com/graphile/crystal/commit/b7cfeffd1019d61c713a5054c4f5929960a2a6ab)]:
117
+ - grafast@0.1.1-beta.10
118
+ - grafserv@0.1.1-beta.12
119
+
120
+ ## 0.0.0-beta.21
121
+
122
+ ### Patch Changes
123
+
124
+ - Updated dependencies
125
+ [[`437570f97`](https://github.com/graphile/crystal/commit/437570f97e8520afaf3d0d0b514d1f4c31546b76)]:
126
+ - grafast@0.1.1-beta.9
127
+ - grafserv@0.1.1-beta.11
128
+
129
+ ## 0.0.0-beta.20
130
+
131
+ ### Patch Changes
132
+
133
+ - Updated dependencies
134
+ [[`bd5a908a4`](https://github.com/graphile/crystal/commit/bd5a908a4d04310f90dfb46ad87398ffa993af3b)]:
135
+ - grafast@0.1.1-beta.8
136
+ - grafserv@0.1.1-beta.10
137
+
138
+ ## 0.0.0-beta.19
139
+
140
+ ### Patch Changes
141
+
142
+ - Updated dependencies
143
+ [[`357d475f5`](https://github.com/graphile/crystal/commit/357d475f54fecc8c51892e0346d6872b34132430),
144
+ [`3551725e7`](https://github.com/graphile/crystal/commit/3551725e71c3ed876554e19e5ab2c1dcb0fb1143),
145
+ [`80836471e`](https://github.com/graphile/crystal/commit/80836471e5cedb29dee63bc5002550c4f1713cfd),
146
+ [`a5c20fefb`](https://github.com/graphile/crystal/commit/a5c20fefb571dea6d1187515dc48dd547e9e6204),
147
+ [`1ce08980e`](https://github.com/graphile/crystal/commit/1ce08980e2a52ed9bc81564d248c19648ecd3616),
148
+ [`dff4f2535`](https://github.com/graphile/crystal/commit/dff4f2535ac6ce893089b312fcd5fffcd98573a5),
149
+ [`a287a57c2`](https://github.com/graphile/crystal/commit/a287a57c2765da0fb6a132ea0953f64453210ceb),
150
+ [`2fe56f9a6`](https://github.com/graphile/crystal/commit/2fe56f9a6dac03484ace45c29c2223a65f9ca1db),
151
+ [`fed603d71`](https://github.com/graphile/crystal/commit/fed603d719c02f33e12190f925c9e3b06c581fac),
152
+ [`ed6e0d278`](https://github.com/graphile/crystal/commit/ed6e0d2788217a1c419634837f4208013eaf2923),
153
+ [`e82e4911e`](https://github.com/graphile/crystal/commit/e82e4911e32138df1b90ec0fde555ea963018d21),
154
+ [`42ece5aa6`](https://github.com/graphile/crystal/commit/42ece5aa6ca05345ebc17fb5c7d55df3b79b7612),
155
+ [`e0d69e518`](https://github.com/graphile/crystal/commit/e0d69e518a98c70f9b90f59d243ce33978c1b5a1),
156
+ [`db8ceed0f`](https://github.com/graphile/crystal/commit/db8ceed0f17923eb78ff09c9f3f28800a5c7e3b6),
157
+ [`a5a0816bd`](https://github.com/graphile/crystal/commit/a5a0816bddc85a841770202db57457ff13137852),
158
+ [`6699388ec`](https://github.com/graphile/crystal/commit/6699388ec167d35c71220ce5d9113cac578da6cb),
159
+ [`966203504`](https://github.com/graphile/crystal/commit/96620350467ab8c65b56adf2f055e19450f8e772),
160
+ [`c1645b249`](https://github.com/graphile/crystal/commit/c1645b249aae949a548cd916e536ccfb63e5ab35),
161
+ [`ed8bbaa3c`](https://github.com/graphile/crystal/commit/ed8bbaa3cd1563a7601ca8c6b0412633b0ea4ce9),
162
+ [`a0e82b9c5`](https://github.com/graphile/crystal/commit/a0e82b9c5f4e585f1af1e147299cd07944ece6f8),
163
+ [`14e2412ee`](https://github.com/graphile/crystal/commit/14e2412ee368e8d53abf6774c7f0069f32d4e8a3),
164
+ [`57ab0e1e7`](https://github.com/graphile/crystal/commit/57ab0e1e72c01213b21d3efc539cd655d83d993a),
165
+ [`8442242e4`](https://github.com/graphile/crystal/commit/8442242e43cac7d89ca0c413cf42c9fabf6f247f),
166
+ [`64ce7b765`](https://github.com/graphile/crystal/commit/64ce7b7650530251aec38a51089da66f914c19b4),
167
+ [`cba842357`](https://github.com/graphile/crystal/commit/cba84235786acbd77ade53bae7a3fba4a9be1eb7),
168
+ [`2fa77d0f2`](https://github.com/graphile/crystal/commit/2fa77d0f237cdb98d3dafb6b5e4083a2c6c38673)]:
169
+ - grafast@0.1.1-beta.7
170
+ - graphile-config@0.0.1-beta.8
171
+ - grafserv@0.1.1-beta.9
172
+
173
+ ## 0.0.0-beta.18
174
+
175
+ ### Patch Changes
176
+
177
+ - Updated dependencies
178
+ [[`9f85c614d`](https://github.com/graphile/crystal/commit/9f85c614d48dc745c5fed15333dbb75af7fddc88),
179
+ [`6c6be29f1`](https://github.com/graphile/crystal/commit/6c6be29f12b24782c926b2bc62ed2ede09ac05de),
180
+ [`8315e8d01`](https://github.com/graphile/crystal/commit/8315e8d01c118cebc4ebbc53a2f264b958b252ad)]:
181
+ - grafast@0.1.1-beta.6
182
+ - grafserv@0.1.1-beta.8
183
+
184
+ ## 0.0.0-beta.17
185
+
186
+ ### Patch Changes
187
+
188
+ - Updated dependencies
189
+ [[`63dd7ea99`](https://github.com/graphile/crystal/commit/63dd7ea992d30ad711dd85a73a127484a0e35479),
190
+ [`d801c9778`](https://github.com/graphile/crystal/commit/d801c9778a86d61e060896460af9fe62a733534a),
191
+ [`c21252541`](https://github.com/graphile/crystal/commit/c212525410cb2d97a808964ad727d0a68dd15f8b),
192
+ [`ef44c29b2`](https://github.com/graphile/crystal/commit/ef44c29b24a1ad5a042ae1536a4546dd64b17195),
193
+ [`5de3e86eb`](https://github.com/graphile/crystal/commit/5de3e86eba1ddfe5e07732d0325c63e5d72d4b5b)]:
194
+ - grafast@0.1.1-beta.5
195
+ - grafserv@0.1.1-beta.7
196
+ - graphile-config@0.0.1-beta.7
197
+
198
+ ## 0.0.0-beta.16
199
+
200
+ ### Patch Changes
201
+
202
+ - Updated dependencies
203
+ [[`de7add402`](https://github.com/graphile/crystal/commit/de7add402bd4a45c8782fce69bf210635360cbe8),
204
+ [`a2176ea32`](https://github.com/graphile/crystal/commit/a2176ea324db0801249661b30e9c9d314c6fb159),
205
+ [`886833e2e`](https://github.com/graphile/crystal/commit/886833e2e319f23d905d7184ca88fca701b94044)]:
206
+ - grafserv@0.1.1-beta.6
207
+ - grafast@0.1.1-beta.4
208
+
209
+ ## 0.0.0-beta.15
210
+
211
+ ### Patch Changes
212
+
213
+ - Updated dependencies
214
+ [[`0df5511ac`](https://github.com/graphile/crystal/commit/0df5511ac8b79ea34f8d12ebf8feeb421f8fe971)]:
215
+ - graphile-config@0.0.1-beta.6
216
+ - grafast@0.1.1-beta.3
217
+ - grafserv@0.1.1-beta.5
218
+
219
+ ## 0.0.0-beta.14
220
+
221
+ ### Patch Changes
222
+
223
+ - [#1877](https://github.com/graphile/crystal/pull/1877)
224
+ [`8a0cdb95f`](https://github.com/graphile/crystal/commit/8a0cdb95f200b28b0ea1ab5caa12b23dce5f374f)
225
+ Thanks [@benjie](https://github.com/benjie)! - Move 'declare global' out of
226
+ 'interfaces.ts' and into 'index.ts' or equivalent. Should make TypeScript more
227
+ aware of these types.
228
+ - Updated dependencies
229
+ [[`3fdc2bce4`](https://github.com/graphile/crystal/commit/3fdc2bce42418773f808c5b8309dfb361cd95ce9),
230
+ [`aeef362b5`](https://github.com/graphile/crystal/commit/aeef362b5744816f01e4a6f714bbd77f92332bc5),
231
+ [`8a76db07f`](https://github.com/graphile/crystal/commit/8a76db07f4c110cecc6225504f9a05ccbcbc7b92),
232
+ [`8a0cdb95f`](https://github.com/graphile/crystal/commit/8a0cdb95f200b28b0ea1ab5caa12b23dce5f374f),
233
+ [`995e25035`](https://github.com/graphile/crystal/commit/995e250352217fdf8f036b8ed6cad3fab520817f),
234
+ [`1c9f1c0ed`](https://github.com/graphile/crystal/commit/1c9f1c0edf4e621a5b6345d3a41527a18143c6ae)]:
235
+ - grafast@0.1.1-beta.2
236
+ - graphile-config@0.0.1-beta.5
237
+ - grafserv@0.1.1-beta.4
238
+
239
+ ## 0.0.0-beta.13
240
+
241
+ ### Patch Changes
242
+
243
+ - Updated dependencies
244
+ [[`9696a1b08`](https://github.com/graphile/crystal/commit/9696a1b0885442f44e3a6ca6a4909ec96a445884),
245
+ [`49fcb0d58`](https://github.com/graphile/crystal/commit/49fcb0d585b31b291c9072c339d6f5b550eefc9f),
246
+ [`7aef73319`](https://github.com/graphile/crystal/commit/7aef73319a8a147c700727be62427e1eefdefbf8)]:
247
+ - grafserv@0.1.1-beta.3
248
+ - grafast@0.1.1-beta.1
249
+ - graphile-config@0.0.1-beta.4
250
+
251
+ ## 0.0.0-beta.12
252
+
253
+ ### Patch Changes
254
+
255
+ - Updated dependencies []:
256
+ - grafserv@0.1.1-beta.2
257
+
258
+ ## 0.0.0-beta.11
259
+
260
+ ### Patch Changes
261
+
262
+ - Updated dependencies
263
+ [[`781a89758`](https://github.com/graphile/crystal/commit/781a89758fff2712f0080d8fafb4048da189b782),
264
+ [`a38e650d6`](https://github.com/graphile/crystal/commit/a38e650d67d6c7ff0cf5b853377622090ede3a50)]:
265
+ - grafserv@0.1.1-beta.1
266
+
267
+ ## 0.0.0-beta.10
268
+
269
+ ### Patch Changes
270
+
271
+ - Updated dependencies
272
+ [[`4a4d26d87`](https://github.com/graphile/crystal/commit/4a4d26d87ce74589429b8ca5126a7bfdf30351b8),
273
+ [`b2bce88da`](https://github.com/graphile/crystal/commit/b2bce88da26c7a8965468be16fc2d935eadd3434),
274
+ [`861a8a306`](https://github.com/graphile/crystal/commit/861a8a306ef42a821da19e77903ddd7e8130bfb3),
275
+ [`2d31f058b`](https://github.com/graphile/crystal/commit/2d31f058b34d3f5ef11699582b9a4960a4ebc471)]:
276
+ - grafast@0.1.1-beta.0
277
+ - grafserv@0.1.1-beta.0
278
+
279
+ ## 0.0.0-beta.9
280
+
281
+ ### Patch Changes
282
+
283
+ - [#514](https://github.com/graphile/crystal-pre-merge/pull/514)
284
+ [`c9848f693`](https://github.com/graphile/crystal-pre-merge/commit/c9848f6936a5abd7740c0638bfb458fb5551f03b)
285
+ Thanks [@benjie](https://github.com/benjie)! - Update package.json repository
286
+ information
287
+
288
+ - Updated dependencies
289
+ [[`c9848f693`](https://github.com/graphile/crystal-pre-merge/commit/c9848f6936a5abd7740c0638bfb458fb5551f03b),
290
+ [`ede1092fe`](https://github.com/graphile/crystal-pre-merge/commit/ede1092fe197719b6fa786f4cfa75f6a1f4c56c1),
291
+ [`566983fbd`](https://github.com/graphile/crystal-pre-merge/commit/566983fbd99c4b2df8c4ebd6260521670a2b7dfc),
292
+ [`409bf6071`](https://github.com/graphile/crystal-pre-merge/commit/409bf607180d4d8faec658c803e5ec4d1a00c451)]:
293
+ - graphile-config@0.0.1-beta.3
294
+ - grafserv@0.0.1-beta.9
295
+ - grafast@0.0.1-beta.8
296
+ - @graphile/lru@5.0.0-beta.3
297
+
298
+ ## 0.0.0-beta.8
299
+
300
+ ### Patch Changes
301
+
302
+ - Updated dependencies []:
303
+ - grafserv@0.0.1-beta.8
304
+
305
+ ## 0.0.0-beta.7
306
+
307
+ ### Patch Changes
308
+
309
+ - Updated dependencies
310
+ [[`3700e204f`](https://github.com/benjie/crystal/commit/3700e204f430db182c92ca7abc82017c81fa1f9b)]:
311
+ - grafast@0.0.1-beta.7
312
+ - grafserv@0.0.1-beta.7
313
+
314
+ ## 0.0.0-beta.6
315
+
316
+ ### Patch Changes
317
+
318
+ - [#496](https://github.com/benjie/crystal/pull/496)
319
+ [`c9bfd9892`](https://github.com/benjie/crystal/commit/c9bfd989247f9433fb5b18c5175c9d8d64cd21a1)
320
+ Thanks [@benjie](https://github.com/benjie)! - Update dependencies (sometimes
321
+ through major versions).
322
+
323
+ - Updated dependencies
324
+ [[`c9bfd9892`](https://github.com/benjie/crystal/commit/c9bfd989247f9433fb5b18c5175c9d8d64cd21a1),
325
+ [`e613b476d`](https://github.com/benjie/crystal/commit/e613b476d6ee867d1f7509c895dabee40e7f9a31)]:
326
+ - graphile-config@0.0.1-beta.2
327
+ - grafserv@0.0.1-beta.6
328
+ - grafast@0.0.1-beta.6
329
+ - @graphile/lru@5.0.0-beta.2
330
+
331
+ ## 0.0.0-beta.5
332
+
333
+ ### Patch Changes
334
+
335
+ - Updated dependencies
336
+ [[`53186213a`](https://github.com/benjie/crystal/commit/53186213ade962f4b66cb0d5ea8b57b5ce7ea85f)]:
337
+ - grafast@0.0.1-beta.5
338
+ - grafserv@0.0.1-beta.5
339
+
340
+ ## 0.0.0-beta.4
341
+
342
+ ### Patch Changes
343
+
344
+ - Updated dependencies
345
+ [[`f9cc88dc4`](https://github.com/benjie/crystal/commit/f9cc88dc442d371aee154a28d4e63c6da39f6b2e),
346
+ [`22fa6230a`](https://github.com/benjie/crystal/commit/22fa6230aa7c7271e5360e619ec9e1f52c6ea49c),
347
+ [`fa8cfcf9b`](https://github.com/benjie/crystal/commit/fa8cfcf9b4ce0c3e12511f3f6392051924a719e5)]:
348
+ - grafast@0.0.1-beta.4
349
+ - grafserv@0.0.1-beta.4
350
+
3
351
  ## 0.0.0-beta.3
4
352
 
5
353
  ### Patch Changes
package/README.md CHANGED
@@ -21,9 +21,9 @@ servers you will need different software.
21
21
 
22
22
  ## Crowd-funded open-source software
23
23
 
24
- To help us develop this software sustainably under the MIT license, we ask all
25
- individuals and businesses that use it to help support its ongoing maintenance
26
- and development via sponsorship.
24
+ To help us develop this software sustainably, we ask all individuals and
25
+ businesses that use it to help support its ongoing maintenance and development
26
+ via sponsorship.
27
27
 
28
28
  ### [Click here to find out more about sponsors and sponsorship.](https://www.graphile.org/sponsor/)
29
29
 
@@ -32,12 +32,10 @@ And please give some love to our featured sponsors 🤩:
32
32
  <table><tr>
33
33
  <td align="center"><a href="https://www.the-guild.dev/"><img src="https://graphile.org/images/sponsors/theguild.png" width="90" height="90" alt="The Guild" /><br />The Guild</a> *</td>
34
34
  <td align="center"><a href="https://dovetailapp.com/"><img src="https://graphile.org/images/sponsors/dovetail.png" width="90" height="90" alt="Dovetail" /><br />Dovetail</a> *</td>
35
- <td align="center"><a href="https://qwick.com/"><img src="https://graphile.org/images/sponsors/qwick.png" width="90" height="90" alt="Qwick" /><br />Qwick</a> *</td>
36
- <td align="center"><a href="https://www.netflix.com/"><img src="https://graphile.org/images/sponsors/Netflix.png" width="90" height="90" alt="Netflix" /><br />Netflix</a> *</td>
37
- </tr><tr>
38
- <td align="center"><a href=""><img src="https://graphile.org/images/sponsors/chadf.png" width="90" height="90" alt="Chad Furman" /><br />Chad Furman</a> *</td>
39
35
  <td align="center"><a href="https://stellate.co/"><img src="https://graphile.org/images/sponsors/Stellate.png" width="90" height="90" alt="Stellate" /><br />Stellate</a> *</td>
40
- <td align="center"><a href="https://www.accenture.com/"><img src="https://graphile.org/images/sponsors/accenture.svg" width="90" height="90" alt="Accenture" /><br />Accenture</a> *</td>
36
+ <td align="center"><a href="https://gosteelhead.com/"><img src="https://graphile.org/images/sponsors/steelhead.svg" width="90" height="90" alt="Steelhead" /><br />Steelhead</a> *</td>
37
+ </tr><tr>
38
+ <td align="center"><a href=""><img src="https://graphile.org/images/sponsors/latchbio.jpg" width="90" height="90" alt="LatchBio" /><br />LatchBio</a> *</td>
41
39
  </tr></table>
42
40
 
43
41
  <em>\* Sponsors the entire Graphile suite</em>
package/dist/index.d.ts CHANGED
@@ -1,4 +1,86 @@
1
+ import type { ParsedGraphQLBody, ProcessGraphQLRequestBodyEvent } from "grafserv";
1
2
  export type { PersistedOperationGetter } from "./interfaces.js";
3
+ import type { PersistedOperationGetter } from "./interfaces.js";
4
+ declare global {
5
+ namespace GraphileConfig {
6
+ interface Plugins {
7
+ PersistedPlugin: true;
8
+ }
9
+ }
10
+ }
2
11
  declare const PersistedPlugin: GraphileConfig.Plugin;
3
12
  export default PersistedPlugin;
13
+ declare global {
14
+ namespace GraphileConfig {
15
+ interface GrafservOptions {
16
+ /**
17
+ * This function will be passed a GraphQL request object (normally
18
+ * `{query: string, variables?: any, operationName?: string, extensions?: any}`,
19
+ * but in the case of persisted operations it likely won't have a `query`
20
+ * property), and must extract the hash to use to identify the persisted
21
+ * operation. For Apollo Client, this might be something like:
22
+ * `request?.extensions?.persistedQuery?.sha256Hash`; for Relay something
23
+ * like: `request?.documentId`.
24
+ */
25
+ hashFromPayload?(request: ParsedGraphQLBody): string | undefined;
26
+ /**
27
+ * We can read persisted operations from a folder (they must be named
28
+ * `<hash>.graphql`). When used in this way, the first request for a hash
29
+ * will read the file, and then the result will be cached such that the
30
+ * **filesystem read** will only impact the first use of that hash. We
31
+ * periodically scan the folder for new files, requests for hashes that
32
+ * were not present in our last scan of the folder will be rejected to
33
+ * mitigate denial of service attacks asking for non-existent hashes.
34
+ */
35
+ persistedOperationsDirectory?: string;
36
+ /**
37
+ * How many milliseconds should we leave it between scans of the persisted
38
+ * operations folder, checking for new files?
39
+ *
40
+ * Set this to the string "watch" to use `fs.watch` to monitor for changes. [EXPERIMENTAL].
41
+ *
42
+ * Set to `-1` to disable.
43
+ *
44
+ * Default: -1
45
+ */
46
+ persistedOperationsDirectoryScanInterval?: number | "watch";
47
+ /**
48
+ * An optional string-string key-value object defining the persisted
49
+ * operations, where the keys are the hashes, and the values are the
50
+ * operation document strings to use.
51
+ */
52
+ persistedOperations?: {
53
+ [hash: string]: string;
54
+ };
55
+ /**
56
+ * If your known persisted operations may change over time, or you'd rather
57
+ * load them on demand, you may supply this function. Note this function is
58
+ * **performance critical** so you should use caching to improve
59
+ * performance of any follow-up requests for the same hash.
60
+ */
61
+ persistedOperationsGetter?: PersistedOperationGetter;
62
+ /**
63
+ * There are situations where you may want to allow arbitrary operations
64
+ * (for example using GraphiQL in development, or allowing an admin to
65
+ * make arbitrary requests in production) whilst enforcing Persisted
66
+ * Operations for the application and non-admin users. This function
67
+ * allows you to determine under which circumstances persisted operations
68
+ * may be bypassed.
69
+ *
70
+ * IMPORTANT: this function must not throw!
71
+ *
72
+ * @example
73
+ *
74
+ * ```
75
+ * app.use(postgraphile(DATABASE_URL, SCHEMAS, {
76
+ * allowUnpersistedOperation(event) {
77
+ * return process.env.NODE_ENV === "development" && event.request?.getHeader('referer')?.endsWith("/graphiql");
78
+ * }
79
+ * });
80
+ * ```
81
+ */
82
+ allowUnpersistedOperation?: boolean | ((event: ProcessGraphQLRequestBodyEvent) => boolean);
83
+ }
84
+ }
85
+ }
4
86
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,YAAY,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAKhE,QAAA,MAAM,eAAe,EAAE,cAAc,CAAC,MA8CrC,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,iBAAiB,EACjB,8BAA8B,EAC/B,MAAM,UAAU,CAAC;AAGlB,YAAY,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAGhE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAGhE,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,cAAc,CAAC;QACvB,UAAU,OAAO;YACf,eAAe,EAAE,IAAI,CAAC;SACvB;KACF;CACF;AAED,QAAA,MAAM,eAAe,EAAE,cAAc,CAAC,MA+CrC,CAAC;AAEF,eAAe,eAAe,CAAC;AAoR/B,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,cAAc,CAAC;QACvB,UAAU,eAAe;YACvB;;;;;;;;eAQG;YACH,eAAe,CAAC,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAAC;YAEjE;;;;;;;;eAQG;YACH,4BAA4B,CAAC,EAAE,MAAM,CAAC;YAEtC;;;;;;;;;eASG;YACH,wCAAwC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;YAE5D;;;;eAIG;YACH,mBAAmB,CAAC,EAAE;gBAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;aAAE,CAAC;YAEjD;;;;;eAKG;YACH,yBAAyB,CAAC,EAAE,wBAAwB,CAAC;YAErD;;;;;;;;;;;;;;;;;;;eAmBG;YACH,yBAAyB,CAAC,EACtB,OAAO,GACP,CAAC,CAAC,KAAK,EAAE,8BAA8B,KAAK,OAAO,CAAC,CAAC;SAC1D;KACF;CACF"}
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- const grafast_1 = require("grafast");
5
4
  const promises_1 = tslib_1.__importDefault(require("node:fs/promises"));
5
+ const grafast_1 = require("grafast");
6
6
  const lru_1 = tslib_1.__importDefault(require("@graphile/lru"));
7
7
  const version_js_1 = require("./version.js");
8
8
  const PersistedPlugin = {
@@ -10,10 +10,10 @@ const PersistedPlugin = {
10
10
  description: "Enables persisted operations in Grafserv",
11
11
  version: version_js_1.version,
12
12
  grafserv: {
13
- hooks: {
14
- processGraphQLRequestBody(info, event) {
15
- const { body } = event;
16
- const options = info.resolvedPreset.grafserv;
13
+ middleware: {
14
+ processGraphQLRequestBody(next, event) {
15
+ const { body, resolvedPreset } = event;
16
+ const options = resolvedPreset.grafserv;
17
17
  if (!options) {
18
18
  throw new grafast_1.SafeError("Persisted operations misconfigured; rejecting requests.", { statusCode: 500 });
19
19
  }
@@ -37,6 +37,7 @@ const PersistedPlugin = {
37
37
  throw new grafast_1.SafeError("Persisted operations are enabled on this server, please provide an approved document id.", { statusCode: 400 });
38
38
  }
39
39
  }
40
+ return next();
40
41
  },
41
42
  },
42
43
  },
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,81 +1,7 @@
1
1
  import type { PromiseOrDirect } from "grafast";
2
- import type { ParsedGraphQLBody, ProcessGraphQLRequestBodyEvent } from "grafserv";
3
2
  /**
4
3
  * Given a persisted operation hash, return the associated GraphQL operation
5
4
  * document.
6
5
  */
7
6
  export type PersistedOperationGetter = (hash: string) => PromiseOrDirect<string>;
8
- declare global {
9
- namespace GraphileConfig {
10
- interface GrafservOptions {
11
- /**
12
- * This function will be passed a GraphQL request object (normally
13
- * `{query: string, variables?: any, operationName?: string, extensions?: any}`,
14
- * but in the case of persisted operations it likely won't have a `query`
15
- * property), and must extract the hash to use to identify the persisted
16
- * operation. For Apollo Client, this might be something like:
17
- * `request?.extensions?.persistedQuery?.sha256Hash`; for Relay something
18
- * like: `request?.documentId`.
19
- */
20
- hashFromPayload?(request: ParsedGraphQLBody): string | undefined;
21
- /**
22
- * We can read persisted operations from a folder (they must be named
23
- * `<hash>.graphql`). When used in this way, the first request for a hash
24
- * will read the file, and then the result will be cached such that the
25
- * **filesystem read** will only impact the first use of that hash. We
26
- * periodically scan the folder for new files, requests for hashes that
27
- * were not present in our last scan of the folder will be rejected to
28
- * mitigate denial of service attacks asking for non-existent hashes.
29
- */
30
- persistedOperationsDirectory?: string;
31
- /**
32
- * How many milliseconds should we leave it between scans of the persisted
33
- * operations folder, checking for new files?
34
- *
35
- * Set this to the string "watch" to use `fs.watch` to monitor for changes. [EXPERIMENTAL].
36
- *
37
- * Set to `-1` to disable.
38
- *
39
- * Default: -1
40
- */
41
- persistedOperationsDirectoryScanInterval?: number | "watch";
42
- /**
43
- * An optional string-string key-value object defining the persisted
44
- * operations, where the keys are the hashes, and the values are the
45
- * operation document strings to use.
46
- */
47
- persistedOperations?: {
48
- [hash: string]: string;
49
- };
50
- /**
51
- * If your known persisted operations may change over time, or you'd rather
52
- * load them on demand, you may supply this function. Note this function is
53
- * **performance critical** so you should use caching to improve
54
- * performance of any follow-up requests for the same hash.
55
- */
56
- persistedOperationsGetter?: PersistedOperationGetter;
57
- /**
58
- * There are situations where you may want to allow arbitrary operations
59
- * (for example using GraphiQL in development, or allowing an admin to
60
- * make arbitrary requests in production) whilst enforcing Persisted
61
- * Operations for the application and non-admin users. This function
62
- * allows you to determine under which circumstances persisted operations
63
- * may be bypassed.
64
- *
65
- * IMPORTANT: this function must not throw!
66
- *
67
- * @example
68
- *
69
- * ```
70
- * app.use(postgraphile(DATABASE_URL, SCHEMAS, {
71
- * allowUnpersistedOperation(event) {
72
- * return process.env.NODE_ENV === "development" && event.request?.getHeader('referer')?.endsWith("/graphiql");
73
- * }
74
- * });
75
- * ```
76
- */
77
- allowUnpersistedOperation?: boolean | ((event: ProcessGraphQLRequestBodyEvent) => boolean);
78
- }
79
- }
80
- }
81
7
  //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EACV,iBAAiB,EACjB,8BAA8B,EAC/B,MAAM,UAAU,CAAC;AAGlB;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG,CACrC,IAAI,EAAE,MAAM,KACT,eAAe,CAAC,MAAM,CAAC,CAAC;AAE7B,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,cAAc,CAAC;QACvB,UAAU,eAAe;YACvB;;;;;;;;eAQG;YACH,eAAe,CAAC,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAAC;YAEjE;;;;;;;;eAQG;YACH,4BAA4B,CAAC,EAAE,MAAM,CAAC;YAEtC;;;;;;;;;eASG;YACH,wCAAwC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;YAE5D;;;;eAIG;YACH,mBAAmB,CAAC,EAAE;gBAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;aAAE,CAAC;YAEjD;;;;;eAKG;YACH,yBAAyB,CAAC,EAAE,wBAAwB,CAAC;YAErD;;;;;;;;;;;;;;;;;;;eAmBG;YACH,yBAAyB,CAAC,EACtB,OAAO,GACP,CAAC,CAAC,KAAK,EAAE,8BAA8B,KAAK,OAAO,CAAC,CAAC;SAC1D;KACF;CACF"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG/C;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG,CACrC,IAAI,EAAE,MAAM,KACT,eAAe,CAAC,MAAM,CAAC,CAAC"}
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "0.0.0-beta.3";
1
+ export declare const version = "0.0.0-beta.30";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO,iBAAiB,CAAC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO,kBAAkB,CAAC"}
package/dist/version.js CHANGED
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
4
  // This file is autogenerated by /scripts/postversion.mjs
5
- exports.version = "0.0.0-beta.3";
5
+ exports.version = "0.0.0-beta.30";
6
6
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":";;;AAAA,yDAAyD;AAC5C,QAAA,OAAO,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":";;;AAAA,yDAAyD;AAC5C,QAAA,OAAO,GAAG,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grafserv/persisted",
3
- "version": "0.0.0-beta.3",
3
+ "version": "0.0.0-beta.30",
4
4
  "description": "Persisted operations support for Grafserv",
5
5
  "type": "commonjs",
6
6
  "main": "dist/index.js",
@@ -17,7 +17,7 @@
17
17
  },
18
18
  "repository": {
19
19
  "type": "git",
20
- "url": "git+https://github.com/graphile/heart.git"
20
+ "url": "git+https://github.com/graphile/crystal.git"
21
21
  },
22
22
  "keywords": [
23
23
  "persisted",
@@ -35,20 +35,20 @@
35
35
  "author": "Benjie Gillam <code@benjiegillam.com>",
36
36
  "license": "MIT",
37
37
  "bugs": {
38
- "url": "https://github.com/graphile/heart/issues"
38
+ "url": "https://github.com/graphile/crystal/issues"
39
39
  },
40
- "homepage": "https://github.com/graphile/heart/tree/main/grafast/grafserv-persisted",
40
+ "homepage": "https://github.com/graphile/crystal/tree/main/grafast/grafserv-persisted",
41
41
  "dependencies": {
42
- "@graphile/lru": "^5.0.0-beta.1",
43
- "tslib": "^2.5.0"
42
+ "@graphile/lru": "^5.0.0-beta.3",
43
+ "tslib": "^2.6.2"
44
44
  },
45
45
  "engines": {
46
46
  "node": ">=16.10"
47
47
  },
48
48
  "peerDependencies": {
49
- "grafast": "^0.0.1-beta.3",
50
- "grafserv": "^0.0.1-beta.3",
51
- "graphile-config": "^0.0.1-beta.1"
49
+ "grafast": "^0.1.1-beta.18",
50
+ "grafserv": "^0.1.1-beta.20",
51
+ "graphile-config": "^0.0.1-beta.13"
52
52
  },
53
53
  "peerDependenciesMeta": {
54
54
  "graphile-config": {
@@ -56,13 +56,13 @@
56
56
  }
57
57
  },
58
58
  "devDependencies": {
59
- "grafast": "^0.0.1-beta.3",
60
- "grafserv": "^0.0.1-beta.3",
61
- "graphile-config": "^0.0.1-beta.1",
62
- "jest": "^28.1.3",
63
- "jest-serializer-graphql-schema": "^5.0.0-beta.1",
59
+ "grafast": "^0.1.1-beta.18",
60
+ "grafserv": "^0.1.1-beta.20",
61
+ "graphile-config": "^0.0.1-beta.13",
62
+ "jest": "^29.6.4",
63
+ "jest-serializer-graphql-schema": "^5.0.0-beta.3",
64
64
  "ts-node": "^10.9.1",
65
- "typescript": "^5.0.4"
65
+ "typescript": "^5.2.2"
66
66
  },
67
67
  "files": [
68
68
  "dist",