houdini 2.0.0-next.9 → 2.0.0

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.
Files changed (455) hide show
  1. package/build/adapter/index.d.ts +2 -2
  2. package/build/adapter/index.js +6 -0
  3. package/build/cmd/generate.d.ts +5 -0
  4. package/build/cmd/generate.js +77 -0
  5. package/build/cmd/index.js +32 -0
  6. package/build/cmd/init.js +565 -0
  7. package/build/cmd/pullSchema.js +26 -0
  8. package/build/lib/ast.js +71 -0
  9. package/build/lib/codegen.d.ts +57 -0
  10. package/build/lib/codegen.js +617 -0
  11. package/build/lib/config.d.ts +240 -177
  12. package/build/lib/config.js +143 -0
  13. package/build/lib/constants.js +14 -0
  14. package/build/lib/database.d.ts +7 -0
  15. package/build/lib/database.js +624 -0
  16. package/build/lib/db.d.ts +13 -0
  17. package/build/lib/db.js +135 -0
  18. package/build/lib/deepMerge.js +23 -0
  19. package/build/lib/error.d.ts +16 -0
  20. package/build/lib/error.js +115 -0
  21. package/build/lib/fs.d.ts +9 -11
  22. package/build/lib/fs.js +245 -0
  23. package/build/lib/graphql.d.ts +5 -32
  24. package/build/lib/graphql.js +36 -0
  25. package/build/lib/imports.d.ts +29 -14
  26. package/build/lib/imports.js +66 -0
  27. package/build/lib/index.d.ts +17 -24
  28. package/build/lib/index.js +21 -0
  29. package/build/lib/logger.d.ts +12 -0
  30. package/build/lib/logger.js +45 -0
  31. package/build/lib/parse.d.ts +1 -2
  32. package/build/lib/parse.js +32 -0
  33. package/build/lib/path.d.ts +0 -1
  34. package/build/lib/path.js +44 -0
  35. package/build/lib/pipeline.d.ts +1 -1
  36. package/build/lib/pipeline.js +8 -0
  37. package/build/lib/plugins.d.ts +4 -0
  38. package/build/lib/plugins.js +88 -0
  39. package/build/lib/project.d.ts +19 -0
  40. package/build/lib/project.js +296 -0
  41. package/build/lib/schema.d.ts +1 -0
  42. package/build/lib/schema.js +61 -0
  43. package/build/lib/sleep.d.ts +1 -0
  44. package/build/lib/sleep.js +8 -0
  45. package/build/lib/types.d.ts +92 -303
  46. package/build/lib/types.js +37 -0
  47. package/build/lib/walk.d.ts +11 -6
  48. package/build/lib/walk.js +138 -0
  49. package/build/node/index.d.ts +44 -0
  50. package/build/node/index.js +402 -0
  51. package/build/oauth/index.d.ts +41 -0
  52. package/build/oauth/index.js +108 -0
  53. package/build/package.json +212 -0
  54. package/build/router/auth-token.d.ts +29 -0
  55. package/build/router/auth-token.js +168 -0
  56. package/build/{lib/router → router}/conventions.d.ts +10 -1
  57. package/build/router/conventions.js +165 -0
  58. package/build/{runtime-esm/router → router}/cookies.js +21 -21
  59. package/build/{runtime-esm/router → router}/jwt.js +8 -6
  60. package/build/{lib/router → router}/manifest.d.ts +2 -2
  61. package/build/router/manifest.js +279 -0
  62. package/build/{runtime/router → router}/match.d.ts +10 -10
  63. package/build/router/match.js +219 -0
  64. package/build/router/server.d.ts +57 -0
  65. package/build/router/server.js +500 -0
  66. package/build/{runtime/router → router}/session.d.ts +8 -3
  67. package/build/router/session.js +338 -0
  68. package/build/router/types.d.ts +44 -0
  69. package/build/runtime/cache/benchmarks/cache.bench.d.ts +1 -0
  70. package/build/runtime/cache/benchmarks/cache.bench.js +943 -0
  71. package/build/runtime/cache/gc.d.ts +2 -1
  72. package/build/{runtime-esm → runtime}/cache/gc.js +4 -1
  73. package/build/runtime/cache/index.d.ts +173 -3
  74. package/build/{runtime-esm/cache/cache.js → runtime/cache/index.js} +197 -70
  75. package/build/runtime/cache/lists.d.ts +9 -4
  76. package/build/{runtime-esm → runtime}/cache/lists.js +116 -27
  77. package/build/runtime/cache/staleManager.d.ts +2 -1
  78. package/build/{runtime-esm → runtime}/cache/staleManager.js +6 -2
  79. package/build/runtime/cache/storage.d.ts +5 -2
  80. package/build/{runtime-esm → runtime}/cache/storage.js +126 -54
  81. package/build/{runtime-esm → runtime}/cache/stuff.js +4 -3
  82. package/build/runtime/cache/subscription.d.ts +23 -9
  83. package/build/{runtime-esm → runtime}/cache/subscription.js +103 -65
  84. package/build/runtime/{client/index.d.ts → client.d.ts} +15 -22
  85. package/build/runtime/client.js +86 -0
  86. package/build/runtime/coerce.d.ts +4 -0
  87. package/build/runtime/coerce.js +31 -0
  88. package/build/runtime/config.d.ts +20 -0
  89. package/build/runtime/config.js +88 -0
  90. package/build/runtime/{lib/constants.d.ts → constants.d.ts} +1 -1
  91. package/build/runtime/{client/documentStore.d.ts → documentStore.d.ts} +18 -11
  92. package/build/{runtime-esm/client → runtime}/documentStore.js +53 -56
  93. package/build/runtime/endpoint.d.ts +14 -0
  94. package/build/runtime/endpoint.js +29 -0
  95. package/build/{runtime-cjs/lib → runtime}/flatten.d.ts +1 -1
  96. package/build/runtime/formData.d.ts +24 -0
  97. package/build/runtime/formData.js +93 -0
  98. package/build/runtime/index.d.ts +16 -8
  99. package/build/runtime/index.js +54 -0
  100. package/build/{runtime-cjs/lib → runtime}/key.d.ts +1 -1
  101. package/build/{runtime-esm/lib → runtime}/key.js +4 -4
  102. package/build/{runtime-esm/lib → runtime}/log.js +3 -3
  103. package/build/runtime/multipart.d.ts +8 -0
  104. package/build/runtime/multipart.js +49 -0
  105. package/build/{runtime-cjs/lib → runtime}/pageInfo.d.ts +3 -3
  106. package/build/{runtime-esm/lib → runtime}/pageInfo.js +2 -2
  107. package/build/{runtime-cjs/lib → runtime}/pagination.d.ts +12 -8
  108. package/build/{runtime-esm/lib → runtime}/pagination.js +157 -21
  109. package/build/{runtime-cjs/lib → runtime}/scalars.d.ts +6 -6
  110. package/build/{runtime-esm/lib → runtime}/scalars.js +10 -43
  111. package/build/{runtime-cjs/lib → runtime}/selection.d.ts +1 -1
  112. package/build/{runtime-esm/lib → runtime}/selection.js +17 -2
  113. package/build/runtime/{lib/store.d.ts → store.d.ts} +1 -1
  114. package/build/{runtime-esm/lib → runtime}/store.js +2 -3
  115. package/build/runtime/{lib/types.d.ts → types.d.ts} +102 -101
  116. package/build/{runtime-esm/lib → runtime}/types.js +9 -14
  117. package/build/test/index.d.ts +6 -25
  118. package/build/test/index.js +329 -0
  119. package/build/test/package.json +1 -0
  120. package/build/vite/hmr.d.ts +26 -3
  121. package/build/vite/hmr.js +431 -0
  122. package/build/vite/houdini.d.ts +4 -10
  123. package/build/vite/houdini.js +134 -0
  124. package/build/vite/index.d.ts +13 -7
  125. package/build/vite/index.js +104 -0
  126. package/build/vite/package.json +1 -0
  127. package/build/vite/schema.d.ts +5 -3
  128. package/build/vite/schema.js +193 -0
  129. package/package.json +148 -57
  130. package/build/adapter-cjs/index.js +0 -33
  131. package/build/adapter-cjs/package.json +0 -1
  132. package/build/adapter-esm/index.js +0 -9
  133. package/build/cmd-cjs/index.js +0 -89299
  134. package/build/cmd-cjs/package.json +0 -1
  135. package/build/cmd-esm/index.js +0 -89303
  136. package/build/codegen/generators/artifacts/fieldKey.d.ts +0 -3
  137. package/build/codegen/generators/artifacts/index.d.ts +0 -17
  138. package/build/codegen/generators/artifacts/indexFile.d.ts +0 -2
  139. package/build/codegen/generators/artifacts/inputs.d.ts +0 -4
  140. package/build/codegen/generators/artifacts/operations.d.ts +0 -11
  141. package/build/codegen/generators/artifacts/selection.d.ts +0 -20
  142. package/build/codegen/generators/artifacts/utils.d.ts +0 -8
  143. package/build/codegen/generators/comments/jsdoc.d.ts +0 -2
  144. package/build/codegen/generators/definitions/enums.d.ts +0 -2
  145. package/build/codegen/generators/definitions/index.d.ts +0 -2
  146. package/build/codegen/generators/index.d.ts +0 -6
  147. package/build/codegen/generators/indexFile/index.d.ts +0 -2
  148. package/build/codegen/generators/persistedQueries/index.d.ts +0 -2
  149. package/build/codegen/generators/runtime/graphqlFunction.d.ts +0 -2
  150. package/build/codegen/generators/runtime/index.d.ts +0 -3
  151. package/build/codegen/generators/runtime/injectPlugins.d.ts +0 -7
  152. package/build/codegen/generators/runtime/pluginIndex.d.ts +0 -5
  153. package/build/codegen/generators/runtime/pluginRuntime.d.ts +0 -15
  154. package/build/codegen/generators/runtime/runtimeConfig.d.ts +0 -7
  155. package/build/codegen/generators/typescript/addReferencedInputTypes.d.ts +0 -4
  156. package/build/codegen/generators/typescript/documentTypes.d.ts +0 -2
  157. package/build/codegen/generators/typescript/imperativeTypeDef.d.ts +0 -2
  158. package/build/codegen/generators/typescript/index.d.ts +0 -2
  159. package/build/codegen/generators/typescript/inlineType.d.ts +0 -29
  160. package/build/codegen/generators/typescript/loadingState.d.ts +0 -8
  161. package/build/codegen/index.d.ts +0 -8
  162. package/build/codegen/transforms/addFields.d.ts +0 -2
  163. package/build/codegen/transforms/collectDefinitions.d.ts +0 -9
  164. package/build/codegen/transforms/componentFields.d.ts +0 -8
  165. package/build/codegen/transforms/fragmentVariables.d.ts +0 -17
  166. package/build/codegen/transforms/index.d.ts +0 -9
  167. package/build/codegen/transforms/list.d.ts +0 -9
  168. package/build/codegen/transforms/paginate.d.ts +0 -4
  169. package/build/codegen/transforms/runtimeScalars.d.ts +0 -2
  170. package/build/codegen/transforms/schema.d.ts +0 -2
  171. package/build/codegen/transforms/typename.d.ts +0 -2
  172. package/build/codegen/utils/commonjs.d.ts +0 -5
  173. package/build/codegen/utils/flattenSelections.d.ts +0 -11
  174. package/build/codegen/utils/index.d.ts +0 -4
  175. package/build/codegen/utils/moduleExport.d.ts +0 -4
  176. package/build/codegen/utils/murmur.d.ts +0 -9
  177. package/build/codegen/utils/objectIdentificationSelection.d.ts +0 -3
  178. package/build/codegen/utils/stripLoc.d.ts +0 -3
  179. package/build/codegen/validators/componentFields.d.ts +0 -2
  180. package/build/codegen/validators/index.d.ts +0 -5
  181. package/build/codegen/validators/noIDAlias.d.ts +0 -2
  182. package/build/codegen/validators/plugins.d.ts +0 -3
  183. package/build/codegen/validators/typeCheck.d.ts +0 -5
  184. package/build/codegen/validators/uniqueNames.d.ts +0 -2
  185. package/build/codegen-cjs/index.js +0 -74656
  186. package/build/codegen-cjs/package.json +0 -1
  187. package/build/codegen-esm/index.js +0 -74655
  188. package/build/lib/cleanupFiles.d.ts +0 -1
  189. package/build/lib/detectTools.d.ts +0 -16
  190. package/build/lib/introspection.d.ts +0 -3
  191. package/build/lib/plugin.d.ts +0 -2
  192. package/build/lib/router/index.d.ts +0 -9
  193. package/build/lib/router/server.d.ts +0 -7
  194. package/build/lib/router/types.d.ts +0 -23
  195. package/build/lib/typescript.d.ts +0 -20
  196. package/build/lib/watchAndRun.d.ts +0 -61
  197. package/build/lib-cjs/index.js +0 -79739
  198. package/build/lib-cjs/package.json +0 -1
  199. package/build/lib-esm/index.js +0 -79648
  200. package/build/runtime/cache/cache.d.ts +0 -169
  201. package/build/runtime/client/plugins/cache.d.ts +0 -9
  202. package/build/runtime/client/plugins/fetch.d.ts +0 -38
  203. package/build/runtime/client/plugins/fetchParams.d.ts +0 -9
  204. package/build/runtime/client/plugins/fragment.d.ts +0 -2
  205. package/build/runtime/client/plugins/index.d.ts +0 -9
  206. package/build/runtime/client/plugins/injectedPlugins.d.ts +0 -4
  207. package/build/runtime/client/plugins/mutation.d.ts +0 -2
  208. package/build/runtime/client/plugins/optimisticKeys.d.ts +0 -7
  209. package/build/runtime/client/plugins/query.d.ts +0 -2
  210. package/build/runtime/client/plugins/subscription.d.ts +0 -20
  211. package/build/runtime/client/plugins/test.d.ts +0 -15
  212. package/build/runtime/client/plugins/throwOnError.d.ts +0 -8
  213. package/build/runtime/client/utils/documentPlugins.d.ts +0 -3
  214. package/build/runtime/client/utils/index.d.ts +0 -1
  215. package/build/runtime/generated.d.ts +0 -5
  216. package/build/runtime/imports/config.d.ts +0 -3
  217. package/build/runtime/imports/pluginConfig.d.ts +0 -3
  218. package/build/runtime/lib/config.d.ts +0 -216
  219. package/build/runtime/lib/deepEquals.d.ts +0 -1
  220. package/build/runtime/lib/flatten.d.ts +0 -2
  221. package/build/runtime/lib/index.d.ts +0 -10
  222. package/build/runtime/lib/key.d.ts +0 -6
  223. package/build/runtime/lib/log.d.ts +0 -6
  224. package/build/runtime/lib/lru.d.ts +0 -52
  225. package/build/runtime/lib/pageInfo.d.ts +0 -7
  226. package/build/runtime/lib/pagination.d.ts +0 -27
  227. package/build/runtime/lib/scalars.d.ts +0 -14
  228. package/build/runtime/lib/selection.d.ts +0 -2
  229. package/build/runtime/public/cache.d.ts +0 -42
  230. package/build/runtime/public/index.d.ts +0 -1
  231. package/build/runtime/public/list.d.ts +0 -18
  232. package/build/runtime/public/record.d.ts +0 -40
  233. package/build/runtime/public/tests/test.d.ts +0 -156
  234. package/build/runtime/public/types.d.ts +0 -62
  235. package/build/runtime/router/cookies.d.ts +0 -41
  236. package/build/runtime/router/jwt.d.ts +0 -117
  237. package/build/runtime/router/server.d.ts +0 -24
  238. package/build/runtime/router/types.d.ts +0 -26
  239. package/build/runtime/server/index.d.ts +0 -17
  240. package/build/runtime-cjs/cache/cache.d.ts +0 -169
  241. package/build/runtime-cjs/cache/cache.js +0 -1077
  242. package/build/runtime-cjs/cache/constants.d.ts +0 -1
  243. package/build/runtime-cjs/cache/constants.js +0 -28
  244. package/build/runtime-cjs/cache/gc.d.ts +0 -10
  245. package/build/runtime-cjs/cache/gc.js +0 -74
  246. package/build/runtime-cjs/cache/index.d.ts +0 -3
  247. package/build/runtime-cjs/cache/index.js +0 -25
  248. package/build/runtime-cjs/cache/lists.d.ts +0 -89
  249. package/build/runtime-cjs/cache/lists.js +0 -467
  250. package/build/runtime-cjs/cache/staleManager.d.ts +0 -31
  251. package/build/runtime-cjs/cache/staleManager.js +0 -123
  252. package/build/runtime-cjs/cache/storage.d.ts +0 -110
  253. package/build/runtime-cjs/cache/storage.js +0 -451
  254. package/build/runtime-cjs/cache/stuff.d.ts +0 -2
  255. package/build/runtime-cjs/cache/stuff.js +0 -56
  256. package/build/runtime-cjs/cache/subscription.d.ts +0 -52
  257. package/build/runtime-cjs/cache/subscription.js +0 -349
  258. package/build/runtime-cjs/client/documentStore.d.ts +0 -107
  259. package/build/runtime-cjs/client/documentStore.js +0 -487
  260. package/build/runtime-cjs/client/index.d.ts +0 -50
  261. package/build/runtime-cjs/client/index.js +0 -162
  262. package/build/runtime-cjs/client/plugins/cache.d.ts +0 -9
  263. package/build/runtime-cjs/client/plugins/cache.js +0 -138
  264. package/build/runtime-cjs/client/plugins/fetch.d.ts +0 -38
  265. package/build/runtime-cjs/client/plugins/fetch.js +0 -210
  266. package/build/runtime-cjs/client/plugins/fetchParams.d.ts +0 -9
  267. package/build/runtime-cjs/client/plugins/fetchParams.js +0 -47
  268. package/build/runtime-cjs/client/plugins/fragment.d.ts +0 -2
  269. package/build/runtime-cjs/client/plugins/fragment.js +0 -77
  270. package/build/runtime-cjs/client/plugins/index.d.ts +0 -9
  271. package/build/runtime-cjs/client/plugins/index.js +0 -45
  272. package/build/runtime-cjs/client/plugins/injectedPlugins.d.ts +0 -4
  273. package/build/runtime-cjs/client/plugins/injectedPlugins.js +0 -25
  274. package/build/runtime-cjs/client/plugins/mutation.d.ts +0 -2
  275. package/build/runtime-cjs/client/plugins/mutation.js +0 -89
  276. package/build/runtime-cjs/client/plugins/optimisticKeys.d.ts +0 -7
  277. package/build/runtime-cjs/client/plugins/optimisticKeys.js +0 -324
  278. package/build/runtime-cjs/client/plugins/query.d.ts +0 -2
  279. package/build/runtime-cjs/client/plugins/query.js +0 -93
  280. package/build/runtime-cjs/client/plugins/subscription.d.ts +0 -20
  281. package/build/runtime-cjs/client/plugins/subscription.js +0 -114
  282. package/build/runtime-cjs/client/plugins/test.d.ts +0 -15
  283. package/build/runtime-cjs/client/plugins/test.js +0 -118
  284. package/build/runtime-cjs/client/plugins/throwOnError.d.ts +0 -8
  285. package/build/runtime-cjs/client/plugins/throwOnError.js +0 -47
  286. package/build/runtime-cjs/client/utils/documentPlugins.d.ts +0 -3
  287. package/build/runtime-cjs/client/utils/documentPlugins.js +0 -57
  288. package/build/runtime-cjs/client/utils/index.d.ts +0 -1
  289. package/build/runtime-cjs/client/utils/index.js +0 -22
  290. package/build/runtime-cjs/generated.d.ts +0 -5
  291. package/build/runtime-cjs/generated.js +0 -16
  292. package/build/runtime-cjs/imports/config.d.ts +0 -3
  293. package/build/runtime-cjs/imports/config.js +0 -24
  294. package/build/runtime-cjs/imports/pluginConfig.d.ts +0 -3
  295. package/build/runtime-cjs/imports/pluginConfig.js +0 -25
  296. package/build/runtime-cjs/index.d.ts +0 -8
  297. package/build/runtime-cjs/index.js +0 -61
  298. package/build/runtime-cjs/lib/config.d.ts +0 -216
  299. package/build/runtime-cjs/lib/config.js +0 -110
  300. package/build/runtime-cjs/lib/constants.d.ts +0 -6
  301. package/build/runtime-cjs/lib/constants.js +0 -38
  302. package/build/runtime-cjs/lib/deepEquals.js +0 -52
  303. package/build/runtime-cjs/lib/flatten.js +0 -41
  304. package/build/runtime-cjs/lib/index.d.ts +0 -10
  305. package/build/runtime-cjs/lib/index.js +0 -40
  306. package/build/runtime-cjs/lib/key.js +0 -41
  307. package/build/runtime-cjs/lib/log.js +0 -72
  308. package/build/runtime-cjs/lib/lru.js +0 -73
  309. package/build/runtime-cjs/lib/pageInfo.js +0 -79
  310. package/build/runtime-cjs/lib/pagination.js +0 -240
  311. package/build/runtime-cjs/lib/scalars.js +0 -147
  312. package/build/runtime-cjs/lib/selection.js +0 -66
  313. package/build/runtime-cjs/lib/store.d.ts +0 -19
  314. package/build/runtime-cjs/lib/store.js +0 -81
  315. package/build/runtime-cjs/lib/types.d.ts +0 -417
  316. package/build/runtime-cjs/lib/types.js +0 -104
  317. package/build/runtime-cjs/package.json +0 -1
  318. package/build/runtime-cjs/public/cache.d.ts +0 -42
  319. package/build/runtime-cjs/public/cache.js +0 -98
  320. package/build/runtime-cjs/public/index.d.ts +0 -1
  321. package/build/runtime-cjs/public/index.js +0 -28
  322. package/build/runtime-cjs/public/list.d.ts +0 -18
  323. package/build/runtime-cjs/public/list.js +0 -151
  324. package/build/runtime-cjs/public/record.d.ts +0 -40
  325. package/build/runtime-cjs/public/record.js +0 -94
  326. package/build/runtime-cjs/public/tests/test.d.ts +0 -156
  327. package/build/runtime-cjs/public/tests/test.js +0 -60
  328. package/build/runtime-cjs/public/types.d.ts +0 -62
  329. package/build/runtime-cjs/public/types.js +0 -16
  330. package/build/runtime-cjs/router/cookies.js +0 -168
  331. package/build/runtime-cjs/router/jwt.js +0 -168
  332. package/build/runtime-cjs/router/match.d.ts +0 -39
  333. package/build/runtime-cjs/router/match.js +0 -158
  334. package/build/runtime-cjs/router/server.d.ts +0 -24
  335. package/build/runtime-cjs/router/server.js +0 -117
  336. package/build/runtime-cjs/router/session.d.ts +0 -22
  337. package/build/runtime-cjs/router/session.js +0 -100
  338. package/build/runtime-cjs/router/types.d.ts +0 -26
  339. package/build/runtime-cjs/router/types.js +0 -16
  340. package/build/runtime-cjs/server/index.d.ts +0 -17
  341. package/build/runtime-cjs/server/index.js +0 -62
  342. package/build/runtime-esm/cache/cache.d.ts +0 -169
  343. package/build/runtime-esm/cache/constants.d.ts +0 -1
  344. package/build/runtime-esm/cache/gc.d.ts +0 -10
  345. package/build/runtime-esm/cache/index.d.ts +0 -3
  346. package/build/runtime-esm/cache/index.js +0 -5
  347. package/build/runtime-esm/cache/lists.d.ts +0 -89
  348. package/build/runtime-esm/cache/staleManager.d.ts +0 -31
  349. package/build/runtime-esm/cache/storage.d.ts +0 -110
  350. package/build/runtime-esm/cache/stuff.d.ts +0 -2
  351. package/build/runtime-esm/cache/subscription.d.ts +0 -52
  352. package/build/runtime-esm/client/documentStore.d.ts +0 -107
  353. package/build/runtime-esm/client/index.d.ts +0 -50
  354. package/build/runtime-esm/client/index.js +0 -130
  355. package/build/runtime-esm/client/plugins/cache.d.ts +0 -9
  356. package/build/runtime-esm/client/plugins/cache.js +0 -104
  357. package/build/runtime-esm/client/plugins/fetch.d.ts +0 -38
  358. package/build/runtime-esm/client/plugins/fetch.js +0 -184
  359. package/build/runtime-esm/client/plugins/fetchParams.d.ts +0 -9
  360. package/build/runtime-esm/client/plugins/fetchParams.js +0 -23
  361. package/build/runtime-esm/client/plugins/fragment.d.ts +0 -2
  362. package/build/runtime-esm/client/plugins/fragment.js +0 -53
  363. package/build/runtime-esm/client/plugins/index.d.ts +0 -9
  364. package/build/runtime-esm/client/plugins/index.js +0 -12
  365. package/build/runtime-esm/client/plugins/injectedPlugins.d.ts +0 -4
  366. package/build/runtime-esm/client/plugins/injectedPlugins.js +0 -5
  367. package/build/runtime-esm/client/plugins/mutation.d.ts +0 -2
  368. package/build/runtime-esm/client/plugins/mutation.js +0 -65
  369. package/build/runtime-esm/client/plugins/optimisticKeys.d.ts +0 -7
  370. package/build/runtime-esm/client/plugins/optimisticKeys.js +0 -290
  371. package/build/runtime-esm/client/plugins/query.d.ts +0 -2
  372. package/build/runtime-esm/client/plugins/query.js +0 -69
  373. package/build/runtime-esm/client/plugins/subscription.d.ts +0 -20
  374. package/build/runtime-esm/client/plugins/subscription.js +0 -90
  375. package/build/runtime-esm/client/plugins/test.d.ts +0 -15
  376. package/build/runtime-esm/client/plugins/test.js +0 -93
  377. package/build/runtime-esm/client/plugins/throwOnError.d.ts +0 -8
  378. package/build/runtime-esm/client/plugins/throwOnError.js +0 -23
  379. package/build/runtime-esm/client/utils/documentPlugins.d.ts +0 -3
  380. package/build/runtime-esm/client/utils/documentPlugins.js +0 -33
  381. package/build/runtime-esm/client/utils/index.d.ts +0 -1
  382. package/build/runtime-esm/client/utils/index.js +0 -1
  383. package/build/runtime-esm/generated.d.ts +0 -5
  384. package/build/runtime-esm/generated.js +0 -0
  385. package/build/runtime-esm/imports/config.d.ts +0 -3
  386. package/build/runtime-esm/imports/config.js +0 -4
  387. package/build/runtime-esm/imports/pluginConfig.d.ts +0 -3
  388. package/build/runtime-esm/imports/pluginConfig.js +0 -5
  389. package/build/runtime-esm/index.d.ts +0 -8
  390. package/build/runtime-esm/index.js +0 -22
  391. package/build/runtime-esm/lib/config.d.ts +0 -216
  392. package/build/runtime-esm/lib/config.js +0 -69
  393. package/build/runtime-esm/lib/constants.d.ts +0 -6
  394. package/build/runtime-esm/lib/deepEquals.d.ts +0 -1
  395. package/build/runtime-esm/lib/flatten.d.ts +0 -2
  396. package/build/runtime-esm/lib/index.d.ts +0 -10
  397. package/build/runtime-esm/lib/index.js +0 -10
  398. package/build/runtime-esm/lib/key.d.ts +0 -6
  399. package/build/runtime-esm/lib/log.d.ts +0 -6
  400. package/build/runtime-esm/lib/lru.d.ts +0 -52
  401. package/build/runtime-esm/lib/pageInfo.d.ts +0 -7
  402. package/build/runtime-esm/lib/pagination.d.ts +0 -27
  403. package/build/runtime-esm/lib/scalars.d.ts +0 -14
  404. package/build/runtime-esm/lib/selection.d.ts +0 -2
  405. package/build/runtime-esm/lib/store.d.ts +0 -19
  406. package/build/runtime-esm/lib/types.d.ts +0 -417
  407. package/build/runtime-esm/public/cache.d.ts +0 -42
  408. package/build/runtime-esm/public/cache.js +0 -74
  409. package/build/runtime-esm/public/index.d.ts +0 -1
  410. package/build/runtime-esm/public/index.js +0 -4
  411. package/build/runtime-esm/public/list.d.ts +0 -18
  412. package/build/runtime-esm/public/list.js +0 -127
  413. package/build/runtime-esm/public/record.d.ts +0 -40
  414. package/build/runtime-esm/public/record.js +0 -70
  415. package/build/runtime-esm/public/tests/test.d.ts +0 -156
  416. package/build/runtime-esm/public/tests/test.js +0 -36
  417. package/build/runtime-esm/public/types.d.ts +0 -62
  418. package/build/runtime-esm/router/cookies.d.ts +0 -41
  419. package/build/runtime-esm/router/jwt.d.ts +0 -117
  420. package/build/runtime-esm/router/match.d.ts +0 -39
  421. package/build/runtime-esm/router/match.js +0 -131
  422. package/build/runtime-esm/router/server.d.ts +0 -24
  423. package/build/runtime-esm/router/server.js +0 -92
  424. package/build/runtime-esm/router/session.d.ts +0 -22
  425. package/build/runtime-esm/router/session.js +0 -74
  426. package/build/runtime-esm/router/types.d.ts +0 -26
  427. package/build/runtime-esm/router/types.js +0 -0
  428. package/build/runtime-esm/server/index.d.ts +0 -17
  429. package/build/runtime-esm/server/index.js +0 -38
  430. package/build/test-cjs/index.js +0 -75249
  431. package/build/test-cjs/package.json +0 -1
  432. package/build/test-esm/index.js +0 -75244
  433. package/build/vite/imports.d.ts +0 -40
  434. package/build/vite-cjs/index.js +0 -86272
  435. package/build/vite-cjs/package.json +0 -1
  436. package/build/vite-esm/index.js +0 -86264
  437. /package/build/{adapter-esm → adapter}/package.json +0 -0
  438. /package/build/{cmd-esm → cmd}/package.json +0 -0
  439. /package/build/{vite → lib}/ast.d.ts +0 -0
  440. /package/build/{codegen-esm → lib}/package.json +0 -0
  441. /package/build/{lib-esm → node}/package.json +0 -0
  442. /package/build/{runtime-esm → oauth}/package.json +0 -0
  443. /package/build/{runtime-cjs/router → router}/cookies.d.ts +0 -0
  444. /package/build/{runtime-cjs/router → router}/jwt.d.ts +0 -0
  445. /package/build/{test-esm → router}/package.json +0 -0
  446. /package/build/{runtime-esm/public → router}/types.js +0 -0
  447. /package/build/{runtime-esm → runtime}/cache/constants.js +0 -0
  448. /package/build/{runtime-esm/lib → runtime}/constants.js +0 -0
  449. /package/build/{runtime-cjs/lib → runtime}/deepEquals.d.ts +0 -0
  450. /package/build/{runtime-esm/lib → runtime}/deepEquals.js +0 -0
  451. /package/build/{runtime-esm/lib → runtime}/flatten.js +0 -0
  452. /package/build/{runtime-cjs/lib → runtime}/log.d.ts +0 -0
  453. /package/build/{runtime-cjs/lib → runtime}/lru.d.ts +0 -0
  454. /package/build/{runtime-esm/lib → runtime}/lru.js +0 -0
  455. /package/build/{vite-esm → runtime}/package.json +0 -0
@@ -1,89 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var mutation_exports = {};
20
- __export(mutation_exports, {
21
- mutation: () => mutation
22
- });
23
- module.exports = __toCommonJS(mutation_exports);
24
- var import_scalars = require("../../lib/scalars");
25
- var import_types = require("../../lib/types");
26
- var import_utils = require("../utils");
27
- const mutation = (cache) => (0, import_utils.documentPlugin)(import_types.ArtifactKind.Mutation, () => {
28
- return {
29
- async start(ctx, { next, marshalVariables }) {
30
- const layerOptimistic = cache._internal_unstable.storage.createLayer(true);
31
- let toNotify = [];
32
- const optimisticResponse = ctx.stuff.optimisticResponse;
33
- if (optimisticResponse) {
34
- toNotify = cache.write({
35
- selection: ctx.artifact.selection,
36
- // make sure that any scalar values get processed into something we can cache
37
- data: await (0, import_scalars.marshalSelection)({
38
- selection: ctx.artifact.selection,
39
- data: optimisticResponse
40
- }),
41
- variables: marshalVariables(ctx),
42
- layer: layerOptimistic.id
43
- });
44
- }
45
- ctx.cacheParams = {
46
- ...ctx.cacheParams,
47
- // write to the mutation's layer
48
- layer: layerOptimistic,
49
- // notify any subscribers that we updated with the optimistic response
50
- // in order to address situations where the optimistic update was wrong
51
- notifySubscribers: toNotify,
52
- // make sure that we notify subscribers for any values that we compare
53
- // in order to address any race conditions when comparing the previous value
54
- forceNotify: true
55
- };
56
- next(ctx);
57
- },
58
- afterNetwork(ctx, { resolve }) {
59
- if (ctx.cacheParams?.layer) {
60
- cache.clearLayer(ctx.cacheParams.layer.id);
61
- }
62
- resolve(ctx);
63
- },
64
- end(ctx, { resolve, value }) {
65
- const hasErrors = value.errors && value.errors.length > 0;
66
- if (hasErrors) {
67
- if (ctx.cacheParams?.layer) {
68
- cache.clearLayer(ctx.cacheParams.layer.id);
69
- }
70
- }
71
- if (ctx.cacheParams?.layer) {
72
- cache._internal_unstable.storage.resolveLayer(ctx.cacheParams.layer.id);
73
- }
74
- resolve(ctx);
75
- },
76
- catch(ctx, { error }) {
77
- if (ctx.cacheParams?.layer) {
78
- const { layer } = ctx.cacheParams;
79
- cache.clearLayer(layer.id);
80
- cache._internal_unstable.storage.resolveLayer(layer.id);
81
- }
82
- throw error;
83
- }
84
- };
85
- });
86
- // Annotate the CommonJS export names for ESM import in node:
87
- 0 && (module.exports = {
88
- mutation
89
- });
@@ -1,7 +0,0 @@
1
- import type { Cache } from '../../cache/cache';
2
- import type { ClientPlugin } from '../documentStore';
3
- export type CallbackMap = Record<string | number, Array<(newID: any) => void>>;
4
- export type KeyMap = Record<number, Record<string, keyof CallbackMap>>;
5
- type OptimisticObjectIDMap = Record<number, Record<string, string>>;
6
- export declare const optimisticKeys: (cache: Cache, callbackCache?: CallbackMap, keyCache?: KeyMap, objectIDs?: OptimisticObjectIDMap, invocationCounter?: number) => ClientPlugin;
7
- export {};
@@ -1,324 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var optimisticKeys_exports = {};
30
- __export(optimisticKeys_exports, {
31
- optimisticKeys: () => optimisticKeys
32
- });
33
- module.exports = __toCommonJS(optimisticKeys_exports);
34
- var import_config = __toESM(require("../../imports/config"), 1);
35
- var import_lib = require("../../lib");
36
- var import_types = require("../../lib/types");
37
- const keys = {};
38
- const callbacks = {};
39
- const objectIDMap = {};
40
- const optimisticKeys = (cache, callbackCache = callbacks, keyCache = keys, objectIDs = objectIDMap, invocationCounter = 1) => () => {
41
- return {
42
- async start(ctx, { next }) {
43
- const optimisticResponse = ctx.stuff.optimisticResponse;
44
- const newCtx = { ...ctx };
45
- if (optimisticResponse && ctx.artifact.kind === import_types.ArtifactKind.Mutation && ctx.artifact.optimisticKeys) {
46
- newCtx.stuff.mutationID = invocationCounter++;
47
- addKeysToResponse({
48
- selection: ctx.artifact.selection,
49
- response: optimisticResponse,
50
- callbackStore: callbackCache,
51
- keyStore: keyCache,
52
- objectIDs,
53
- mutationID: newCtx.stuff.mutationID
54
- });
55
- newCtx.stuff.optimisticResponse = optimisticResponse;
56
- }
57
- next(newCtx);
58
- },
59
- // if a request has variables that contain an optimistic key we need to block the
60
- // request before it is sent to the server
61
- beforeNetwork(ctx, { next }) {
62
- if (Object.keys(keyCache).length === 0) {
63
- return next(ctx);
64
- }
65
- const pendingVariables = extractInputKeys(
66
- ctx.variables ?? {},
67
- callbackCache
68
- );
69
- if (Object.keys(pendingVariables).length === 0) {
70
- return next(ctx);
71
- }
72
- for (const key of Object.keys(pendingVariables)) {
73
- callbackCache[key].push((newID) => {
74
- pendingVariables[key] = newID;
75
- if (Object.values(pendingVariables).every((value) => value !== null)) {
76
- next({
77
- ...ctx,
78
- variables: replaceKeyWithVariable(
79
- { ...ctx.variables },
80
- pendingVariables
81
- )
82
- });
83
- }
84
- });
85
- }
86
- },
87
- afterNetwork(ctx, { value, resolve }) {
88
- if (ctx.artifact.kind === import_types.ArtifactKind.Mutation && ctx.artifact.optimisticKeys && typeof ctx.stuff.mutationID !== "undefined") {
89
- extractResponseKeys(
90
- cache,
91
- value.data ?? {},
92
- ctx.artifact.selection,
93
- keyCache,
94
- ctx.stuff.mutationID,
95
- {
96
- onNewKey: (optimisticValue, realValue) => {
97
- callbackCache[optimisticValue].forEach((cb) => {
98
- cb(realValue);
99
- });
100
- delete callbackCache[optimisticValue];
101
- },
102
- onIDChange: (optimisticValue, realValue) => {
103
- cache.registerKeyMap(optimisticValue, realValue);
104
- }
105
- }
106
- );
107
- }
108
- resolve(ctx);
109
- },
110
- // when the mutation ends, we no longer have any dependents that we have to track
111
- end(ctx, { resolve }) {
112
- if (typeof ctx.stuff.mutationID !== "undefined") {
113
- delete keyCache[ctx.stuff.mutationID];
114
- delete objectIDs[ctx.stuff.mutationID];
115
- }
116
- resolve(ctx);
117
- }
118
- };
119
- };
120
- function addKeysToResponse(args) {
121
- let targetSelection = (0, import_lib.getFieldsForType)(
122
- args.selection,
123
- args.response["__typename"],
124
- false
125
- );
126
- const newKeys = [];
127
- for (const [field, { type, selection: fieldSelection, optimisticKey }] of Object.entries(
128
- targetSelection
129
- )) {
130
- const value = args.response[field];
131
- const pathSoFar = `${args.path ?? ""}.${field}`;
132
- if (optimisticKey) {
133
- let keyValue;
134
- if (value) {
135
- const { marshaled } = (0, import_lib.marshalSelection)({
136
- data: { marshaled: value },
137
- selection: {
138
- fields: {
139
- value: {
140
- type,
141
- keyRaw: "value"
142
- }
143
- }
144
- }
145
- });
146
- keyValue = marshaled;
147
- } else {
148
- keyValue = generateKey(type);
149
- }
150
- newKeys.push(keyValue);
151
- args.response[field] = keyValue;
152
- args.callbackStore[keyValue] = [];
153
- args.keyStore[args.mutationID] = {
154
- [pathSoFar]: keyValue
155
- };
156
- }
157
- if (fieldSelection) {
158
- if (Array.isArray(value)) {
159
- for (const [index, item] of flattenList(value).entries()) {
160
- if (item && typeof item === "object" && !Array.isArray(item)) {
161
- addKeysToResponse({
162
- ...args,
163
- selection: fieldSelection,
164
- response: item,
165
- type,
166
- path: `${pathSoFar}[${index}]`
167
- });
168
- }
169
- }
170
- } else if (value && typeof value == "object") {
171
- addKeysToResponse({
172
- ...args,
173
- selection: fieldSelection,
174
- response: value,
175
- type,
176
- path: pathSoFar
177
- });
178
- }
179
- }
180
- }
181
- if (newKeys.length > 0) {
182
- const objID = `${args.type}:${(0, import_lib.computeID)(import_config.default, args.type ?? "", args.response)}`;
183
- for (const key of newKeys) {
184
- args.objectIDs[args.mutationID] = {
185
- ...args.objectIDs[args.mutationID],
186
- [key]: objID
187
- };
188
- }
189
- }
190
- return args.response;
191
- }
192
- function extractInputKeys(obj, store, found = {}) {
193
- for (const value of Object.values(obj)) {
194
- if (typeof value === "string" && store[value]) {
195
- found[value] = null;
196
- }
197
- if (Array.isArray(value)) {
198
- for (const item of flattenList(value)) {
199
- if (item && typeof item === "object") {
200
- extractInputKeys(item, store, found);
201
- }
202
- }
203
- } else if (value && typeof value === "object") {
204
- extractInputKeys(value, store, found);
205
- }
206
- }
207
- return found;
208
- }
209
- function extractResponseKeys(cache, response, selection, keyMap, mutationID, events, objectIDs = objectIDMap, path = "", type = "") {
210
- let targetSelection = (0, import_lib.getFieldsForType)(
211
- selection,
212
- response["__typename"],
213
- false
214
- );
215
- let optimisticID = null;
216
- for (const [field, value] of Object.entries(response)) {
217
- const pathSoFar = `${path ?? ""}.${field}`;
218
- if (typeof value === "string" && keyMap[mutationID][pathSoFar]) {
219
- const newKey = keyMap[mutationID][pathSoFar];
220
- events.onNewKey(newKey, value);
221
- optimisticID = objectIDs[mutationID][newKey];
222
- }
223
- if (!selection || !targetSelection[field]) {
224
- continue;
225
- }
226
- let { type: type2, selection: fieldSelection } = targetSelection[field];
227
- if (Array.isArray(value)) {
228
- for (const [index, item] of flattenList(value).entries()) {
229
- if (item && typeof item === "object" && fieldSelection) {
230
- extractResponseKeys(
231
- cache,
232
- item,
233
- fieldSelection,
234
- keyMap,
235
- mutationID,
236
- events,
237
- objectIDs,
238
- `${pathSoFar}[${index}]`,
239
- type2
240
- );
241
- }
242
- }
243
- } else if (value && typeof value === "object" && fieldSelection) {
244
- extractResponseKeys(
245
- cache,
246
- value,
247
- fieldSelection,
248
- keyMap,
249
- mutationID,
250
- events,
251
- objectIDs,
252
- pathSoFar,
253
- type2
254
- );
255
- }
256
- }
257
- if (optimisticID) {
258
- const id = (0, import_lib.computeID)(import_config.default, type, response);
259
- events.onIDChange(`${type}:${id}`, optimisticID);
260
- cache.write({
261
- selection: {
262
- fields: Object.fromEntries(
263
- (0, import_lib.keyFieldsForType)(import_config.default, type).map((key) => [
264
- key,
265
- {
266
- type: "scalar",
267
- keyRaw: key
268
- }
269
- ])
270
- )
271
- },
272
- parent: optimisticID,
273
- data: response
274
- });
275
- }
276
- }
277
- function flattenList(source) {
278
- const result = [];
279
- const left = [...source];
280
- while (left.length > 0) {
281
- const head = left.shift();
282
- if (Array.isArray(head)) {
283
- left.push(...head);
284
- } else {
285
- result.push(head);
286
- }
287
- }
288
- return result;
289
- }
290
- function replaceKeyWithVariable(variables, keys2) {
291
- for (const [key, value] of Object.entries(variables)) {
292
- if (typeof value === "string" && keys2[value]) {
293
- variables[key] = keys2[value];
294
- }
295
- if (Array.isArray(value)) {
296
- for (const item of flattenList(value)) {
297
- if (item && typeof item === "object") {
298
- replaceKeyWithVariable(item, keys2);
299
- }
300
- }
301
- } else if (value && typeof value === "object") {
302
- replaceKeyWithVariable(value, keys2);
303
- }
304
- }
305
- return variables;
306
- }
307
- function generateKey(type) {
308
- if (type === "Int") {
309
- return (/* @__PURE__ */ new Date()).getTime();
310
- }
311
- if (type === "String") {
312
- return (/* @__PURE__ */ new Date()).getTime().toString();
313
- }
314
- if (type === "ID") {
315
- return (/* @__PURE__ */ new Date()).getTime().toString();
316
- }
317
- throw new Error(
318
- `unsupported type for optimistic key: ${type}. Please provide a value in your mutation arguments.`
319
- );
320
- }
321
- // Annotate the CommonJS export names for ESM import in node:
322
- 0 && (module.exports = {
323
- optimisticKeys
324
- });
@@ -1,2 +0,0 @@
1
- import type { Cache } from '../../cache/cache';
2
- export declare const query: (cache: Cache) => import("..").ClientPlugin;
@@ -1,93 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var query_exports = {};
20
- __export(query_exports, {
21
- query: () => query
22
- });
23
- module.exports = __toCommonJS(query_exports);
24
- var import_types = require("../../lib/types");
25
- var import_utils = require("../utils");
26
- const query = (cache) => (0, import_utils.documentPlugin)(import_types.ArtifactKind.Query, function() {
27
- let subscriptionSpec = null;
28
- let lastVariables = null;
29
- return {
30
- start(ctx, { next }) {
31
- const runtimeScalarPayload = {
32
- session: ctx.session
33
- };
34
- ctx.variables = {
35
- ...lastVariables,
36
- // we need to evaluate any runtime scalars but allow the user to overwrite them
37
- // by explicitly passing variables
38
- ...Object.fromEntries(
39
- Object.entries(ctx.artifact.input?.runtimeScalars ?? {}).map(
40
- ([field, type]) => {
41
- const runtimeScalar = ctx.config.features?.runtimeScalars?.[type];
42
- if (!runtimeScalar) {
43
- return [field, type];
44
- }
45
- return [field, runtimeScalar.resolve(runtimeScalarPayload)];
46
- }
47
- )
48
- ),
49
- ...ctx.variables
50
- };
51
- next(ctx);
52
- },
53
- // patch subscriptions on the way out so that we don't get a cache update
54
- // before the promise resolves
55
- end(ctx, { resolve, marshalVariables, variablesChanged }) {
56
- if (variablesChanged(ctx) && !ctx.cacheParams?.disableSubscriptions) {
57
- if (subscriptionSpec) {
58
- cache.unsubscribe(subscriptionSpec, subscriptionSpec.variables?.() || {});
59
- }
60
- lastVariables = { ...marshalVariables(ctx) };
61
- const variables = lastVariables;
62
- subscriptionSpec = {
63
- rootType: ctx.artifact.rootType,
64
- selection: ctx.artifact.selection,
65
- variables: () => variables,
66
- set: (newValue) => {
67
- resolve(ctx, {
68
- data: newValue,
69
- errors: null,
70
- fetching: false,
71
- partial: false,
72
- stale: false,
73
- source: import_types.DataSource.Cache,
74
- variables: ctx.variables ?? {}
75
- });
76
- }
77
- };
78
- cache.subscribe(subscriptionSpec, lastVariables);
79
- }
80
- resolve(ctx);
81
- },
82
- cleanup() {
83
- if (subscriptionSpec) {
84
- cache.unsubscribe(subscriptionSpec, subscriptionSpec.variables?.());
85
- lastVariables = null;
86
- }
87
- }
88
- };
89
- });
90
- // Annotate the CommonJS export names for ESM import in node:
91
- 0 && (module.exports = {
92
- query
93
- });
@@ -1,20 +0,0 @@
1
- import type { ClientPluginContext } from '../documentStore';
2
- export declare function subscription(factory: SubscriptionHandler): import("../documentStore").ClientPlugin;
3
- export type SubscriptionHandler = (ctx: ClientPluginContext) => SubscriptionClient;
4
- export type SubscriptionClient = {
5
- subscribe: (payload: {
6
- operationName?: string;
7
- query: string;
8
- variables?: Record<string, unknown>;
9
- extensions?: Record<'persistedQuery', string> | Record<string, unknown>;
10
- }, handlers: {
11
- next: (payload: {
12
- data?: {} | null;
13
- errors?: readonly {
14
- message: string;
15
- }[];
16
- }) => void;
17
- error: (data: {}) => void;
18
- complete: () => void;
19
- }) => () => void;
20
- };
@@ -1,114 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var subscription_exports = {};
20
- __export(subscription_exports, {
21
- subscription: () => subscription
22
- });
23
- module.exports = __toCommonJS(subscription_exports);
24
- var import_deepEquals = require("../../lib/deepEquals");
25
- var import_types = require("../../lib/types");
26
- var import_utils = require("../utils");
27
- function subscription(factory) {
28
- return (0, import_utils.documentPlugin)(import_types.ArtifactKind.Subscription, () => {
29
- let clearSubscription = null;
30
- let check = null;
31
- return {
32
- start(ctx, { resolve, next, initialValue }) {
33
- if (typeof globalThis.window === "undefined") {
34
- resolve(ctx, initialValue);
35
- return;
36
- }
37
- next(ctx);
38
- },
39
- async network(ctx, { resolve, initialValue, variablesChanged, marshalVariables }) {
40
- const checkValue = {
41
- fetchParams: ctx.fetchParams ?? {},
42
- session: ctx.session ?? {},
43
- metadata: ctx.metadata ?? {}
44
- };
45
- const changed = variablesChanged(ctx);
46
- const sessionChange = !(0, import_deepEquals.deepEquals)(check, checkValue);
47
- if (!changed && !sessionChange) {
48
- resolve(ctx, initialValue);
49
- return;
50
- }
51
- check = checkValue;
52
- if (sessionChange) {
53
- await loadClient(ctx, factory);
54
- }
55
- clearSubscription?.();
56
- clearSubscription = client.subscribe(
57
- {
58
- operationName: ctx.name,
59
- query: ctx.text,
60
- variables: marshalVariables(ctx)
61
- },
62
- {
63
- next: ({ data, errors }) => {
64
- resolve(ctx, {
65
- data: data ?? null,
66
- errors: [...errors ?? []],
67
- fetching: false,
68
- partial: true,
69
- stale: false,
70
- source: import_types.DataSource.Network,
71
- variables: ctx.variables ?? {}
72
- });
73
- },
74
- error(data) {
75
- clearSubscription?.();
76
- resolve(ctx, {
77
- partial: true,
78
- stale: false,
79
- source: import_types.DataSource.Network,
80
- data: null,
81
- errors: [data],
82
- fetching: false,
83
- variables: ctx.variables ?? {}
84
- });
85
- },
86
- complete() {
87
- }
88
- }
89
- );
90
- },
91
- cleanup() {
92
- clearSubscription?.();
93
- check = null;
94
- }
95
- };
96
- });
97
- }
98
- let pendingCreate = null;
99
- let client;
100
- function loadClient(ctx, factory) {
101
- if (pendingCreate) {
102
- return pendingCreate;
103
- }
104
- pendingCreate = new Promise((resolve) => {
105
- client = factory(ctx);
106
- resolve();
107
- pendingCreate = null;
108
- });
109
- return pendingCreate;
110
- }
111
- // Annotate the CommonJS export names for ESM import in node:
112
- 0 && (module.exports = {
113
- subscription
114
- });
@@ -1,15 +0,0 @@
1
- import { type HoudiniClientConstructorArgs } from '..';
2
- import type { DocumentArtifact, GraphQLObject } from '../../lib';
3
- import type { ClientPlugin, ClientPluginContext } from '../documentStore';
4
- import { DocumentStore } from '../documentStore';
5
- /**
6
- * Utilities for testing the cache plugin
7
- */
8
- export declare function createStore(args?: Partial<HoudiniClientConstructorArgs> & {
9
- artifact?: DocumentArtifact;
10
- }): DocumentStore<any, any>;
11
- export declare function fakeFetch({ data, spy, onRequest, }: {
12
- data?: any;
13
- spy?: (ctx: ClientPluginContext) => void;
14
- onRequest?: (variables: GraphQLObject, cb: () => void) => void;
15
- }): ClientPlugin;