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,487 +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 documentStore_exports = {};
20
- __export(documentStore_exports, {
21
- DocumentStore: () => DocumentStore
22
- });
23
- module.exports = __toCommonJS(documentStore_exports);
24
- var import_config = require("../lib/config");
25
- var import_deepEquals = require("../lib/deepEquals");
26
- var import_scalars = require("../lib/scalars");
27
- var import_store = require("../lib/store");
28
- var import_types = require("../lib/types");
29
- var import_plugins = require("./plugins");
30
- const steps = {
31
- forward: ["start", "beforeNetwork", "network"],
32
- backwards: ["end", "afterNetwork"]
33
- };
34
- let inflightRequests = {};
35
- class DocumentStore extends import_store.Writable {
36
- artifact;
37
- #client;
38
- #configFile;
39
- // the list of instantiated plugins
40
- #plugins;
41
- // we need to track the last set of variables used so we can
42
- // detect if they have changed
43
- #lastVariables;
44
- // we need the last context value we've seen in order to pass it during cleanup
45
- #lastContext = null;
46
- // a reference to the earliest resolving open promise that the store has sent
47
- pendingPromise = null;
48
- serverSideFallback;
49
- controllerKey(variables) {
50
- const usedVariables = "dedupe" in this.artifact && this.artifact.dedupe?.match !== import_types.DedupeMatchMode.Variables ? {} : variables;
51
- return `${this.artifact.name}@${stableStringify(usedVariables)}`;
52
- }
53
- constructor({
54
- artifact,
55
- plugins,
56
- pipeline,
57
- client,
58
- cache,
59
- enableCache = true,
60
- initialValue,
61
- initialVariables,
62
- fetching
63
- }) {
64
- fetching ??= artifact.kind === import_types.ArtifactKind.Query;
65
- const initialState = {
66
- data: initialValue ?? null,
67
- errors: null,
68
- partial: false,
69
- stale: false,
70
- source: null,
71
- fetching,
72
- variables: initialVariables ?? null
73
- };
74
- super(initialState, () => {
75
- return () => {
76
- this.#lastVariables = null;
77
- this.cleanup();
78
- };
79
- });
80
- this.artifact = artifact;
81
- this.#client = client;
82
- this.#lastVariables = null;
83
- this.#configFile = (0, import_config.getCurrentConfig)();
84
- this.#plugins = pipeline ?? [
85
- // cache policy needs to always come first so that it can be the first network to fire
86
- (0, import_plugins.cachePolicy)({
87
- cache,
88
- enabled: enableCache,
89
- setFetching: (fetching2, data) => {
90
- this.update((state) => {
91
- const newState = { ...state, fetching: fetching2 };
92
- if (fetching2 && data) {
93
- newState.data = data;
94
- }
95
- return newState;
96
- });
97
- }
98
- })(),
99
- ...plugins ?? []
100
- ];
101
- }
102
- // used by the client to send a new set of variables to the pipeline
103
- async send({
104
- metadata,
105
- session,
106
- fetch,
107
- variables,
108
- policy,
109
- stuff,
110
- cacheParams,
111
- setup = false,
112
- silenceEcho = false,
113
- abortController = new AbortController()
114
- } = {}) {
115
- if ("dedupe" in this.artifact && this.artifact.dedupe && this.artifact.dedupe.match !== "None") {
116
- const dedupeKey = this.controllerKey(variables);
117
- if (inflightRequests[dedupeKey]) {
118
- if (this.artifact.dedupe.cancel === "first") {
119
- inflightRequests[dedupeKey].controller.abort();
120
- inflightRequests[dedupeKey].controller = abortController;
121
- } else {
122
- abortController.abort();
123
- }
124
- } else {
125
- inflightRequests[dedupeKey] = {
126
- variables,
127
- controller: abortController
128
- };
129
- }
130
- }
131
- let context = new ClientPluginContextWrapper({
132
- abortController,
133
- config: this.#configFile,
134
- name: this.artifact.name,
135
- text: this.artifact.raw,
136
- hash: this.artifact.hash,
137
- policy: policy ?? this.artifact.policy,
138
- variables: null,
139
- metadata,
140
- session,
141
- fetch: fetch ?? this.getFetch(() => session),
142
- stuff: {
143
- inputs: {
144
- changed: false,
145
- init: false,
146
- marshaled: {}
147
- },
148
- ...stuff
149
- },
150
- artifact: this.artifact,
151
- lastVariables: this.#lastVariables,
152
- cacheParams
153
- });
154
- const draft = context.draft();
155
- draft.variables = variables ?? null;
156
- context = context.apply(draft, false);
157
- const promise = new Promise((resolve, reject) => {
158
- const state = {
159
- setup,
160
- currentStep: 0,
161
- index: 0,
162
- silenceEcho,
163
- promise: {
164
- resolved: false,
165
- resolve,
166
- reject,
167
- then: (...args) => promise.then(...args)
168
- },
169
- // patch the context with new variables
170
- context
171
- };
172
- if (this.pendingPromise === null) {
173
- this.pendingPromise = state.promise;
174
- }
175
- this.#step("forward", state);
176
- });
177
- const response = await promise;
178
- delete inflightRequests[this.controllerKey(variables)];
179
- return response;
180
- }
181
- async cleanup() {
182
- for (const plugin of this.#plugins) {
183
- plugin.cleanup?.(this.#lastContext);
184
- }
185
- }
186
- getFetch(getSession) {
187
- return async (input, init) => {
188
- let url = "";
189
- let queries = [];
190
- if (typeof input === "string") {
191
- url = input.startsWith("http") ? new URL(input).pathname : input;
192
- }
193
- if (input instanceof URL) {
194
- url = input.pathname;
195
- } else if (input instanceof Request) {
196
- url = new URL(input.url).pathname;
197
- }
198
- if (input instanceof Request) {
199
- const body = await input.json();
200
- if (!Array.isArray(body)) {
201
- queries = [body];
202
- }
203
- } else {
204
- const body = JSON.parse(init?.body);
205
- if (!Array.isArray(body)) {
206
- queries = [body];
207
- }
208
- }
209
- if (!url || queries.length === 0) {
210
- return await globalThis.fetch(input, init);
211
- }
212
- if (this.#client?.proxies[url]) {
213
- const result = await Promise.all(
214
- queries.map(
215
- (q) => this.#client?.proxies[url]({
216
- ...q,
217
- session: getSession()
218
- })
219
- )
220
- );
221
- return new Response(JSON.stringify(result.length === 1 ? result[0] : result));
222
- }
223
- return await globalThis.fetch(input, init);
224
- };
225
- }
226
- #step(direction, ctx, value) {
227
- const hook = direction === "error" ? "catch" : steps[direction][ctx.currentStep];
228
- let valid = (i) => i <= this.#plugins.length;
229
- let step = (i) => i + 1;
230
- if (["backwards", "error"].includes(direction)) {
231
- valid = (i) => i >= 0;
232
- step = (i) => i - 1;
233
- }
234
- for (let index = ctx.index; valid(index); index = step(index)) {
235
- let target = this.#plugins[index]?.[hook];
236
- if (!target) {
237
- continue;
238
- }
239
- const draft = ctx.context.draft();
240
- let variablesRefChanged = (newContext) => newContext.variables !== draft.variables;
241
- const common = {
242
- initialValue: this.state,
243
- client: this.#client,
244
- variablesChanged,
245
- marshalVariables,
246
- updateState: this.update.bind(this),
247
- next: (newContext) => {
248
- const nextIndex = ["forward", "error"].includes(direction) ? (
249
- // if we're going forward, add one
250
- index + 1
251
- ) : (
252
- // if we're moving backwards but called next, we
253
- // we need to invoke the same hook
254
- index
255
- );
256
- const nextStep = ["backwards", "error"].includes(direction) ? 0 : ctx.currentStep;
257
- this.#step("forward", {
258
- ...ctx,
259
- index: nextIndex,
260
- currentStep: nextStep,
261
- context: ctx.context.apply(newContext, variablesRefChanged(newContext))
262
- });
263
- },
264
- resolve: (newContext, value2) => {
265
- const nextIndex = direction === "backwards" ? (
266
- // if we're going backwards, subtract one
267
- index - 1
268
- ) : (
269
- // if we're moving forwards but then call resolve
270
- // we need to visit the same hook
271
- index
272
- );
273
- this.#step(
274
- "backwards",
275
- {
276
- ...ctx,
277
- index: nextIndex,
278
- context: ctx.context.apply(newContext, variablesRefChanged(newContext))
279
- },
280
- value2
281
- );
282
- }
283
- };
284
- let handlers;
285
- if (direction === "forward") {
286
- handlers = common;
287
- } else if (direction === "backwards") {
288
- handlers = {
289
- ...common,
290
- value,
291
- resolve: (ctx2, data) => {
292
- return common.resolve(ctx2, data ?? value);
293
- }
294
- };
295
- } else if (direction === "error") {
296
- handlers = {
297
- ...common,
298
- error: value
299
- };
300
- }
301
- try {
302
- if (draft.abortController.signal.aborted) {
303
- const abortError = new Error("aborted");
304
- abortError.name = "AbortError";
305
- throw abortError;
306
- }
307
- const result = target(draft, handlers);
308
- result?.catch((err) => {
309
- this.#step("error", { ...ctx, index: index - 1 }, err);
310
- });
311
- } catch (err) {
312
- this.#step("error", { ...ctx, index: index - 1 }, err);
313
- }
314
- return;
315
- }
316
- if (direction === "forward") {
317
- if (ctx.setup) {
318
- return this.#step(
319
- "backwards",
320
- {
321
- ...ctx,
322
- currentStep: 0,
323
- index: this.#plugins.length
324
- },
325
- this.state
326
- );
327
- }
328
- if (ctx.currentStep <= steps.forward.length - 2) {
329
- return this.#step("forward", {
330
- ...ctx,
331
- currentStep: ctx.currentStep + 1,
332
- index: 0
333
- });
334
- }
335
- throw new Error(
336
- "Called next() on last possible plugin. Your chain is missing a plugin that calls resolve()."
337
- );
338
- }
339
- if (direction === "error") {
340
- if (!ctx.promise.resolved) {
341
- ctx.promise.reject(value);
342
- ctx.promise.resolved = true;
343
- }
344
- return;
345
- }
346
- if (ctx.currentStep > 0) {
347
- return this.#step(
348
- "backwards",
349
- {
350
- ...ctx,
351
- currentStep: ctx.currentStep - 1,
352
- index: this.#plugins.length - 1
353
- },
354
- value
355
- );
356
- }
357
- if (!ctx.silenceEcho || value.data !== this.state.data) {
358
- this.set(value);
359
- }
360
- if (!ctx.promise.resolved) {
361
- ctx.promise.resolve(value);
362
- ctx.promise.resolved = true;
363
- }
364
- this.#lastContext = ctx.context.draft();
365
- this.#lastVariables = this.#lastContext.stuff.inputs.marshaled;
366
- }
367
- }
368
- class ClientPluginContextWrapper {
369
- // separate the last variables from what we pass to the user
370
- #context;
371
- #lastVariables;
372
- constructor({
373
- lastVariables,
374
- ...values
375
- }) {
376
- this.#context = values;
377
- this.#lastVariables = lastVariables;
378
- }
379
- get variables() {
380
- return this.#context.variables;
381
- }
382
- // draft produces a wrapper over the context so users can mutate it without
383
- // actually affecting the context values
384
- draft() {
385
- const ctx = {
386
- ...this.#context
387
- };
388
- const applyVariables = this.applyVariables.bind(this);
389
- return {
390
- ...ctx,
391
- get stuff() {
392
- return ctx.stuff;
393
- },
394
- set stuff(val) {
395
- ctx.stuff = val;
396
- },
397
- get variables() {
398
- return ctx.variables ?? null;
399
- },
400
- set variables(val) {
401
- Object.assign(ctx, applyVariables(ctx, { variables: val }));
402
- }
403
- };
404
- }
405
- applyVariables(source, values) {
406
- const artifact = source.artifact;
407
- const ctx = {
408
- ...source,
409
- ...values
410
- };
411
- const val = values.variables;
412
- let changed = {};
413
- for (const [name, value] of Object.entries(val ?? {})) {
414
- if (value !== source.variables?.[name]) {
415
- changed[name] = value;
416
- }
417
- }
418
- ctx.stuff = {
419
- ...ctx.stuff,
420
- inputs: {
421
- ...ctx.stuff.inputs
422
- }
423
- };
424
- const firstInit = !ctx.stuff.inputs || !ctx.stuff.inputs.init;
425
- const hasChanged = Object.keys(changed).length > 0 || firstInit;
426
- if (hasChanged) {
427
- const newVariables = {
428
- ...ctx.stuff.inputs?.marshaled,
429
- ...(0, import_scalars.marshalInputs)({
430
- artifact,
431
- input: changed,
432
- config: source.config
433
- })
434
- };
435
- ctx.stuff.inputs = {
436
- init: true,
437
- marshaled: newVariables,
438
- changed: true
439
- };
440
- ctx.variables = val;
441
- }
442
- ctx.stuff = {
443
- ...ctx.stuff,
444
- inputs: {
445
- ...ctx.stuff.inputs,
446
- changed: !(0, import_deepEquals.deepEquals)(ctx.stuff.inputs.marshaled, this.#lastVariables)
447
- }
448
- };
449
- return ctx;
450
- }
451
- // apply applies the draft value in a new context
452
- apply(values, newVariables) {
453
- if (newVariables) {
454
- values = this.applyVariables(this.#context, values);
455
- }
456
- const wrapper = new ClientPluginContextWrapper({
457
- ...values,
458
- lastVariables: this.#lastVariables
459
- });
460
- return wrapper;
461
- }
462
- }
463
- function marshalVariables(ctx) {
464
- return ctx.stuff.inputs?.marshaled ?? {};
465
- }
466
- function variablesChanged(ctx) {
467
- return ctx.stuff.inputs?.changed;
468
- }
469
- function stableStringify(obj) {
470
- return JSON.stringify(sortObject(obj));
471
- }
472
- function sortObject(obj) {
473
- if (obj === null || typeof obj !== "object") {
474
- return obj;
475
- }
476
- if (Array.isArray(obj)) {
477
- return obj.map(sortObject);
478
- }
479
- return Object.keys(obj).sort().reduce((result, key) => {
480
- result[key] = sortObject(obj[key]);
481
- return result;
482
- }, {});
483
- }
484
- // Annotate the CommonJS export names for ESM import in node:
485
- 0 && (module.exports = {
486
- DocumentStore
487
- });
@@ -1,50 +0,0 @@
1
- /// <reference path="../../../../../houdini.d.ts" />
2
- import type { Cache } from '../cache/cache';
3
- import type { DocumentArtifact, GraphQLVariables, GraphQLObject, NestedList } from '../lib/types';
4
- import type { ClientHooks, ClientPlugin } from './documentStore';
5
- import { DocumentStore } from './documentStore';
6
- import type { FetchParamFn, ThrowOnErrorOperations, ThrowOnErrorParams } from './plugins';
7
- export { DocumentStore, type ClientPlugin, type SendParams } from './documentStore';
8
- export { fetch, mutation, query, subscription } from './plugins';
9
- export type HoudiniClientConstructorArgs = {
10
- url?: string;
11
- fetchParams?: FetchParamFn;
12
- plugins?: NestedList<ClientPlugin>;
13
- pipeline?: NestedList<ClientPlugin>;
14
- throwOnError?: ThrowOnErrorParams;
15
- };
16
- export type ObserveParams<_Data extends GraphQLObject, _Artifact extends DocumentArtifact = DocumentArtifact, _Input extends GraphQLVariables = GraphQLVariables> = {
17
- artifact: _Artifact;
18
- enableCache?: boolean;
19
- cache?: Cache;
20
- initialValue?: _Data | null;
21
- initialVariables?: _Input;
22
- fetching?: boolean;
23
- };
24
- export declare class HoudiniClient {
25
- url: string;
26
- readonly throwOnError_operations: ThrowOnErrorOperations[];
27
- private cache;
28
- private throwOnError;
29
- private fetchParams;
30
- private pipeline;
31
- private extraPlugins;
32
- proxies: Record<string, (operation: {
33
- query: string;
34
- variables: any;
35
- operationName: string;
36
- session: App.Session | null | undefined;
37
- }) => Promise<any>>;
38
- componentCache: Record<string, any>;
39
- setCache(cache: Cache): void;
40
- constructor({ url, fetchParams, plugins, pipeline, throwOnError, }?: HoudiniClientConstructorArgs);
41
- get plugins(): ClientPlugin[];
42
- observe<_Data extends GraphQLObject, _Input extends GraphQLVariables>({ enableCache, fetching, ...rest }: ObserveParams<_Data, DocumentArtifact, _Input>): DocumentStore<_Data, _Input>;
43
- registerProxy(url: string, handler: (operation: {
44
- query: string;
45
- variables: any;
46
- operationName: string;
47
- session: App.Session | null | undefined;
48
- }) => Promise<any>): void;
49
- }
50
- export declare function createPluginHooks(plugins: ClientPlugin[]): ClientHooks[];
@@ -1,162 +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 client_exports = {};
30
- __export(client_exports, {
31
- DocumentStore: () => import_documentStore2.DocumentStore,
32
- HoudiniClient: () => HoudiniClient,
33
- createPluginHooks: () => createPluginHooks,
34
- fetch: () => import_plugins2.fetch,
35
- mutation: () => import_plugins2.mutation,
36
- query: () => import_plugins2.query,
37
- subscription: () => import_plugins2.subscription
38
- });
39
- module.exports = __toCommonJS(client_exports);
40
- var import_cache = __toESM(require("../cache"), 1);
41
- var import_lib = require("../lib");
42
- var import_flatten = require("../lib/flatten");
43
- var import_documentStore = require("./documentStore");
44
- var import_plugins = require("./plugins");
45
- var import_injectedPlugins = __toESM(require("./plugins/injectedPlugins"), 1);
46
- var import_documentStore2 = require("./documentStore");
47
- var import_plugins2 = require("./plugins");
48
- class HoudiniClient {
49
- // the URL of the api
50
- url;
51
- // expose operations settings
52
- throwOnError_operations;
53
- cache = null;
54
- throwOnError;
55
- fetchParams;
56
- pipeline;
57
- extraPlugins;
58
- proxies = {};
59
- // this is modified by page entries when they load in order to register the components source
60
- componentCache = {};
61
- // we need the ability to link the client up with an external cache
62
- setCache(cache) {
63
- this.cache = cache;
64
- }
65
- constructor({
66
- url,
67
- fetchParams,
68
- plugins,
69
- pipeline,
70
- throwOnError
71
- } = {}) {
72
- if (plugins && pipeline) {
73
- throw new Error(
74
- "A client cannot be given a pipeline and a list of plugins at the same time."
75
- );
76
- }
77
- this.throwOnError_operations = throwOnError?.operations ?? [];
78
- let serverPort = globalThis.process?.env?.HOUDINI_PORT ?? "5173";
79
- this.url = url ?? (globalThis.window ? "" : `http://localhost:${serverPort}`) + (0, import_lib.localApiEndpoint)((0, import_lib.getCurrentConfig)());
80
- this.throwOnError = throwOnError;
81
- this.fetchParams = fetchParams;
82
- this.pipeline = pipeline;
83
- this.extraPlugins = plugins;
84
- }
85
- get plugins() {
86
- return (0, import_flatten.flatten)(
87
- [].concat(
88
- // if they specified a throw behavior
89
- this.throwOnError ? [(0, import_plugins.throwOnError)(this.throwOnError)] : [],
90
- (0, import_plugins.fetchParams)(this.fetchParams),
91
- // if the user wants to specify the entire pipeline, let them do so
92
- this.pipeline ?? // the user doesn't have a specific pipeline so we should just add their desired plugins
93
- // to the standard set
94
- [
95
- (0, import_plugins.optimisticKeys)(this.cache ?? import_cache.default),
96
- // make sure that documents always work
97
- (0, import_plugins.query)(this.cache ?? import_cache.default),
98
- (0, import_plugins.mutation)(this.cache ?? import_cache.default),
99
- (0, import_plugins.fragment)(this.cache ?? import_cache.default)
100
- ].concat(
101
- // add the specified middlewares
102
- this.extraPlugins ?? [],
103
- // and any middlewares we got from plugins
104
- import_injectedPlugins.default,
105
- // if they provided a fetch function, use it as the body for the fetch middleware
106
- (0, import_plugins.fetch)()
107
- )
108
- )
109
- );
110
- }
111
- observe({
112
- enableCache = true,
113
- fetching = false,
114
- ...rest
115
- }) {
116
- return new import_documentStore.DocumentStore({
117
- client: this,
118
- plugins: createPluginHooks(this.plugins),
119
- fetching,
120
- enableCache,
121
- cache: this.cache ?? void 0,
122
- ...rest
123
- });
124
- }
125
- registerProxy(url, handler) {
126
- this.proxies[url] = handler;
127
- }
128
- }
129
- function createPluginHooks(plugins) {
130
- return plugins.reduce((hooks, plugin) => {
131
- if (typeof plugin !== "function") {
132
- throw new Error("Encountered client plugin that's not a function");
133
- }
134
- const result = plugin();
135
- if (!result) {
136
- return hooks;
137
- }
138
- if (!Array.isArray(result)) {
139
- return hooks.concat(result);
140
- }
141
- for (const value of result) {
142
- if (!value) {
143
- continue;
144
- }
145
- if (typeof value === "function") {
146
- return hooks.concat(createPluginHooks([value]));
147
- }
148
- hooks.push(value);
149
- }
150
- return hooks;
151
- }, []);
152
- }
153
- // Annotate the CommonJS export names for ESM import in node:
154
- 0 && (module.exports = {
155
- DocumentStore,
156
- HoudiniClient,
157
- createPluginHooks,
158
- fetch,
159
- mutation,
160
- query,
161
- subscription
162
- });
@@ -1,9 +0,0 @@
1
- import cache from '../../cache';
2
- import { Cache } from '../../cache/cache';
3
- import type { ClientPlugin } from '../documentStore';
4
- export declare const cachePolicy: ({ enabled, setFetching, cache: localCache, serverSideFallback, }: {
5
- enabled: boolean;
6
- setFetching: (val: boolean, data?: any) => void;
7
- cache?: Cache | undefined;
8
- serverSideFallback?: boolean | undefined;
9
- }) => ClientPlugin;