@graphql-box/connection-resolver 4.1.3 → 5.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 (490) hide show
  1. package/README.md +1 -5
  2. package/dist/cjs/index.cjs +703 -0
  3. package/dist/cjs/index.cjs.map +1 -0
  4. package/dist/esm/index.mjs +700 -0
  5. package/dist/esm/index.mjs.map +1 -0
  6. package/dist/types/cjs/__testUtils__/generateCursorCache.d.cts +10 -0
  7. package/dist/types/cjs/__testUtils__/generateCursorCache.d.cts.map +1 -0
  8. package/dist/types/cjs/__testUtils__/generatePageResponse.d.cts +9 -0
  9. package/dist/types/cjs/__testUtils__/generatePageResponse.d.cts.map +1 -0
  10. package/dist/types/cjs/__testUtils__/generatePages.d.cts +2 -0
  11. package/dist/types/cjs/__testUtils__/generatePages.d.cts.map +1 -0
  12. package/dist/types/cjs/helpers/cacheCursors.d.cts +12 -0
  13. package/dist/types/cjs/helpers/cacheCursors.d.cts.map +1 -0
  14. package/dist/types/cjs/helpers/extractEdges.d.cts +3 -0
  15. package/dist/types/cjs/helpers/extractEdges.d.cts.map +1 -0
  16. package/dist/types/cjs/helpers/extractNodes.d.cts +3 -0
  17. package/dist/types/cjs/helpers/extractNodes.d.cts.map +1 -0
  18. package/dist/types/cjs/helpers/getCount.d.cts +3 -0
  19. package/dist/types/cjs/helpers/getCount.d.cts.map +1 -0
  20. package/dist/types/cjs/helpers/getCurrentPageStartAndEndIndexes.d.cts +14 -0
  21. package/dist/types/cjs/helpers/getCurrentPageStartAndEndIndexes.d.cts.map +1 -0
  22. package/dist/types/cjs/helpers/getCursor.d.cts +3 -0
  23. package/dist/types/cjs/helpers/getCursor.d.cts.map +1 -0
  24. package/dist/types/cjs/helpers/getDirection.d.cts +3 -0
  25. package/dist/types/cjs/helpers/getDirection.d.cts.map +1 -0
  26. package/dist/types/cjs/helpers/getInRangeCachedEdges.d.cts +8 -0
  27. package/dist/types/cjs/helpers/getInRangeCachedEdges.d.cts.map +1 -0
  28. package/dist/types/cjs/helpers/getIndexesOnCurrentPage.d.cts +10 -0
  29. package/dist/types/cjs/helpers/getIndexesOnCurrentPage.d.cts.map +1 -0
  30. package/dist/types/cjs/helpers/getIndexesOnLastPage.d.cts +3 -0
  31. package/dist/types/cjs/helpers/getIndexesOnLastPage.d.cts.map +1 -0
  32. package/dist/types/cjs/helpers/getPageNumbersToRequest.d.cts +12 -0
  33. package/dist/types/cjs/helpers/getPageNumbersToRequest.d.cts.map +1 -0
  34. package/dist/types/cjs/helpers/getPagesMissingFromCache.d.cts +3 -0
  35. package/dist/types/cjs/helpers/getPagesMissingFromCache.d.cts.map +1 -0
  36. package/dist/types/cjs/helpers/getResultsOnLastPage.d.cts +6 -0
  37. package/dist/types/cjs/helpers/getResultsOnLastPage.d.cts.map +1 -0
  38. package/dist/types/cjs/helpers/getStartAndEndCursors.d.cts +4 -0
  39. package/dist/types/cjs/helpers/getStartAndEndCursors.d.cts.map +1 -0
  40. package/dist/types/cjs/helpers/getStartAndEndIndexes.d.cts +15 -0
  41. package/dist/types/cjs/helpers/getStartAndEndIndexes.d.cts.map +1 -0
  42. package/dist/types/cjs/helpers/getStartAndEndPageNumbers.d.cts +13 -0
  43. package/dist/types/cjs/helpers/getStartAndEndPageNumbers.d.cts.map +1 -0
  44. package/dist/types/cjs/helpers/hasPreviousNextPage.d.cts +14 -0
  45. package/dist/types/cjs/helpers/hasPreviousNextPage.d.cts.map +1 -0
  46. package/dist/types/cjs/helpers/isCursorFirst.d.cts +7 -0
  47. package/dist/types/cjs/helpers/isCursorFirst.d.cts.map +1 -0
  48. package/dist/types/cjs/helpers/isCursorLast.d.cts +10 -0
  49. package/dist/types/cjs/helpers/isCursorLast.d.cts.map +1 -0
  50. package/dist/types/cjs/helpers/isCursorSupplied.d.cts +4 -0
  51. package/dist/types/cjs/helpers/isCursorSupplied.d.cts.map +1 -0
  52. package/dist/types/cjs/helpers/isFirstPage.d.cts +2 -0
  53. package/dist/types/cjs/helpers/isFirstPage.d.cts.map +1 -0
  54. package/dist/types/cjs/helpers/isLastPage.d.cts +6 -0
  55. package/dist/types/cjs/helpers/isLastPage.d.cts.map +1 -0
  56. package/dist/types/cjs/helpers/makeEdges.d.cts +6 -0
  57. package/dist/types/cjs/helpers/makeEdges.d.cts.map +1 -0
  58. package/dist/types/cjs/helpers/makeEntry.d.cts +10 -0
  59. package/dist/types/cjs/helpers/makeEntry.d.cts.map +1 -0
  60. package/dist/types/cjs/helpers/mergeCachedEdges.d.cts +3 -0
  61. package/dist/types/cjs/helpers/mergeCachedEdges.d.cts.map +1 -0
  62. package/dist/types/cjs/helpers/removeConnectionInputOptions.d.cts +2 -0
  63. package/dist/types/cjs/helpers/removeConnectionInputOptions.d.cts.map +1 -0
  64. package/dist/types/cjs/helpers/requestAndCachePages.d.cts +21 -0
  65. package/dist/types/cjs/helpers/requestAndCachePages.d.cts.map +1 -0
  66. package/dist/types/cjs/helpers/requestOutstandingPages.d.cts +18 -0
  67. package/dist/types/cjs/helpers/requestOutstandingPages.d.cts.map +1 -0
  68. package/dist/types/cjs/helpers/resolveConnection.d.cts +24 -0
  69. package/dist/types/cjs/helpers/resolveConnection.d.cts.map +1 -0
  70. package/dist/types/cjs/helpers/retrieveCachedConnection.d.cts +25 -0
  71. package/dist/types/cjs/helpers/retrieveCachedConnection.d.cts.map +1 -0
  72. package/dist/types/cjs/helpers/retrieveCachedEdgesByPage.d.cts +11 -0
  73. package/dist/types/cjs/helpers/retrieveCachedEdgesByPage.d.cts.map +1 -0
  74. package/dist/types/cjs/helpers/retrieveEntry.d.cts +8 -0
  75. package/dist/types/cjs/helpers/retrieveEntry.d.cts.map +1 -0
  76. package/dist/types/cjs/helpers/validateCursor.d.cts +10 -0
  77. package/dist/types/cjs/helpers/validateCursor.d.cts.map +1 -0
  78. package/dist/types/cjs/index.d.cts +4 -0
  79. package/dist/types/cjs/index.d.cts.map +1 -0
  80. package/dist/types/cjs/main/index.d.cts +5 -0
  81. package/dist/types/cjs/main/index.d.cts.map +1 -0
  82. package/{lib/types/defs/index.d.ts → dist/types/cjs/types.d.cts} +22 -27
  83. package/dist/types/cjs/types.d.cts.map +1 -0
  84. package/dist/types/esm/__testUtils__/generateCursorCache.d.ts +10 -0
  85. package/dist/types/esm/__testUtils__/generateCursorCache.d.ts.map +1 -0
  86. package/dist/types/esm/__testUtils__/generatePageResponse.d.ts +9 -0
  87. package/dist/types/esm/__testUtils__/generatePageResponse.d.ts.map +1 -0
  88. package/dist/types/esm/__testUtils__/generatePages.d.ts +2 -0
  89. package/dist/types/esm/__testUtils__/generatePages.d.ts.map +1 -0
  90. package/dist/types/esm/helpers/cacheCursors.d.ts +12 -0
  91. package/dist/types/esm/helpers/cacheCursors.d.ts.map +1 -0
  92. package/dist/types/esm/helpers/extractEdges.d.ts +3 -0
  93. package/dist/types/esm/helpers/extractEdges.d.ts.map +1 -0
  94. package/dist/types/esm/helpers/extractNodes.d.ts +3 -0
  95. package/dist/types/esm/helpers/extractNodes.d.ts.map +1 -0
  96. package/dist/types/esm/helpers/getCount.d.ts +3 -0
  97. package/dist/types/esm/helpers/getCount.d.ts.map +1 -0
  98. package/{lib/types → dist/types/esm}/helpers/getCurrentPageStartAndEndIndexes.d.ts +3 -3
  99. package/dist/types/esm/helpers/getCurrentPageStartAndEndIndexes.d.ts.map +1 -0
  100. package/dist/types/esm/helpers/getCursor.d.ts +3 -0
  101. package/dist/types/esm/helpers/getCursor.d.ts.map +1 -0
  102. package/dist/types/esm/helpers/getDirection.d.ts +3 -0
  103. package/dist/types/esm/helpers/getDirection.d.ts.map +1 -0
  104. package/dist/types/esm/helpers/getInRangeCachedEdges.d.ts +8 -0
  105. package/dist/types/esm/helpers/getInRangeCachedEdges.d.ts.map +1 -0
  106. package/dist/types/esm/helpers/getIndexesOnCurrentPage.d.ts +10 -0
  107. package/dist/types/esm/helpers/getIndexesOnCurrentPage.d.ts.map +1 -0
  108. package/dist/types/esm/helpers/getIndexesOnLastPage.d.ts +3 -0
  109. package/dist/types/esm/helpers/getIndexesOnLastPage.d.ts.map +1 -0
  110. package/dist/types/esm/helpers/getPageNumbersToRequest.d.ts +12 -0
  111. package/dist/types/esm/helpers/getPageNumbersToRequest.d.ts.map +1 -0
  112. package/dist/types/esm/helpers/getPagesMissingFromCache.d.ts +3 -0
  113. package/dist/types/esm/helpers/getPagesMissingFromCache.d.ts.map +1 -0
  114. package/dist/types/esm/helpers/getResultsOnLastPage.d.ts +6 -0
  115. package/dist/types/esm/helpers/getResultsOnLastPage.d.ts.map +1 -0
  116. package/dist/types/esm/helpers/getStartAndEndCursors.d.ts +4 -0
  117. package/dist/types/esm/helpers/getStartAndEndCursors.d.ts.map +1 -0
  118. package/dist/types/esm/helpers/getStartAndEndIndexes.d.ts +15 -0
  119. package/dist/types/esm/helpers/getStartAndEndIndexes.d.ts.map +1 -0
  120. package/dist/types/esm/helpers/getStartAndEndPageNumbers.d.ts +13 -0
  121. package/dist/types/esm/helpers/getStartAndEndPageNumbers.d.ts.map +1 -0
  122. package/{lib/types → dist/types/esm}/helpers/hasPreviousNextPage.d.ts +3 -3
  123. package/dist/types/esm/helpers/hasPreviousNextPage.d.ts.map +1 -0
  124. package/dist/types/esm/helpers/isCursorFirst.d.ts +7 -0
  125. package/dist/types/esm/helpers/isCursorFirst.d.ts.map +1 -0
  126. package/dist/types/esm/helpers/isCursorLast.d.ts +10 -0
  127. package/dist/types/esm/helpers/isCursorLast.d.ts.map +1 -0
  128. package/dist/types/esm/helpers/isCursorSupplied.d.ts +4 -0
  129. package/dist/types/esm/helpers/isCursorSupplied.d.ts.map +1 -0
  130. package/dist/types/esm/helpers/isFirstPage.d.ts +2 -0
  131. package/dist/types/esm/helpers/isFirstPage.d.ts.map +1 -0
  132. package/dist/types/esm/helpers/isLastPage.d.ts +6 -0
  133. package/dist/types/esm/helpers/isLastPage.d.ts.map +1 -0
  134. package/dist/types/esm/helpers/makeEdges.d.ts +6 -0
  135. package/dist/types/esm/helpers/makeEdges.d.ts.map +1 -0
  136. package/dist/types/esm/helpers/makeEntry.d.ts +10 -0
  137. package/dist/types/esm/helpers/makeEntry.d.ts.map +1 -0
  138. package/dist/types/esm/helpers/mergeCachedEdges.d.ts +3 -0
  139. package/dist/types/esm/helpers/mergeCachedEdges.d.ts.map +1 -0
  140. package/dist/types/esm/helpers/removeConnectionInputOptions.d.ts +2 -0
  141. package/dist/types/esm/helpers/removeConnectionInputOptions.d.ts.map +1 -0
  142. package/dist/types/esm/helpers/requestAndCachePages.d.ts +21 -0
  143. package/dist/types/esm/helpers/requestAndCachePages.d.ts.map +1 -0
  144. package/dist/types/esm/helpers/requestOutstandingPages.d.ts +18 -0
  145. package/dist/types/esm/helpers/requestOutstandingPages.d.ts.map +1 -0
  146. package/dist/types/esm/helpers/resolveConnection.d.ts +24 -0
  147. package/dist/types/esm/helpers/resolveConnection.d.ts.map +1 -0
  148. package/{lib/types → dist/types/esm}/helpers/retrieveCachedConnection.d.ts +5 -6
  149. package/dist/types/esm/helpers/retrieveCachedConnection.d.ts.map +1 -0
  150. package/dist/types/esm/helpers/retrieveCachedEdgesByPage.d.ts +11 -0
  151. package/dist/types/esm/helpers/retrieveCachedEdgesByPage.d.ts.map +1 -0
  152. package/dist/types/esm/helpers/retrieveEntry.d.ts +8 -0
  153. package/dist/types/esm/helpers/retrieveEntry.d.ts.map +1 -0
  154. package/dist/types/esm/helpers/validateCursor.d.ts +10 -0
  155. package/dist/types/esm/helpers/validateCursor.d.ts.map +1 -0
  156. package/dist/types/esm/index.d.ts +4 -0
  157. package/dist/types/esm/index.d.ts.map +1 -0
  158. package/dist/types/esm/main/index.d.ts +5 -0
  159. package/dist/types/esm/main/index.d.ts.map +1 -0
  160. package/dist/types/esm/types.d.ts +77 -0
  161. package/dist/types/esm/types.d.ts.map +1 -0
  162. package/dist/types/tsconfig.build.tsbuildinfo +1 -0
  163. package/package.json +54 -38
  164. package/src/__testUtils__/generateCursorCache.ts +20 -14
  165. package/src/__testUtils__/generatePageResponse.ts +17 -12
  166. package/src/__testUtils__/generatePages.ts +5 -5
  167. package/src/helpers/cacheCursors.ts +10 -7
  168. package/src/helpers/extractEdges.ts +3 -3
  169. package/src/helpers/extractNodes.ts +2 -2
  170. package/src/helpers/getCount.test.ts +10 -6
  171. package/src/helpers/getCount.ts +2 -2
  172. package/src/helpers/getCurrentPageStartAndEndIndexes.ts +1 -1
  173. package/src/helpers/getCursor.test.ts +10 -6
  174. package/src/helpers/getCursor.ts +2 -2
  175. package/src/helpers/getDirection.test.ts +10 -6
  176. package/src/helpers/getDirection.ts +3 -1
  177. package/src/helpers/getInRangeCachedEdges.ts +10 -7
  178. package/src/helpers/getIndexesOnCurrentPage.test.ts +14 -10
  179. package/src/helpers/getIndexesOnCurrentPage.ts +11 -6
  180. package/src/helpers/getIndexesOnLastPage.test.ts +10 -6
  181. package/src/helpers/getIndexesOnLastPage.ts +3 -2
  182. package/src/helpers/getPageNumbersToRequest.test.ts +15 -11
  183. package/src/helpers/getPageNumbersToRequest.ts +17 -6
  184. package/src/helpers/getPagesMissingFromCache.ts +5 -5
  185. package/src/helpers/getResultsOnLastPage.test.ts +10 -6
  186. package/src/helpers/getResultsOnLastPage.ts +1 -1
  187. package/src/helpers/getStartAndEndCursors.ts +1 -1
  188. package/src/helpers/getStartAndEndIndexes.test.ts +77 -57
  189. package/src/helpers/getStartAndEndIndexes.ts +28 -22
  190. package/src/helpers/getStartAndEndPageNumbers.test.ts +46 -28
  191. package/src/helpers/getStartAndEndPageNumbers.ts +12 -12
  192. package/src/helpers/hasPreviousNextPage.test.ts +17 -8
  193. package/src/helpers/hasPreviousNextPage.ts +6 -4
  194. package/src/helpers/isCursorFirst.test.ts +13 -7
  195. package/src/helpers/isCursorFirst.ts +3 -2
  196. package/src/helpers/isCursorLast.test.ts +27 -23
  197. package/src/helpers/isCursorLast.ts +4 -4
  198. package/src/helpers/isCursorSupplied.test.ts +18 -10
  199. package/src/helpers/isCursorSupplied.ts +3 -2
  200. package/src/helpers/isFirstPage.test.ts +10 -6
  201. package/src/helpers/isFirstPage.ts +1 -1
  202. package/src/helpers/isLastPage.test.ts +10 -6
  203. package/src/helpers/isLastPage.ts +1 -1
  204. package/src/helpers/makeEdges.ts +3 -3
  205. package/src/helpers/makeEntry.ts +8 -5
  206. package/src/helpers/mergeCachedEdges.ts +5 -5
  207. package/src/helpers/removeConnectionInputOptions.test.ts +10 -8
  208. package/src/helpers/removeConnectionInputOptions.ts +4 -3
  209. package/src/helpers/requestAndCachePages.ts +14 -11
  210. package/src/helpers/requestOutstandingPages.ts +18 -19
  211. package/src/helpers/resolveConnection.ts +20 -34
  212. package/src/helpers/retrieveCachedConnection.test.ts +703 -338
  213. package/src/helpers/retrieveCachedConnection.ts +28 -20
  214. package/src/helpers/retrieveCachedEdgesByPage.ts +10 -10
  215. package/src/helpers/retrieveEntry.ts +32 -0
  216. package/src/helpers/validateCursor.test.ts +88 -61
  217. package/src/helpers/validateCursor.ts +30 -26
  218. package/src/index.ts +3 -3
  219. package/src/main/__snapshots__/index.test.ts.snap +258 -258
  220. package/src/main/index.test.ts +405 -287
  221. package/src/main/index.ts +37 -35
  222. package/src/{defs/index.ts → types.ts} +12 -18
  223. package/tsconfig.build.json +10 -0
  224. package/tsconfig.json +11 -0
  225. package/lib/browser/index.js +0 -2
  226. package/lib/browser/index.js.map +0 -1
  227. package/lib/browser/production.analysis.txt +0 -314
  228. package/lib/main/__testUtils__/generateCursorCache.js +0 -88
  229. package/lib/main/__testUtils__/generateCursorCache.js.map +0 -1
  230. package/lib/main/__testUtils__/generatePageResponse.js +0 -33
  231. package/lib/main/__testUtils__/generatePageResponse.js.map +0 -1
  232. package/lib/main/__testUtils__/generatePages.js +0 -23
  233. package/lib/main/__testUtils__/generatePages.js.map +0 -1
  234. package/lib/main/defs/index.js +0 -2
  235. package/lib/main/defs/index.js.map +0 -1
  236. package/lib/main/helpers/cacheCursors.js +0 -40
  237. package/lib/main/helpers/cacheCursors.js.map +0 -1
  238. package/lib/main/helpers/extractEdges.js +0 -11
  239. package/lib/main/helpers/extractEdges.js.map +0 -1
  240. package/lib/main/helpers/extractNodes.js +0 -11
  241. package/lib/main/helpers/extractNodes.js.map +0 -1
  242. package/lib/main/helpers/getCount.js +0 -14
  243. package/lib/main/helpers/getCount.js.map +0 -1
  244. package/lib/main/helpers/getCurrentPageStartAndEndIndexes.js +0 -23
  245. package/lib/main/helpers/getCurrentPageStartAndEndIndexes.js.map +0 -1
  246. package/lib/main/helpers/getCursor.js +0 -14
  247. package/lib/main/helpers/getCursor.js.map +0 -1
  248. package/lib/main/helpers/getDirection.js +0 -11
  249. package/lib/main/helpers/getDirection.js.map +0 -1
  250. package/lib/main/helpers/getInRangeCachedEdges.js +0 -36
  251. package/lib/main/helpers/getInRangeCachedEdges.js.map +0 -1
  252. package/lib/main/helpers/getIndexesOnCurrentPage.js +0 -30
  253. package/lib/main/helpers/getIndexesOnCurrentPage.js.map +0 -1
  254. package/lib/main/helpers/getIndexesOnLastPage.js +0 -21
  255. package/lib/main/helpers/getIndexesOnLastPage.js.map +0 -1
  256. package/lib/main/helpers/getPageNumbersToRequest.js +0 -43
  257. package/lib/main/helpers/getPageNumbersToRequest.js.map +0 -1
  258. package/lib/main/helpers/getPagesMissingFromCache.js +0 -19
  259. package/lib/main/helpers/getPagesMissingFromCache.js.map +0 -1
  260. package/lib/main/helpers/getResultsOnLastPage.js +0 -17
  261. package/lib/main/helpers/getResultsOnLastPage.js.map +0 -1
  262. package/lib/main/helpers/getStartAndEndCursors.js +0 -22
  263. package/lib/main/helpers/getStartAndEndCursors.js.map +0 -1
  264. package/lib/main/helpers/getStartAndEndIndexes.js +0 -105
  265. package/lib/main/helpers/getStartAndEndIndexes.js.map +0 -1
  266. package/lib/main/helpers/getStartAndEndPageNumbers.js +0 -51
  267. package/lib/main/helpers/getStartAndEndPageNumbers.js.map +0 -1
  268. package/lib/main/helpers/hasPreviousNextPage.js +0 -33
  269. package/lib/main/helpers/hasPreviousNextPage.js.map +0 -1
  270. package/lib/main/helpers/isCursorFirst.js +0 -17
  271. package/lib/main/helpers/isCursorFirst.js.map +0 -1
  272. package/lib/main/helpers/isCursorLast.js +0 -27
  273. package/lib/main/helpers/isCursorLast.js.map +0 -1
  274. package/lib/main/helpers/isCursorSupplied.js +0 -14
  275. package/lib/main/helpers/isCursorSupplied.js.map +0 -1
  276. package/lib/main/helpers/isFirstPage.js +0 -11
  277. package/lib/main/helpers/isFirstPage.js.map +0 -1
  278. package/lib/main/helpers/isLastPage.js +0 -14
  279. package/lib/main/helpers/isLastPage.js.map +0 -1
  280. package/lib/main/helpers/makeEdges.js +0 -14
  281. package/lib/main/helpers/makeEdges.js.map +0 -1
  282. package/lib/main/helpers/makeEntry.js +0 -38
  283. package/lib/main/helpers/makeEntry.js.map +0 -1
  284. package/lib/main/helpers/mergeCachedEdges.js +0 -21
  285. package/lib/main/helpers/mergeCachedEdges.js.map +0 -1
  286. package/lib/main/helpers/removeConnectionInputOptions.js +0 -17
  287. package/lib/main/helpers/removeConnectionInputOptions.js.map +0 -1
  288. package/lib/main/helpers/requestAndCachePages.js +0 -66
  289. package/lib/main/helpers/requestAndCachePages.js.map +0 -1
  290. package/lib/main/helpers/requestOutstandingPages.js +0 -67
  291. package/lib/main/helpers/requestOutstandingPages.js.map +0 -1
  292. package/lib/main/helpers/resolveConnection.js +0 -95
  293. package/lib/main/helpers/resolveConnection.js.map +0 -1
  294. package/lib/main/helpers/retrieveCachedConnection.js +0 -90
  295. package/lib/main/helpers/retrieveCachedConnection.js.map +0 -1
  296. package/lib/main/helpers/retrieveCachedEdgesByPage.js +0 -45
  297. package/lib/main/helpers/retrieveCachedEdgesByPage.js.map +0 -1
  298. package/lib/main/helpers/validateCursor.js +0 -88
  299. package/lib/main/helpers/validateCursor.js.map +0 -1
  300. package/lib/main/index.js +0 -52
  301. package/lib/main/index.js.map +0 -1
  302. package/lib/main/main/index.js +0 -100
  303. package/lib/main/main/index.js.map +0 -1
  304. package/lib/module/__testUtils__/generateCursorCache.js +0 -71
  305. package/lib/module/__testUtils__/generateCursorCache.js.map +0 -1
  306. package/lib/module/__testUtils__/generatePageResponse.js +0 -23
  307. package/lib/module/__testUtils__/generatePageResponse.js.map +0 -1
  308. package/lib/module/__testUtils__/generatePages.js +0 -11
  309. package/lib/module/__testUtils__/generatePages.js.map +0 -1
  310. package/lib/module/defs/index.js +0 -2
  311. package/lib/module/defs/index.js.map +0 -1
  312. package/lib/module/helpers/cacheCursors.js +0 -30
  313. package/lib/module/helpers/cacheCursors.js.map +0 -1
  314. package/lib/module/helpers/extractEdges.js +0 -2
  315. package/lib/module/helpers/extractEdges.js.map +0 -1
  316. package/lib/module/helpers/extractNodes.js +0 -2
  317. package/lib/module/helpers/extractNodes.js.map +0 -1
  318. package/lib/module/helpers/getCount.js +0 -5
  319. package/lib/module/helpers/getCount.js.map +0 -1
  320. package/lib/module/helpers/getCurrentPageStartAndEndIndexes.js +0 -11
  321. package/lib/module/helpers/getCurrentPageStartAndEndIndexes.js.map +0 -1
  322. package/lib/module/helpers/getCursor.js +0 -5
  323. package/lib/module/helpers/getCursor.js.map +0 -1
  324. package/lib/module/helpers/getDirection.js +0 -2
  325. package/lib/module/helpers/getDirection.js.map +0 -1
  326. package/lib/module/helpers/getInRangeCachedEdges.js +0 -26
  327. package/lib/module/helpers/getInRangeCachedEdges.js.map +0 -1
  328. package/lib/module/helpers/getIndexesOnCurrentPage.js +0 -17
  329. package/lib/module/helpers/getIndexesOnCurrentPage.js.map +0 -1
  330. package/lib/module/helpers/getIndexesOnLastPage.js +0 -9
  331. package/lib/module/helpers/getIndexesOnLastPage.js.map +0 -1
  332. package/lib/module/helpers/getPageNumbersToRequest.js +0 -30
  333. package/lib/module/helpers/getPageNumbersToRequest.js.map +0 -1
  334. package/lib/module/helpers/getPagesMissingFromCache.js +0 -10
  335. package/lib/module/helpers/getPagesMissingFromCache.js.map +0 -1
  336. package/lib/module/helpers/getResultsOnLastPage.js +0 -8
  337. package/lib/module/helpers/getResultsOnLastPage.js.map +0 -1
  338. package/lib/module/helpers/getStartAndEndCursors.js +0 -10
  339. package/lib/module/helpers/getStartAndEndCursors.js.map +0 -1
  340. package/lib/module/helpers/getStartAndEndIndexes.js +0 -86
  341. package/lib/module/helpers/getStartAndEndIndexes.js.map +0 -1
  342. package/lib/module/helpers/getStartAndEndPageNumbers.js +0 -35
  343. package/lib/module/helpers/getStartAndEndPageNumbers.js.map +0 -1
  344. package/lib/module/helpers/hasPreviousNextPage.js +0 -18
  345. package/lib/module/helpers/hasPreviousNextPage.js.map +0 -1
  346. package/lib/module/helpers/isCursorFirst.js +0 -8
  347. package/lib/module/helpers/isCursorFirst.js.map +0 -1
  348. package/lib/module/helpers/isCursorLast.js +0 -15
  349. package/lib/module/helpers/isCursorLast.js.map +0 -1
  350. package/lib/module/helpers/isCursorSupplied.js +0 -5
  351. package/lib/module/helpers/isCursorSupplied.js.map +0 -1
  352. package/lib/module/helpers/isFirstPage.js +0 -2
  353. package/lib/module/helpers/isFirstPage.js.map +0 -1
  354. package/lib/module/helpers/isLastPage.js +0 -5
  355. package/lib/module/helpers/isLastPage.js.map +0 -1
  356. package/lib/module/helpers/makeEdges.js +0 -5
  357. package/lib/module/helpers/makeEdges.js.map +0 -1
  358. package/lib/module/helpers/makeEntry.js +0 -25
  359. package/lib/module/helpers/makeEntry.js.map +0 -1
  360. package/lib/module/helpers/mergeCachedEdges.js +0 -12
  361. package/lib/module/helpers/mergeCachedEdges.js.map +0 -1
  362. package/lib/module/helpers/removeConnectionInputOptions.js +0 -4
  363. package/lib/module/helpers/removeConnectionInputOptions.js.map +0 -1
  364. package/lib/module/helpers/requestAndCachePages.js +0 -54
  365. package/lib/module/helpers/requestAndCachePages.js.map +0 -1
  366. package/lib/module/helpers/requestOutstandingPages.js +0 -57
  367. package/lib/module/helpers/requestOutstandingPages.js.map +0 -1
  368. package/lib/module/helpers/resolveConnection.js +0 -78
  369. package/lib/module/helpers/resolveConnection.js.map +0 -1
  370. package/lib/module/helpers/retrieveCachedConnection.js +0 -70
  371. package/lib/module/helpers/retrieveCachedConnection.js.map +0 -1
  372. package/lib/module/helpers/retrieveCachedEdgesByPage.js +0 -35
  373. package/lib/module/helpers/retrieveCachedEdgesByPage.js.map +0 -1
  374. package/lib/module/helpers/validateCursor.js +0 -71
  375. package/lib/module/helpers/validateCursor.js.map +0 -1
  376. package/lib/module/index.js +0 -4
  377. package/lib/module/index.js.map +0 -1
  378. package/lib/module/main/index.js +0 -83
  379. package/lib/module/main/index.js.map +0 -1
  380. package/lib/types/__testUtils__/generateCursorCache.d.ts +0 -11
  381. package/lib/types/__testUtils__/generateCursorCache.d.ts.map +0 -1
  382. package/lib/types/__testUtils__/generatePageResponse.d.ts +0 -18
  383. package/lib/types/__testUtils__/generatePageResponse.d.ts.map +0 -1
  384. package/lib/types/__testUtils__/generatePages.d.ts +0 -3
  385. package/lib/types/__testUtils__/generatePages.d.ts.map +0 -1
  386. package/lib/types/defs/index.d.ts.map +0 -1
  387. package/lib/types/helpers/cacheCursors.d.ts +0 -13
  388. package/lib/types/helpers/cacheCursors.d.ts.map +0 -1
  389. package/lib/types/helpers/extractEdges.d.ts +0 -4
  390. package/lib/types/helpers/extractEdges.d.ts.map +0 -1
  391. package/lib/types/helpers/extractNodes.d.ts +0 -4
  392. package/lib/types/helpers/extractNodes.d.ts.map +0 -1
  393. package/lib/types/helpers/getCount.d.ts +0 -4
  394. package/lib/types/helpers/getCount.d.ts.map +0 -1
  395. package/lib/types/helpers/getCount.test.d.ts +0 -2
  396. package/lib/types/helpers/getCount.test.d.ts.map +0 -1
  397. package/lib/types/helpers/getCurrentPageStartAndEndIndexes.d.ts.map +0 -1
  398. package/lib/types/helpers/getCursor.d.ts +0 -4
  399. package/lib/types/helpers/getCursor.d.ts.map +0 -1
  400. package/lib/types/helpers/getCursor.test.d.ts +0 -2
  401. package/lib/types/helpers/getCursor.test.d.ts.map +0 -1
  402. package/lib/types/helpers/getDirection.d.ts +0 -3
  403. package/lib/types/helpers/getDirection.d.ts.map +0 -1
  404. package/lib/types/helpers/getDirection.test.d.ts +0 -2
  405. package/lib/types/helpers/getDirection.test.d.ts.map +0 -1
  406. package/lib/types/helpers/getInRangeCachedEdges.d.ts +0 -9
  407. package/lib/types/helpers/getInRangeCachedEdges.d.ts.map +0 -1
  408. package/lib/types/helpers/getIndexesOnCurrentPage.d.ts +0 -7
  409. package/lib/types/helpers/getIndexesOnCurrentPage.d.ts.map +0 -1
  410. package/lib/types/helpers/getIndexesOnCurrentPage.test.d.ts +0 -2
  411. package/lib/types/helpers/getIndexesOnCurrentPage.test.d.ts.map +0 -1
  412. package/lib/types/helpers/getIndexesOnLastPage.d.ts +0 -4
  413. package/lib/types/helpers/getIndexesOnLastPage.d.ts.map +0 -1
  414. package/lib/types/helpers/getIndexesOnLastPage.test.d.ts +0 -2
  415. package/lib/types/helpers/getIndexesOnLastPage.test.d.ts.map +0 -1
  416. package/lib/types/helpers/getPageNumbersToRequest.d.ts +0 -8
  417. package/lib/types/helpers/getPageNumbersToRequest.d.ts.map +0 -1
  418. package/lib/types/helpers/getPageNumbersToRequest.test.d.ts +0 -2
  419. package/lib/types/helpers/getPageNumbersToRequest.test.d.ts.map +0 -1
  420. package/lib/types/helpers/getPagesMissingFromCache.d.ts +0 -4
  421. package/lib/types/helpers/getPagesMissingFromCache.d.ts.map +0 -1
  422. package/lib/types/helpers/getResultsOnLastPage.d.ts +0 -7
  423. package/lib/types/helpers/getResultsOnLastPage.d.ts.map +0 -1
  424. package/lib/types/helpers/getResultsOnLastPage.test.d.ts +0 -2
  425. package/lib/types/helpers/getResultsOnLastPage.test.d.ts.map +0 -1
  426. package/lib/types/helpers/getStartAndEndCursors.d.ts +0 -4
  427. package/lib/types/helpers/getStartAndEndCursors.d.ts.map +0 -1
  428. package/lib/types/helpers/getStartAndEndIndexes.d.ts +0 -10
  429. package/lib/types/helpers/getStartAndEndIndexes.d.ts.map +0 -1
  430. package/lib/types/helpers/getStartAndEndIndexes.test.d.ts +0 -2
  431. package/lib/types/helpers/getStartAndEndIndexes.test.d.ts.map +0 -1
  432. package/lib/types/helpers/getStartAndEndPageNumbers.d.ts +0 -9
  433. package/lib/types/helpers/getStartAndEndPageNumbers.d.ts.map +0 -1
  434. package/lib/types/helpers/getStartAndEndPageNumbers.test.d.ts +0 -2
  435. package/lib/types/helpers/getStartAndEndPageNumbers.test.d.ts.map +0 -1
  436. package/lib/types/helpers/hasPreviousNextPage.d.ts.map +0 -1
  437. package/lib/types/helpers/hasPreviousNextPage.test.d.ts +0 -2
  438. package/lib/types/helpers/hasPreviousNextPage.test.d.ts.map +0 -1
  439. package/lib/types/helpers/isCursorFirst.d.ts +0 -8
  440. package/lib/types/helpers/isCursorFirst.d.ts.map +0 -1
  441. package/lib/types/helpers/isCursorFirst.test.d.ts +0 -2
  442. package/lib/types/helpers/isCursorFirst.test.d.ts.map +0 -1
  443. package/lib/types/helpers/isCursorLast.d.ts +0 -11
  444. package/lib/types/helpers/isCursorLast.d.ts.map +0 -1
  445. package/lib/types/helpers/isCursorLast.test.d.ts +0 -2
  446. package/lib/types/helpers/isCursorLast.test.d.ts.map +0 -1
  447. package/lib/types/helpers/isCursorSupplied.d.ts +0 -4
  448. package/lib/types/helpers/isCursorSupplied.d.ts.map +0 -1
  449. package/lib/types/helpers/isCursorSupplied.test.d.ts +0 -2
  450. package/lib/types/helpers/isCursorSupplied.test.d.ts.map +0 -1
  451. package/lib/types/helpers/isFirstPage.d.ts +0 -3
  452. package/lib/types/helpers/isFirstPage.d.ts.map +0 -1
  453. package/lib/types/helpers/isFirstPage.test.d.ts +0 -2
  454. package/lib/types/helpers/isFirstPage.test.d.ts.map +0 -1
  455. package/lib/types/helpers/isLastPage.d.ts +0 -7
  456. package/lib/types/helpers/isLastPage.d.ts.map +0 -1
  457. package/lib/types/helpers/isLastPage.test.d.ts +0 -2
  458. package/lib/types/helpers/isLastPage.test.d.ts.map +0 -1
  459. package/lib/types/helpers/makeEdges.d.ts +0 -7
  460. package/lib/types/helpers/makeEdges.d.ts.map +0 -1
  461. package/lib/types/helpers/makeEntry.d.ts +0 -11
  462. package/lib/types/helpers/makeEntry.d.ts.map +0 -1
  463. package/lib/types/helpers/mergeCachedEdges.d.ts +0 -4
  464. package/lib/types/helpers/mergeCachedEdges.d.ts.map +0 -1
  465. package/lib/types/helpers/removeConnectionInputOptions.d.ts +0 -3
  466. package/lib/types/helpers/removeConnectionInputOptions.d.ts.map +0 -1
  467. package/lib/types/helpers/removeConnectionInputOptions.test.d.ts +0 -2
  468. package/lib/types/helpers/removeConnectionInputOptions.test.d.ts.map +0 -1
  469. package/lib/types/helpers/requestAndCachePages.d.ts +0 -21
  470. package/lib/types/helpers/requestAndCachePages.d.ts.map +0 -1
  471. package/lib/types/helpers/requestOutstandingPages.d.ts +0 -18
  472. package/lib/types/helpers/requestOutstandingPages.d.ts.map +0 -1
  473. package/lib/types/helpers/resolveConnection.d.ts +0 -24
  474. package/lib/types/helpers/resolveConnection.d.ts.map +0 -1
  475. package/lib/types/helpers/retrieveCachedConnection.d.ts.map +0 -1
  476. package/lib/types/helpers/retrieveCachedConnection.test.d.ts +0 -2
  477. package/lib/types/helpers/retrieveCachedConnection.test.d.ts.map +0 -1
  478. package/lib/types/helpers/retrieveCachedEdgesByPage.d.ts +0 -12
  479. package/lib/types/helpers/retrieveCachedEdgesByPage.d.ts.map +0 -1
  480. package/lib/types/helpers/validateCursor.d.ts +0 -11
  481. package/lib/types/helpers/validateCursor.d.ts.map +0 -1
  482. package/lib/types/helpers/validateCursor.test.d.ts +0 -2
  483. package/lib/types/helpers/validateCursor.test.d.ts.map +0 -1
  484. package/lib/types/index.d.ts +0 -4
  485. package/lib/types/index.d.ts.map +0 -1
  486. package/lib/types/main/index.d.ts +0 -5
  487. package/lib/types/main/index.d.ts.map +0 -1
  488. package/lib/types/main/index.test.d.ts +0 -2
  489. package/lib/types/main/index.test.d.ts.map +0 -1
  490. package/package-lock.json +0 -18
@@ -0,0 +1,25 @@
1
+ import { type Core } from '@cachemap/core';
2
+ import { type CachedEdges, type ConnectionInputOptions } from '../types.cts';
3
+ export type Context = {
4
+ cursorCache: Core;
5
+ groupCursor: string;
6
+ resultsPerPage: number;
7
+ };
8
+ export declare const retrieveCachedConnection: (args: ConnectionInputOptions, { cursorCache, groupCursor, resultsPerPage }: Context) => Promise<{
9
+ cachedEdges: CachedEdges[];
10
+ hasNextPage: boolean;
11
+ hasPreviousPage: boolean;
12
+ indexes: {
13
+ end: {
14
+ absolute: number;
15
+ relative: number;
16
+ };
17
+ start: {
18
+ absolute: number;
19
+ relative: number;
20
+ };
21
+ };
22
+ missingPages: number[];
23
+ totalResults: number;
24
+ }>;
25
+ //# sourceMappingURL=retrieveCachedConnection.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieveCachedConnection.d.cts","sourceRoot":"","sources":["../../../../src/helpers/retrieveCachedConnection.cts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,sBAAsB,EAA4B,MAAM,aAAa,CAAC;AAStG,MAAM,MAAM,OAAO,GAAG;IACpB,WAAW,EAAE,IAAI,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,wBAAwB,SAC7B,sBAAsB,gDACkB,OAAO;;;;;;;;;;;;;;;;EAsCtD,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { type Core } from '@cachemap/core';
2
+ import { type Edge } from '../types.cts';
3
+ export type Context = {
4
+ groupCursor: string;
5
+ pageNumber: number;
6
+ };
7
+ export declare const retrieveCachedEdgesByPage: (cursorCache: Core, { groupCursor, pageNumber }: Context) => Promise<{
8
+ edges: Edge[];
9
+ pageNumber: number;
10
+ }>;
11
+ //# sourceMappingURL=retrieveCachedEdgesByPage.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieveCachedEdgesByPage.d.cts","sourceRoot":"","sources":["../../../../src/helpers/retrieveCachedEdgesByPage.cts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAyB,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAE/D,MAAM,MAAM,OAAO,GAAG;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,yBAAyB,gBAAuB,IAAI,+BAA+B,OAAO;;;EAkBtG,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { Core } from '@cachemap/core';
2
+ import type { ConnectionInputOptions, CursorGroupMetadata, PartialCursorCacheEntry } from '../types.cts';
3
+ export type Context = {
4
+ cursorCache: Core;
5
+ resultsPerPage: number;
6
+ };
7
+ export declare const retrieveEntry: (args: ConnectionInputOptions, metadata: CursorGroupMetadata, { cursorCache, resultsPerPage }: Context) => Promise<PartialCursorCacheEntry>;
8
+ //# sourceMappingURL=retrieveEntry.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieveEntry.d.cts","sourceRoot":"","sources":["../../../../src/helpers/retrieveEntry.cts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EACV,sBAAsB,EAEtB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,aAAa,CAAC;AAIrB,MAAM,MAAM,OAAO,GAAG;IACpB,WAAW,EAAE,IAAI,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,aAAa,SAClB,sBAAsB,YAClB,mBAAmB,mCACI,OAAO,KACvC,QAAQ,uBAAuB,CAYjC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { type Core } from '@cachemap/core';
2
+ import { GraphQLError, type GraphQLResolveInfo } from 'graphql';
3
+ import { type ConnectionInputOptions } from '../types.cts';
4
+ export type Context = {
5
+ cursorCache: Core;
6
+ groupCursor: string;
7
+ resultsPerPage: number;
8
+ };
9
+ export declare const validateCursor: ({ after, before, first, last }: ConnectionInputOptions, { fieldNodes }: GraphQLResolveInfo, { cursorCache, groupCursor, resultsPerPage }: Context) => Promise<GraphQLError | undefined>;
10
+ //# sourceMappingURL=validateCursor.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateCursor.d.cts","sourceRoot":"","sources":["../../../../src/helpers/validateCursor.cts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,KAAK,sBAAsB,EAAmD,MAAM,aAAa,CAAC;AAM3G,MAAM,MAAM,OAAO,GAAG;IACpB,WAAW,EAAE,IAAI,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,cAAc,mCACO,sBAAsB,kBACtC,kBAAkB,gDACY,OAAO,sCA0DtD,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './types.cts';
2
+ export * from './helpers/removeConnectionInputOptions.cts';
3
+ export * from './main/index.cts';
4
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/index.cts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { PlainObject } from '@graphql-box/core';
2
+ import { type GraphQLResolveInfo } from 'graphql';
3
+ import { type Connection, type ConnectionInputOptions, type ConnectionResolverUserOptions, type Node } from '../types.cts';
4
+ export declare const makeConnectionResolver: <Source extends PlainObject | undefined, Args extends PlainObject, Ctx extends PlainObject, Resource extends PlainObject, ResourceNode extends Node>({ createMakeCursors, createResourceResolver, cursorCache, getters, resolver, resultsPerPage, }: ConnectionResolverUserOptions<Source, Args, Ctx, Resource, ResourceNode>) => (source: Source, args: Args & ConnectionInputOptions, context: Ctx, info: GraphQLResolveInfo) => Promise<Connection>;
5
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../../src/main/index.cts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAKlD,OAAO,EACL,KAAK,UAAU,EACf,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,KAAK,IAAI,EACV,MAAM,aAAa,CAAC;AAErB,eAAO,MAAM,sBAAsB,8YAmBzB,kBAAkB,KACvB,QAAQ,UAAU,CAoEpB,CAAC"}
@@ -1,41 +1,41 @@
1
- import Cachemap from "@cachemap/core";
2
- import { GraphQLResolveInfo } from "graphql";
3
- export declare type PlainObject = {
4
- [key: string]: any;
5
- };
6
- export declare type Node = PlainObject & {
7
- id: string | number;
8
- };
9
- export declare type Direction = "backward" | "forward";
10
- export declare type CursorCacheEntry = {
1
+ import { type Core } from '@cachemap/core';
2
+ import type { PlainObject } from '@graphql-box/core';
3
+ import { type GraphQLResolveInfo } from 'graphql';
4
+ import { type SetOptional } from 'type-fest';
5
+ export type Direction = 'backward' | 'forward';
6
+ export type CursorCacheEntry = {
11
7
  group: string;
12
8
  index: number;
13
9
  node: Node;
14
10
  page: number;
15
11
  };
16
- export declare type CursorGroupMetadata = {
12
+ export type PartialCursorCacheEntry = SetOptional<CursorCacheEntry, 'group' | 'node'>;
13
+ export type CursorGroupMetadata = {
17
14
  totalPages: number;
18
15
  totalResults: number;
19
16
  };
20
- export declare type CachedEdges = {
17
+ export type CachedEdges = {
21
18
  edges: Edge[];
22
19
  pageNumber: number;
23
20
  };
24
- export declare type Edge = {
21
+ export type Edge = {
25
22
  cursor: string;
26
23
  node: Node;
27
24
  };
28
- export declare type Indexes = {
25
+ export type Indexes = {
29
26
  absolute: number;
30
27
  relative: number;
31
28
  };
32
- export declare type PageInfo = {
29
+ export type Node = PlainObject & {
30
+ id: string | number;
31
+ };
32
+ export type PageInfo = {
33
33
  endCursor?: string;
34
34
  hasNextPage: boolean;
35
35
  hasPreviousPage: boolean;
36
36
  startCursor?: string;
37
37
  };
38
- export declare type Connection = {
38
+ export type Connection = {
39
39
  edges: Edge[];
40
40
  errors: Error[];
41
41
  nodes: Node[];
@@ -46,10 +46,10 @@ export interface ResourceResponse<Resource extends PlainObject> extends Response
46
46
  data?: Resource;
47
47
  errors?: Error[];
48
48
  }
49
- export declare type ResourceResolver<Resource extends PlainObject> = (args: {
49
+ export type ResourceResolver<Resource extends PlainObject> = (args: {
50
50
  page: number;
51
51
  }) => Promise<ResourceResponse<Resource>>;
52
- export declare type CreateResourceResolver<Source extends PlainObject | undefined, Args extends PlainObject, Ctx extends PlainObject, Resource extends PlainObject> = (source: Source, args: Args, context: Ctx, info: GraphQLResolveInfo) => ResourceResolver<Resource>;
52
+ export type CreateResourceResolver<Source extends PlainObject | undefined, Args extends PlainObject, Ctx extends PlainObject, Resource extends PlainObject> = (source: Source, args: Args, context: Ctx, info: GraphQLResolveInfo) => ResourceResolver<Resource>;
53
53
  export interface Getters<Resource extends PlainObject, ResourceNode extends Node> {
54
54
  nodes: (obj: Resource) => ResourceNode[];
55
55
  page: (obj: Resource) => number;
@@ -62,21 +62,16 @@ export interface ConnectionResolverUserOptions<Source extends PlainObject | unde
62
62
  makeIDCursor: (id: string | number) => string;
63
63
  };
64
64
  createResourceResolver: CreateResourceResolver<Source, Args, Ctx, Resource>;
65
- cursorCache: Cachemap;
65
+ cursorCache: Core;
66
66
  getters: Getters<Resource, ResourceNode>;
67
67
  resolver?: (args: Connection) => Connection;
68
68
  resultsPerPage: number;
69
69
  }
70
- export declare type ConnectionResolver = (source: PlainObject, args: PlainObject & ConnectionInputOptions, context: PlainObject, info: GraphQLResolveInfo) => Promise<Connection>;
71
- export declare type ConnectionInputOptions = {
70
+ export type ConnectionResolver = (source: PlainObject, args: PlainObject & ConnectionInputOptions, context: PlainObject, info: GraphQLResolveInfo) => Promise<Connection>;
71
+ export type ConnectionInputOptions = {
72
72
  after?: string;
73
73
  before?: string;
74
74
  first?: number;
75
75
  last?: number;
76
76
  };
77
- export declare type Context = {
78
- entry: CursorCacheEntry;
79
- metadata: CursorGroupMetadata;
80
- resultsPerPage: number;
81
- };
82
- //# sourceMappingURL=index.d.ts.map
77
+ //# sourceMappingURL=types.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.cts","sourceRoot":"","sources":["../../../src/types.cts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { Core } from '@cachemap/core';
2
+ export type Params = {
3
+ group: string;
4
+ pageRanges?: string[];
5
+ resultsPerPage?: number;
6
+ totalPages: number;
7
+ totalResults: number;
8
+ };
9
+ export declare const generateCursorCache: ({ group, pageRanges, resultsPerPage, totalPages, totalResults, }: Params) => Promise<Core>;
10
+ //# sourceMappingURL=generateCursorCache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateCursorCache.d.ts","sourceRoot":"","sources":["../../../../src/__testUtils__/generateCursorCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAMtC,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,mBAAmB,qEAM7B,MAAM,kBAyCR,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { PlainObject } from '@graphql-box/core';
2
+ import type { ResourceResponse } from '../types.ts';
3
+ export type Params = {
4
+ resultsPerPage: number;
5
+ totalPages: number;
6
+ totalResults: number;
7
+ };
8
+ export declare const generatePageResponse: ({ resultsPerPage, totalPages, totalResults }: Params) => (page: number) => Promise<ResourceResponse<PlainObject>>;
9
+ //# sourceMappingURL=generatePageResponse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generatePageResponse.d.ts","sourceRoot":"","sources":["../../../../src/__testUtils__/generatePageResponse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,MAAM,MAAM,GAAG;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,oBAAoB,iDACgB,MAAM,YAC9C,MAAM,2CAW4C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const generatePages: (pageRanges: string[]) => number[];
2
+ //# sourceMappingURL=generatePages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generatePages.d.ts","sourceRoot":"","sources":["../../../../src/__testUtils__/generatePages.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,eAAgB,MAAM,EAAE,aAS1C,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { type Core } from '@cachemap/core';
2
+ import { type Edge } from '../types.ts';
3
+ export type Params = {
4
+ edges: Edge[];
5
+ group: string;
6
+ headers: Headers;
7
+ page: number;
8
+ totalPages: number;
9
+ totalResults: number;
10
+ };
11
+ export declare const cacheCursors: (cursorCache: Core, { edges, group, headers, page, totalPages, totalResults }: Params) => Promise<void>;
12
+ //# sourceMappingURL=cacheCursors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cacheCursors.d.ts","sourceRoot":"","sources":["../../../../src/helpers/cacheCursors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,YAAY,gBACV,IAAI,6DAC0C,MAAM,kBAUlE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type CachedEdges, type Edge } from '../types.ts';
2
+ export declare const extractEdges: (cachedEdges: CachedEdges[]) => Edge[];
3
+ //# sourceMappingURL=extractEdges.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractEdges.d.ts","sourceRoot":"","sources":["../../../../src/helpers/extractEdges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAE1D,eAAO,MAAM,YAAY,gBAAiB,WAAW,EAAE,WACiC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type Edge } from '../types.ts';
2
+ export declare const extractNodes: (edges: Edge[]) => import("../types.ts").Node[];
3
+ //# sourceMappingURL=extractNodes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractNodes.d.ts","sourceRoot":"","sources":["../../../../src/helpers/extractNodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,YAAY,UAAW,IAAI,EAAE,iCAAiC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type ConnectionInputOptions } from '../types.ts';
2
+ export declare const getCount: ({ first, last }: ConnectionInputOptions) => number;
3
+ //# sourceMappingURL=getCount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCount.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getCount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D,eAAO,MAAM,QAAQ,oBAAqB,sBAAsB,WAAmB,CAAC"}
@@ -1,10 +1,10 @@
1
- import { Indexes } from "../defs";
2
- export declare type StartIndexContext = {
1
+ import { type Indexes } from '../types.ts';
2
+ export type StartIndexContext = {
3
3
  pageIndex: number;
4
4
  startIndex: Indexes;
5
5
  };
6
6
  export declare const getCurrentPageStartIndex: ({ pageIndex, startIndex }: StartIndexContext) => number;
7
- export declare type EndIndexContext = {
7
+ export type EndIndexContext = {
8
8
  endIndex: Indexes;
9
9
  pageIndex: number;
10
10
  resultsPerPage: number;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCurrentPageStartAndEndIndexes.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getCurrentPageStartAndEndIndexes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,wBAAwB,8BAA+B,iBAAiB,WAC1C,CAAC;AAE5C,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,sBAAsB,8DAA+D,eAAe,WACpC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type ConnectionInputOptions } from '../types.ts';
2
+ export declare const getCursor: ({ after, before }: ConnectionInputOptions) => string | undefined;
3
+ //# sourceMappingURL=getCursor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCursor.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getCursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D,eAAO,MAAM,SAAS,sBAAuB,sBAAsB,uBAAoB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Direction } from '../types.ts';
2
+ export declare const getDirection: (last?: number) => Direction;
3
+ //# sourceMappingURL=getDirection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDirection.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getDirection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,YAAY,UAAW,MAAM,KAAG,SAA4C,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { type CachedEdges, type Indexes } from '../types.ts';
2
+ export type Context = {
3
+ endIndex: Indexes;
4
+ resultsPerPage: number;
5
+ startIndex: Indexes;
6
+ };
7
+ export declare const getInRangeCachedEdges: (cachedEdgesByPage: CachedEdges[], { endIndex, resultsPerPage, startIndex }: Context) => CachedEdges[];
8
+ //# sourceMappingURL=getInRangeCachedEdges.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getInRangeCachedEdges.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getInRangeCachedEdges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAG7D,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,qBAAqB,sBACb,WAAW,EAAE,4CACU,OAAO,kBAgBlD,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { CursorGroupMetadata } from '../types.ts';
2
+ export type IndexesOnCurrentPageContext = {
3
+ page: number;
4
+ };
5
+ export type Context = {
6
+ metadata: CursorGroupMetadata;
7
+ resultsPerPage: number;
8
+ };
9
+ export declare const getIndexesOnCurrentPage: ({ metadata: { totalPages, totalResults }, page, resultsPerPage, }: IndexesOnCurrentPageContext & Context) => number;
10
+ //# sourceMappingURL=getIndexesOnCurrentPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getIndexesOnCurrentPage.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getIndexesOnCurrentPage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIvD,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,uBAAuB,sEAIjC,2BAA2B,GAAG,OAAO,WAC0E,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type Params } from './getResultsOnLastPage.ts';
2
+ export declare const getIndexesOnLastPage: ({ resultsPerPage, totalResults }: Params) => number;
3
+ //# sourceMappingURL=getIndexesOnLastPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getIndexesOnLastPage.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getIndexesOnLastPage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAwB,MAAM,2BAA2B,CAAC;AAE9E,eAAO,MAAM,oBAAoB,qCAAsC,MAAM,WACjB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { type ConnectionInputOptions, type CursorGroupMetadata, type Indexes, type PartialCursorCacheEntry } from '../types.ts';
2
+ export type GetPageNumbersToRequestContext = {
3
+ endIndex: Indexes;
4
+ startIndex: Indexes;
5
+ };
6
+ export type Context = {
7
+ entry: PartialCursorCacheEntry;
8
+ metadata: CursorGroupMetadata;
9
+ resultsPerPage: number;
10
+ };
11
+ export declare const getPageNumbersToRequest: (args: ConnectionInputOptions, { endIndex, entry: { page }, metadata, resultsPerPage, startIndex }: GetPageNumbersToRequestContext & Context) => number[];
12
+ //# sourceMappingURL=getPageNumbersToRequest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPageNumbersToRequest.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getPageNumbersToRequest.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,OAAO,EACZ,KAAK,uBAAuB,EAC7B,MAAM,aAAa,CAAC;AAGrB,MAAM,MAAM,8BAA8B,GAAG;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,KAAK,EAAE,uBAAuB,CAAC;IAC/B,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,uBAAuB,SAC5B,sBAAsB,uEACyC,8BAA8B,GAAG,OAAO,aAU9G,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type CachedEdges } from '../types.ts';
2
+ export declare const getPagesMissingFromCache: (cachedEdgesByPage: CachedEdges[]) => number[];
3
+ //# sourceMappingURL=getPagesMissingFromCache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPagesMissingFromCache.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getPagesMissingFromCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,eAAO,MAAM,wBAAwB,sBAAuB,WAAW,EAAE,aAQxE,CAAC"}
@@ -0,0 +1,6 @@
1
+ export type Params = {
2
+ resultsPerPage: number;
3
+ totalResults: number;
4
+ };
5
+ export declare const getResultsOnLastPage: ({ resultsPerPage, totalResults }: Params) => number;
6
+ //# sourceMappingURL=getResultsOnLastPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getResultsOnLastPage.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getResultsOnLastPage.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,oBAAoB,qCAAsC,MAAM,WAG5E,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type Edge } from '../types.ts';
2
+ export declare const getStartCursor: (edges: Edge[]) => string | undefined;
3
+ export declare const getEndCursor: (edges: Edge[]) => string | undefined;
4
+ //# sourceMappingURL=getStartAndEndCursors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getStartAndEndCursors.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getStartAndEndCursors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,cAAc,UAAW,IAAI,EAAE,uBAAqB,CAAC;AAElE,eAAO,MAAM,YAAY,UAAW,IAAI,EAAE,uBAGzC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type ConnectionInputOptions, type CursorGroupMetadata, type PartialCursorCacheEntry } from '../types.ts';
2
+ export type Context = {
3
+ entry: PartialCursorCacheEntry;
4
+ metadata: CursorGroupMetadata;
5
+ resultsPerPage: number;
6
+ };
7
+ export declare const getStartIndex: (args: ConnectionInputOptions, { entry: { index, page }, resultsPerPage }: Pick<Context, 'entry' | 'resultsPerPage'>) => {
8
+ absolute: number;
9
+ relative: number;
10
+ };
11
+ export declare const getEndIndex: (args: ConnectionInputOptions, { entry: { index, page }, metadata: { totalPages, totalResults }, resultsPerPage }: Context) => {
12
+ absolute: number;
13
+ relative: number;
14
+ };
15
+ //# sourceMappingURL=getStartAndEndIndexes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getStartAndEndIndexes.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getStartAndEndIndexes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,KAAK,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAOlH,MAAM,MAAM,OAAO,GAAG;IACpB,KAAK,EAAE,uBAAuB,CAAC;IAC/B,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,aAAa,SAClB,sBAAsB,8CACgB,KAAK,OAAO,EAAE,OAAO,GAAG,gBAAgB,CAAC;;;CAqBtF,CAAC;AAEF,eAAO,MAAM,WAAW,SAChB,sBAAsB,sFACwD,OAAO;;;CA0B5F,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { type ConnectionInputOptions, type CursorGroupMetadata, type Indexes } from '../types.ts';
2
+ export type PageNumberContext = {
3
+ endIndex: Indexes;
4
+ page: number;
5
+ startIndex: Indexes;
6
+ };
7
+ export type Context = {
8
+ metadata: CursorGroupMetadata;
9
+ resultsPerPage: number;
10
+ };
11
+ export declare const getStartPageNumber: (args: ConnectionInputOptions, { page, resultsPerPage, startIndex }: Omit<PageNumberContext, 'endIndex'> & Omit<Context, 'metadata'>) => number;
12
+ export declare const getEndPageNumber: (args: ConnectionInputOptions, { endIndex, metadata: { totalPages }, page, resultsPerPage }: Omit<PageNumberContext, 'startIndex'> & Context) => number;
13
+ //# sourceMappingURL=getStartAndEndPageNumbers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getStartAndEndPageNumbers.d.ts","sourceRoot":"","sources":["../../../../src/helpers/getStartAndEndPageNumbers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAIlG,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,kBAAkB,SACvB,sBAAsB,wCACU,KAAK,iBAAiB,EAAE,UAAU,CAAC,GAAG,KAAK,OAAO,EAAE,UAAU,CAAC,WAQtG,CAAC;AAEF,eAAO,MAAM,gBAAgB,SACrB,sBAAsB,gEACkC,KAAK,iBAAiB,EAAE,YAAY,CAAC,GAAG,OAAO,WAc9G,CAAC"}
@@ -1,9 +1,9 @@
1
- import { CachedEdges, CursorGroupMetadata, Indexes } from "../defs";
2
- export declare type HasPreviousPageParams = {
1
+ import { type CachedEdges, type CursorGroupMetadata, type Indexes } from '../types.ts';
2
+ export type HasPreviousPageParams = {
3
3
  cachedEdgesByPage: CachedEdges[];
4
4
  startIndex: Indexes;
5
5
  };
6
- export declare type HasNextPageParams = {
6
+ export type HasNextPageParams = {
7
7
  cachedEdgesByPage: CachedEdges[];
8
8
  endIndex: Indexes;
9
9
  metadata: CursorGroupMetadata;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasPreviousNextPage.d.ts","sourceRoot":"","sources":["../../../../src/helpers/hasPreviousNextPage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,mBAAmB,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAGvF,MAAM,MAAM,qBAAqB,GAAG;IAClC,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,eAAe,sCAAuC,qBAAqB,YAC2B,CAAC;AAEpH,eAAO,MAAM,WAAW,6FAKrB,iBAAiB,YAGwD,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { type CursorCacheEntry, type Direction } from '../types.ts';
2
+ export type Params = {
3
+ direction: Direction;
4
+ entry: CursorCacheEntry;
5
+ };
6
+ export declare const isCursorFirst: ({ direction, entry: { index, page } }: Params) => boolean;
7
+ //# sourceMappingURL=isCursorFirst.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isCursorFirst.d.ts","sourceRoot":"","sources":["../../../../src/helpers/isCursorFirst.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAEpE,MAAM,MAAM,MAAM,GAAG;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,gBAAgB,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,aAAa,0CAA2C,MAAM,YACpB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { type CursorCacheEntry, type Direction } from '../types.ts';
2
+ export type Params = {
3
+ direction: Direction;
4
+ entry: CursorCacheEntry;
5
+ resultsPerPage: number;
6
+ totalPages: number;
7
+ totalResults: number;
8
+ };
9
+ export declare const isCursorLast: ({ direction, entry: { index, page }, resultsPerPage, totalPages, totalResults }: Params) => boolean;
10
+ //# sourceMappingURL=isCursorLast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isCursorLast.d.ts","sourceRoot":"","sources":["../../../../src/helpers/isCursorLast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAGpE,MAAM,MAAM,MAAM,GAAG;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,gBAAgB,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,YAAY,oFAAqF,MAAM,YACA,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { PlainObject } from '@graphql-box/core';
2
+ import { type ConnectionInputOptions } from '../types.ts';
3
+ export declare const isCursorSupplied: ({ after, before }: PlainObject & ConnectionInputOptions) => boolean;
4
+ //# sourceMappingURL=isCursorSupplied.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isCursorSupplied.d.ts","sourceRoot":"","sources":["../../../../src/helpers/isCursorSupplied.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D,eAAO,MAAM,gBAAgB,sBAAuB,WAAW,GAAG,sBAAsB,YAAwB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const isFirstPage: (page: number) => boolean;
2
+ //# sourceMappingURL=isFirstPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isFirstPage.d.ts","sourceRoot":"","sources":["../../../../src/helpers/isFirstPage.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,SAAU,MAAM,YAAe,CAAC"}
@@ -0,0 +1,6 @@
1
+ export type Params = {
2
+ page: number;
3
+ totalPages: number;
4
+ };
5
+ export declare const isLastPage: ({ page, totalPages }: Params) => boolean;
6
+ //# sourceMappingURL=isLastPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isLastPage.d.ts","sourceRoot":"","sources":["../../../../src/helpers/isLastPage.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,UAAU,yBAA0B,MAAM,YAAwB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { type Node } from '../types.ts';
2
+ export declare const makeEdges: (nodes: Node[], makeCursor: (node: Node) => string) => {
3
+ cursor: string;
4
+ node: Node;
5
+ }[];
6
+ //# sourceMappingURL=makeEdges.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"makeEdges.d.ts","sourceRoot":"","sources":["../../../../src/helpers/makeEdges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,SAAS,UAAW,IAAI,EAAE,qBAAqB,IAAI,KAAK,MAAM;;;GAClB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { type ConnectionInputOptions, type CursorGroupMetadata } from '../types.ts';
2
+ export type Context = {
3
+ metadata: CursorGroupMetadata;
4
+ resultsPerPage: number;
5
+ };
6
+ export declare const makeEntry: (args: ConnectionInputOptions, { metadata: { totalPages, totalResults }, resultsPerPage }: Context) => {
7
+ index: number;
8
+ page: number;
9
+ };
10
+ //# sourceMappingURL=makeEntry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"makeEntry.d.ts","sourceRoot":"","sources":["../../../../src/helpers/makeEntry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIpF,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,SAAS,SACd,sBAAsB,8DACgC,OAAO;;;CAOpE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type CachedEdges } from '../types.ts';
2
+ export declare const mergeCachedEdges: (cachedEdges: CachedEdges[], missingCachedEdges: CachedEdges[]) => CachedEdges[];
3
+ //# sourceMappingURL=mergeCachedEdges.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeCachedEdges.d.ts","sourceRoot":"","sources":["../../../../src/helpers/mergeCachedEdges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,eAAO,MAAM,gBAAgB,gBAAiB,WAAW,EAAE,sBAAsB,WAAW,EAAE,kBAWtF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const removeConnectionInputOptions: <O extends object>(args: O) => Partial<O>;
2
+ //# sourceMappingURL=removeConnectionInputOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeConnectionInputOptions.d.ts","sourceRoot":"","sources":["../../../../src/helpers/removeConnectionInputOptions.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,4BAA4B,2CACwB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { type Core } from '@cachemap/core';
2
+ import type { PlainObject } from '@graphql-box/core';
3
+ import { type Getters, type Node, type ResourceResolver } from '../types.ts';
4
+ export type Context<Resource extends PlainObject, ResourceNode extends Node> = {
5
+ cursorCache: Core;
6
+ getters: Getters<Resource, ResourceNode>;
7
+ groupCursor: string;
8
+ makeIDCursor: (id: string | number) => string;
9
+ resourceResolver: ResourceResolver<Resource>;
10
+ };
11
+ export declare const requestAndCachePages: <Resource extends PlainObject, ResourceNode extends Node>(pages: number[], { cursorCache, getters, groupCursor, makeIDCursor, resourceResolver }: Context<Resource, ResourceNode>) => Promise<{
12
+ cachedEdges: {
13
+ edges: {
14
+ cursor: string;
15
+ node: Node;
16
+ }[];
17
+ pageNumber: number;
18
+ }[];
19
+ errors: Error[];
20
+ }>;
21
+ //# sourceMappingURL=requestAndCachePages.d.ts.map