@warp-drive/core 5.9.0-beta.0 → 5.9.0-beta.2

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 (476) hide show
  1. package/dist/-private-BYn1Vh-L.js +22 -0
  2. package/dist/-private-BYn1Vh-L.js.map +1 -0
  3. package/dist/-private-CyhhcK1a.js +120 -0
  4. package/dist/-private-CyhhcK1a.js.map +1 -0
  5. package/dist/-private-zrP4VGAf.js +3530 -0
  6. package/dist/-private-zrP4VGAf.js.map +1 -0
  7. package/dist/aliases-BWYW5EhX.d.ts +17 -0
  8. package/dist/aliases-BWYW5EhX.d.ts.map +1 -0
  9. package/dist/build-config/babel-macros.d.ts +2 -0
  10. package/dist/build-config/babel-macros.js +3 -1
  11. package/dist/build-config/canary-features.d.ts +1 -0
  12. package/dist/build-config/canary-features.js +1 -1
  13. package/dist/build-config/debugging.d.ts +1 -0
  14. package/dist/build-config/debugging.js +1 -1
  15. package/dist/build-config/deprecations.d.ts +1 -0
  16. package/dist/build-config/deprecations.js +1 -1
  17. package/dist/build-config/env.d.ts +2 -0
  18. package/dist/build-config/env.js +3 -1
  19. package/dist/build-config/macros.d.ts +2 -0
  20. package/dist/build-config/macros.js +3 -1
  21. package/dist/build-config.d.ts +2 -0
  22. package/dist/build-config.js +3 -1
  23. package/dist/change-C7kqv2kW.d.ts +41 -0
  24. package/dist/change-C7kqv2kW.d.ts.map +1 -0
  25. package/dist/concepts-DFldVwEM.d.ts +77 -0
  26. package/dist/concepts-DFldVwEM.d.ts.map +1 -0
  27. package/dist/configure-B_F639tN.d.ts +134 -0
  28. package/dist/configure-B_F639tN.d.ts.map +1 -0
  29. package/dist/configure.d.ts +2 -0
  30. package/dist/configure.js +3 -2
  31. package/dist/document-BEn91SwT.d.ts +129 -0
  32. package/dist/document-BEn91SwT.d.ts.map +1 -0
  33. package/dist/error-50OSEhsF.d.ts +77 -0
  34. package/dist/error-50OSEhsF.d.ts.map +1 -0
  35. package/dist/fields-FM7peCiM.d.ts +2327 -0
  36. package/dist/fields-FM7peCiM.d.ts.map +1 -0
  37. package/dist/graph/-private.d.ts +2 -0
  38. package/dist/graph/-private.js +2200 -3196
  39. package/dist/graph/-private.js.map +1 -0
  40. package/dist/graph-DLqYXP2z.d.ts +186 -0
  41. package/dist/graph-DLqYXP2z.d.ts.map +1 -0
  42. package/dist/identifier-DQnqOSJK.d.ts +112 -0
  43. package/dist/identifier-DQnqOSJK.d.ts.map +1 -0
  44. package/dist/index.d.ts +2 -0
  45. package/dist/index.js +3 -8
  46. package/dist/internal-DtWOpxrR.d.ts +9182 -0
  47. package/dist/internal-DtWOpxrR.d.ts.map +1 -0
  48. package/dist/json-api-raw-C5APJHHB.d.ts +378 -0
  49. package/dist/json-api-raw-C5APJHHB.d.ts.map +1 -0
  50. package/dist/mutations-CqtoGB4t.d.ts +165 -0
  51. package/dist/mutations-CqtoGB4t.d.ts.map +1 -0
  52. package/dist/operations-D1qA6r0_.d.ts +244 -0
  53. package/dist/operations-D1qA6r0_.d.ts.map +1 -0
  54. package/dist/params-DrEx3bf8.d.ts +41 -0
  55. package/dist/params-DrEx3bf8.d.ts.map +1 -0
  56. package/dist/raw-D5hnjiq7.d.ts +31 -0
  57. package/dist/raw-D5hnjiq7.d.ts.map +1 -0
  58. package/dist/reactive/-private.d.ts +2 -0
  59. package/dist/reactive/-private.js +3 -1
  60. package/dist/reactive.d.ts +2 -0
  61. package/dist/reactive.js +5 -4
  62. package/dist/record-D3QQcaIR.d.ts +254 -0
  63. package/dist/record-D3QQcaIR.d.ts.map +1 -0
  64. package/dist/relationship-CmHzMPKf.d.ts +65 -0
  65. package/dist/relationship-CmHzMPKf.d.ts.map +1 -0
  66. package/dist/request-7BJFgSu_.js +766 -0
  67. package/dist/request-7BJFgSu_.js.map +1 -0
  68. package/dist/request.d.ts +2 -0
  69. package/dist/request.js +2 -48
  70. package/dist/signals/-leaked.d.ts +1060 -0
  71. package/dist/signals/-leaked.d.ts.map +1 -0
  72. package/dist/signals/-leaked.js +3 -1
  73. package/dist/src-BOAWJH_S.js +9227 -0
  74. package/dist/src-BOAWJH_S.js.map +1 -0
  75. package/dist/store/-private.d.ts +2 -0
  76. package/dist/store/-private.js +3 -1
  77. package/dist/store-DNF9Rgoh.js +462 -0
  78. package/dist/store-DNF9Rgoh.js.map +1 -0
  79. package/dist/store.d.ts +2 -0
  80. package/dist/store.js +3 -1
  81. package/dist/symbols-DjRDCeX0.d.ts +88 -0
  82. package/dist/symbols-DjRDCeX0.d.ts.map +1 -0
  83. package/dist/types/-private.d.ts +76 -0
  84. package/dist/types/-private.d.ts.map +1 -0
  85. package/dist/types/-private.js +1 -77
  86. package/dist/types/cache/aliases.d.ts +2 -0
  87. package/dist/types/cache/change.d.ts +2 -0
  88. package/dist/types/cache/mutations.d.ts +2 -0
  89. package/dist/types/cache/operations.d.ts +2 -0
  90. package/dist/types/cache/relationship.d.ts +2 -0
  91. package/dist/types/cache.d.ts +2 -0
  92. package/dist/types/graph.d.ts +2 -0
  93. package/dist/types/identifier.d.ts +2 -0
  94. package/dist/types/identifier.js +60 -52
  95. package/dist/types/identifier.js.map +1 -0
  96. package/dist/types/json/raw.d.ts +2 -0
  97. package/dist/types/params.d.ts +2 -0
  98. package/dist/types/record.d.ts +2 -0
  99. package/dist/types/record.js +211 -181
  100. package/dist/types/record.js.map +1 -0
  101. package/dist/types/request.d.ts +2 -0
  102. package/dist/types/request.js +138 -69
  103. package/dist/types/request.js.map +1 -0
  104. package/dist/types/runtime.d.ts +55 -0
  105. package/dist/types/runtime.d.ts.map +1 -0
  106. package/dist/types/runtime.js +54 -26
  107. package/dist/types/runtime.js.map +1 -0
  108. package/dist/types/schema/concepts.d.ts +2 -0
  109. package/dist/types/schema/fields.d.ts +2 -0
  110. package/dist/types/schema/fields.js +501 -495
  111. package/dist/types/schema/fields.js.map +1 -0
  112. package/dist/types/schema/fields.type-test.d.ts +1 -0
  113. package/dist/types/schema/fields.type-test.js +79 -0
  114. package/dist/types/schema/fields.type-test.js.map +1 -0
  115. package/dist/types/schema/schema-service.d.ts +2 -0
  116. package/dist/types/spec/document.d.ts +2 -0
  117. package/dist/types/spec/error.d.ts +2 -0
  118. package/dist/types/spec/json-api-raw.d.ts +2 -0
  119. package/dist/types/symbols.d.ts +2 -0
  120. package/dist/types/symbols.js +84 -77
  121. package/dist/types/symbols.js.map +1 -0
  122. package/dist/types/utils.d.ts +2 -0
  123. package/dist/types.d.ts +3 -0
  124. package/dist/unpkg/dev/-private-BoSTJwp9.js +3519 -0
  125. package/dist/unpkg/dev/-private-BoSTJwp9.js.map +1 -0
  126. package/dist/unpkg/dev/-private-CUkeqUhO.js +22 -0
  127. package/dist/unpkg/dev/-private-CUkeqUhO.js.map +1 -0
  128. package/dist/unpkg/dev/-private-D6Tw25AD.js +111 -0
  129. package/dist/unpkg/dev/-private-D6Tw25AD.js.map +1 -0
  130. package/dist/unpkg/dev/build-config/babel-macros.js +3 -1
  131. package/dist/unpkg/dev/build-config/canary-features.js +1 -1
  132. package/dist/unpkg/dev/build-config/debugging.js +1 -1
  133. package/dist/unpkg/dev/build-config/deprecations.js +1 -1
  134. package/dist/unpkg/dev/build-config/env.js +3 -1
  135. package/dist/unpkg/dev/build-config/macros.js +3 -1
  136. package/dist/unpkg/dev/build-config.js +3 -1
  137. package/dist/unpkg/dev/configure.js +3 -1
  138. package/dist/unpkg/dev/graph/-private.js +1958 -2953
  139. package/dist/unpkg/dev/graph/-private.js.map +1 -0
  140. package/dist/unpkg/dev/index.js +3 -6
  141. package/dist/unpkg/dev/reactive/-private.js +3 -1
  142. package/dist/unpkg/dev/reactive.js +5 -3
  143. package/dist/unpkg/dev/request-CwjpJB3r.js +756 -0
  144. package/dist/unpkg/dev/request-CwjpJB3r.js.map +1 -0
  145. package/dist/unpkg/dev/request.js +2 -48
  146. package/dist/unpkg/dev/runtime-DoDtzXJb.js +110 -0
  147. package/dist/unpkg/dev/runtime-DoDtzXJb.js.map +1 -0
  148. package/dist/unpkg/dev/signals/-leaked.js +3 -1
  149. package/dist/unpkg/dev/src-CP6e_ozt.js +8331 -0
  150. package/dist/unpkg/dev/src-CP6e_ozt.js.map +1 -0
  151. package/dist/unpkg/dev/store/-private.js +3 -55
  152. package/dist/unpkg/dev/store-DamE3C4y.js +427 -0
  153. package/dist/unpkg/dev/store-DamE3C4y.js.map +1 -0
  154. package/dist/unpkg/dev/store.js +1 -556
  155. package/dist/unpkg/dev/types/-private.js +1 -67
  156. package/dist/unpkg/dev/types/identifier.js +63 -56
  157. package/dist/unpkg/dev/types/identifier.js.map +1 -0
  158. package/dist/unpkg/dev/types/record.js +211 -181
  159. package/dist/unpkg/dev/types/record.js.map +1 -0
  160. package/dist/unpkg/dev/types/request.js +138 -69
  161. package/dist/unpkg/dev/types/request.js.map +1 -0
  162. package/dist/unpkg/dev/types/runtime.js +54 -26
  163. package/dist/unpkg/dev/types/runtime.js.map +1 -0
  164. package/dist/unpkg/dev/types/schema/fields.js +501 -495
  165. package/dist/unpkg/dev/types/schema/fields.js.map +1 -0
  166. package/dist/unpkg/dev/types/schema/fields.type-test.js +79 -0
  167. package/dist/unpkg/dev/types/schema/fields.type-test.js.map +1 -0
  168. package/dist/unpkg/dev/types/symbols.js +84 -77
  169. package/dist/unpkg/dev/types/symbols.js.map +1 -0
  170. package/dist/unpkg/dev/utils/string.js +79 -85
  171. package/dist/unpkg/dev/utils/string.js.map +1 -0
  172. package/dist/unpkg/dev-deprecated/-private-BoSTJwp9.js +3519 -0
  173. package/dist/unpkg/dev-deprecated/-private-BoSTJwp9.js.map +1 -0
  174. package/dist/unpkg/dev-deprecated/-private-CUkeqUhO.js +22 -0
  175. package/dist/unpkg/dev-deprecated/-private-CUkeqUhO.js.map +1 -0
  176. package/dist/unpkg/dev-deprecated/-private-D6Tw25AD.js +111 -0
  177. package/dist/unpkg/dev-deprecated/-private-D6Tw25AD.js.map +1 -0
  178. package/dist/unpkg/dev-deprecated/build-config/babel-macros.js +3 -1
  179. package/dist/unpkg/dev-deprecated/build-config/canary-features.js +1 -1
  180. package/dist/unpkg/dev-deprecated/build-config/debugging.js +1 -1
  181. package/dist/unpkg/dev-deprecated/build-config/deprecations.js +1 -1
  182. package/dist/unpkg/dev-deprecated/build-config/env.js +3 -1
  183. package/dist/unpkg/dev-deprecated/build-config/macros.js +3 -1
  184. package/dist/unpkg/dev-deprecated/build-config.js +3 -1
  185. package/dist/unpkg/dev-deprecated/configure.js +3 -1
  186. package/dist/unpkg/dev-deprecated/graph/-private.js +2077 -3147
  187. package/dist/unpkg/dev-deprecated/graph/-private.js.map +1 -0
  188. package/dist/unpkg/dev-deprecated/index.js +3 -5
  189. package/dist/unpkg/dev-deprecated/reactive/-private.js +3 -1
  190. package/dist/unpkg/dev-deprecated/reactive.js +5 -3
  191. package/dist/unpkg/dev-deprecated/request-CwjpJB3r.js +756 -0
  192. package/dist/unpkg/dev-deprecated/request-CwjpJB3r.js.map +1 -0
  193. package/dist/unpkg/dev-deprecated/request.js +2 -48
  194. package/dist/unpkg/dev-deprecated/runtime-CPL2BGgT.js +110 -0
  195. package/dist/unpkg/dev-deprecated/runtime-CPL2BGgT.js.map +1 -0
  196. package/dist/unpkg/dev-deprecated/signals/-leaked.js +3 -1
  197. package/dist/unpkg/dev-deprecated/src-De8OV58h.js +8884 -0
  198. package/dist/unpkg/dev-deprecated/src-De8OV58h.js.map +1 -0
  199. package/dist/unpkg/dev-deprecated/store/-private.js +3 -1
  200. package/dist/unpkg/dev-deprecated/store-Bsdz5mRe.js +427 -0
  201. package/dist/unpkg/dev-deprecated/store-Bsdz5mRe.js.map +1 -0
  202. package/dist/unpkg/dev-deprecated/store.js +1 -556
  203. package/dist/unpkg/dev-deprecated/types/-private.js +1 -67
  204. package/dist/unpkg/dev-deprecated/types/identifier.js +63 -56
  205. package/dist/unpkg/dev-deprecated/types/identifier.js.map +1 -0
  206. package/dist/unpkg/dev-deprecated/types/record.js +211 -181
  207. package/dist/unpkg/dev-deprecated/types/record.js.map +1 -0
  208. package/dist/unpkg/dev-deprecated/types/request.js +138 -69
  209. package/dist/unpkg/dev-deprecated/types/request.js.map +1 -0
  210. package/dist/unpkg/dev-deprecated/types/runtime.js +54 -26
  211. package/dist/unpkg/dev-deprecated/types/runtime.js.map +1 -0
  212. package/dist/unpkg/dev-deprecated/types/schema/fields.js +501 -495
  213. package/dist/unpkg/dev-deprecated/types/schema/fields.js.map +1 -0
  214. package/dist/unpkg/dev-deprecated/types/schema/fields.type-test.js +79 -0
  215. package/dist/unpkg/dev-deprecated/types/schema/fields.type-test.js.map +1 -0
  216. package/dist/unpkg/dev-deprecated/types/symbols.js +84 -77
  217. package/dist/unpkg/dev-deprecated/types/symbols.js.map +1 -0
  218. package/dist/unpkg/dev-deprecated/utils/string.js +79 -85
  219. package/dist/unpkg/dev-deprecated/utils/string.js.map +1 -0
  220. package/dist/unpkg/prod/-private-B36B1ztP.js +22 -0
  221. package/dist/unpkg/prod/-private-B36B1ztP.js.map +1 -0
  222. package/dist/unpkg/prod/-private-DHco-h0q.js +3294 -0
  223. package/dist/unpkg/prod/-private-DHco-h0q.js.map +1 -0
  224. package/dist/unpkg/prod/-private-Dhl123OI.js +99 -0
  225. package/dist/unpkg/prod/-private-Dhl123OI.js.map +1 -0
  226. package/dist/unpkg/prod/build-config/babel-macros.js +3 -1
  227. package/dist/unpkg/prod/build-config/canary-features.js +1 -1
  228. package/dist/unpkg/prod/build-config/debugging.js +1 -1
  229. package/dist/unpkg/prod/build-config/deprecations.js +1 -1
  230. package/dist/unpkg/prod/build-config/env.js +3 -1
  231. package/dist/unpkg/prod/build-config/macros.js +3 -1
  232. package/dist/unpkg/prod/build-config.js +3 -1
  233. package/dist/unpkg/prod/configure.js +3 -2
  234. package/dist/unpkg/prod/graph/-private.js +1494 -2101
  235. package/dist/unpkg/prod/graph/-private.js.map +1 -0
  236. package/dist/unpkg/prod/index.js +2 -482
  237. package/dist/unpkg/prod/reactive/-private.js +3 -1
  238. package/dist/unpkg/prod/reactive.js +5 -30
  239. package/dist/unpkg/prod/request-BBdC1Sz7.js +480 -0
  240. package/dist/unpkg/prod/request-BBdC1Sz7.js.map +1 -0
  241. package/dist/unpkg/prod/request.js +3 -2
  242. package/dist/unpkg/prod/signals/-leaked.js +3 -1
  243. package/dist/unpkg/prod/src-nFHlZgKa.js +6942 -0
  244. package/dist/unpkg/prod/src-nFHlZgKa.js.map +1 -0
  245. package/dist/unpkg/prod/store/-private.js +3 -126
  246. package/dist/unpkg/prod/store-BWhmb7Ob.js +359 -0
  247. package/dist/unpkg/prod/store-BWhmb7Ob.js.map +1 -0
  248. package/dist/unpkg/prod/store.js +1 -435
  249. package/dist/unpkg/prod/types/-private.js +1 -47
  250. package/dist/unpkg/prod/types/identifier.js +63 -56
  251. package/dist/unpkg/prod/types/identifier.js.map +1 -0
  252. package/dist/unpkg/prod/types/record.js +211 -181
  253. package/dist/unpkg/prod/types/record.js.map +1 -0
  254. package/dist/unpkg/prod/types/request.js +138 -69
  255. package/dist/unpkg/prod/types/request.js.map +1 -0
  256. package/dist/unpkg/prod/types/runtime.js +54 -26
  257. package/dist/unpkg/prod/types/runtime.js.map +1 -0
  258. package/dist/unpkg/prod/types/schema/fields.js +501 -495
  259. package/dist/unpkg/prod/types/schema/fields.js.map +1 -0
  260. package/dist/unpkg/prod/types/schema/fields.type-test.js +79 -0
  261. package/dist/unpkg/prod/types/schema/fields.type-test.js.map +1 -0
  262. package/dist/unpkg/prod/types/symbols.js +84 -77
  263. package/dist/unpkg/prod/types/symbols.js.map +1 -0
  264. package/dist/unpkg/prod/utils/string.js +70 -66
  265. package/dist/unpkg/prod/utils/string.js.map +1 -0
  266. package/dist/unpkg/prod-deprecated/-private-B36B1ztP.js +22 -0
  267. package/dist/unpkg/prod-deprecated/-private-B36B1ztP.js.map +1 -0
  268. package/dist/unpkg/prod-deprecated/-private-DHco-h0q.js +3294 -0
  269. package/dist/unpkg/prod-deprecated/-private-DHco-h0q.js.map +1 -0
  270. package/dist/unpkg/prod-deprecated/-private-Dhl123OI.js +99 -0
  271. package/dist/unpkg/prod-deprecated/-private-Dhl123OI.js.map +1 -0
  272. package/dist/unpkg/prod-deprecated/build-config/babel-macros.js +3 -1
  273. package/dist/unpkg/prod-deprecated/build-config/canary-features.js +1 -1
  274. package/dist/unpkg/prod-deprecated/build-config/debugging.js +1 -1
  275. package/dist/unpkg/prod-deprecated/build-config/deprecations.js +1 -1
  276. package/dist/unpkg/prod-deprecated/build-config/env.js +3 -1
  277. package/dist/unpkg/prod-deprecated/build-config/macros.js +3 -1
  278. package/dist/unpkg/prod-deprecated/build-config.js +3 -1
  279. package/dist/unpkg/prod-deprecated/configure.js +3 -2
  280. package/dist/unpkg/prod-deprecated/graph/-private.js +1603 -2272
  281. package/dist/unpkg/prod-deprecated/graph/-private.js.map +1 -0
  282. package/dist/unpkg/prod-deprecated/index.js +2 -482
  283. package/dist/unpkg/prod-deprecated/reactive/-private.js +3 -1
  284. package/dist/unpkg/prod-deprecated/reactive.js +5 -5
  285. package/dist/unpkg/prod-deprecated/request-BBdC1Sz7.js +480 -0
  286. package/dist/unpkg/prod-deprecated/request-BBdC1Sz7.js.map +1 -0
  287. package/dist/unpkg/prod-deprecated/request.js +3 -2
  288. package/dist/unpkg/prod-deprecated/signals/-leaked.js +3 -1
  289. package/dist/unpkg/prod-deprecated/src-Cku5ymUJ.js +7375 -0
  290. package/dist/unpkg/prod-deprecated/src-Cku5ymUJ.js.map +1 -0
  291. package/dist/unpkg/prod-deprecated/store/-private.js +3 -88
  292. package/dist/unpkg/prod-deprecated/store-BWhmb7Ob.js +359 -0
  293. package/dist/unpkg/prod-deprecated/store-BWhmb7Ob.js.map +1 -0
  294. package/dist/unpkg/prod-deprecated/store.js +1 -435
  295. package/dist/unpkg/prod-deprecated/types/-private.js +1 -47
  296. package/dist/unpkg/prod-deprecated/types/identifier.js +63 -56
  297. package/dist/unpkg/prod-deprecated/types/identifier.js.map +1 -0
  298. package/dist/unpkg/prod-deprecated/types/record.js +211 -181
  299. package/dist/unpkg/prod-deprecated/types/record.js.map +1 -0
  300. package/dist/unpkg/prod-deprecated/types/request.js +138 -69
  301. package/dist/unpkg/prod-deprecated/types/request.js.map +1 -0
  302. package/dist/unpkg/prod-deprecated/types/runtime.js +54 -26
  303. package/dist/unpkg/prod-deprecated/types/runtime.js.map +1 -0
  304. package/dist/unpkg/prod-deprecated/types/schema/fields.js +501 -495
  305. package/dist/unpkg/prod-deprecated/types/schema/fields.js.map +1 -0
  306. package/dist/unpkg/prod-deprecated/types/schema/fields.type-test.js +79 -0
  307. package/dist/unpkg/prod-deprecated/types/schema/fields.type-test.js.map +1 -0
  308. package/dist/unpkg/prod-deprecated/types/symbols.js +84 -77
  309. package/dist/unpkg/prod-deprecated/types/symbols.js.map +1 -0
  310. package/dist/unpkg/prod-deprecated/utils/string.js +70 -66
  311. package/dist/unpkg/prod-deprecated/utils/string.js.map +1 -0
  312. package/dist/utils/string.d.ts +54 -0
  313. package/dist/utils/string.d.ts.map +1 -0
  314. package/dist/utils/string.js +84 -85
  315. package/dist/utils/string.js.map +1 -0
  316. package/dist/utils-BtURiy8l.d.ts +24 -0
  317. package/dist/utils-BtURiy8l.d.ts.map +1 -0
  318. package/package.json +17 -21
  319. package/declarations/build-config/babel-macros.d.ts +0 -1
  320. package/declarations/build-config/canary-features.d.ts +0 -1
  321. package/declarations/build-config/debugging.d.ts +0 -1
  322. package/declarations/build-config/deprecations.d.ts +0 -1
  323. package/declarations/build-config/env.d.ts +0 -1
  324. package/declarations/build-config/macros.d.ts +0 -1
  325. package/declarations/build-config.d.ts +0 -18
  326. package/declarations/configure.d.ts +0 -7
  327. package/declarations/graph/-private/-diff.d.ts +0 -19
  328. package/declarations/graph/-private/-edge-definition.d.ts +0 -149
  329. package/declarations/graph/-private/-state.d.ts +0 -9
  330. package/declarations/graph/-private/-utils.d.ts +0 -25
  331. package/declarations/graph/-private/coerce-id.d.ts +0 -4
  332. package/declarations/graph/-private/debug/assert-polymorphic-type.d.ts +0 -6
  333. package/declarations/graph/-private/edges/collection.d.ts +0 -39
  334. package/declarations/graph/-private/edges/implicit.d.ts +0 -43
  335. package/declarations/graph/-private/edges/resource.d.ts +0 -23
  336. package/declarations/graph/-private/graph.d.ts +0 -56
  337. package/declarations/graph/-private/normalize-link.d.ts +0 -2
  338. package/declarations/graph/-private/operations/add-to-related-records.d.ts +0 -4
  339. package/declarations/graph/-private/operations/merge-identifier.d.ts +0 -3
  340. package/declarations/graph/-private/operations/remove-from-related-records.d.ts +0 -4
  341. package/declarations/graph/-private/operations/replace-related-record.d.ts +0 -3
  342. package/declarations/graph/-private/operations/replace-related-records.d.ts +0 -7
  343. package/declarations/graph/-private/operations/update-relationship.d.ts +0 -9
  344. package/declarations/graph/-private.d.ts +0 -13
  345. package/declarations/index.d.ts +0 -96
  346. package/declarations/reactive/-private/default-mode.d.ts +0 -73
  347. package/declarations/reactive/-private/document.d.ts +0 -142
  348. package/declarations/reactive/-private/fields/extension.d.ts +0 -8
  349. package/declarations/reactive/-private/fields/get-field-key.d.ts +0 -8
  350. package/declarations/reactive/-private/fields/managed-array.d.ts +0 -18
  351. package/declarations/reactive/-private/fields/managed-object.d.ts +0 -17
  352. package/declarations/reactive/-private/fields/many-array-manager.d.ts +0 -19
  353. package/declarations/reactive/-private/hooks.d.ts +0 -5
  354. package/declarations/reactive/-private/kind/alias-field.d.ts +0 -4
  355. package/declarations/reactive/-private/kind/array-field.d.ts +0 -4
  356. package/declarations/reactive/-private/kind/attribute-field.d.ts +0 -4
  357. package/declarations/reactive/-private/kind/belongs-to-field.d.ts +0 -4
  358. package/declarations/reactive/-private/kind/collection-field.d.ts +0 -4
  359. package/declarations/reactive/-private/kind/derived-field.d.ts +0 -4
  360. package/declarations/reactive/-private/kind/generic-field.d.ts +0 -4
  361. package/declarations/reactive/-private/kind/has-many-field.d.ts +0 -4
  362. package/declarations/reactive/-private/kind/hash-field.d.ts +0 -4
  363. package/declarations/reactive/-private/kind/identity-field.d.ts +0 -4
  364. package/declarations/reactive/-private/kind/local-field.d.ts +0 -4
  365. package/declarations/reactive/-private/kind/object-field.d.ts +0 -4
  366. package/declarations/reactive/-private/kind/resource-field.d.ts +0 -4
  367. package/declarations/reactive/-private/kind/schema-array-field.d.ts +0 -4
  368. package/declarations/reactive/-private/kind/schema-object-field.d.ts +0 -4
  369. package/declarations/reactive/-private/record.d.ts +0 -83
  370. package/declarations/reactive/-private/schema.d.ts +0 -326
  371. package/declarations/reactive/-private/symbols.d.ts +0 -5
  372. package/declarations/reactive/-private.d.ts +0 -2
  373. package/declarations/reactive.d.ts +0 -286
  374. package/declarations/request/-private/context.d.ts +0 -39
  375. package/declarations/request/-private/debug.d.ts +0 -4
  376. package/declarations/request/-private/fetch.d.ts +0 -33
  377. package/declarations/request/-private/future.d.ts +0 -7
  378. package/declarations/request/-private/manager.d.ts +0 -158
  379. package/declarations/request/-private/promise-cache.d.ts +0 -28
  380. package/declarations/request/-private/types.d.ts +0 -234
  381. package/declarations/request/-private/utils.d.ts +0 -57
  382. package/declarations/request.d.ts +0 -52
  383. package/declarations/signals/-leaked.d.ts +0 -2
  384. package/declarations/signals/-private.d.ts +0 -6
  385. package/declarations/signals/promise-state.d.ts +0 -264
  386. package/declarations/signals/reactivity/configure.d.ts +0 -138
  387. package/declarations/signals/reactivity/internal.d.ts +0 -154
  388. package/declarations/signals/reactivity/signal.d.ts +0 -56
  389. package/declarations/signals/request-state.d.ts +0 -372
  390. package/declarations/signals/request-subscription.d.ts +0 -177
  391. package/declarations/store/-private/cache-handler/handler.d.ts +0 -56
  392. package/declarations/store/-private/cache-handler/types.d.ts +0 -84
  393. package/declarations/store/-private/cache-handler/utils.d.ts +0 -31
  394. package/declarations/store/-private/caches/instance-cache.d.ts +0 -58
  395. package/declarations/store/-private/caches/resource-utils.d.ts +0 -9
  396. package/declarations/store/-private/debug/utils.d.ts +0 -7
  397. package/declarations/store/-private/default-cache-policy.d.ts +0 -387
  398. package/declarations/store/-private/managers/cache-capabilities-manager.d.ts +0 -34
  399. package/declarations/store/-private/managers/cache-key-manager.d.ts +0 -304
  400. package/declarations/store/-private/managers/cache-manager.d.ts +0 -367
  401. package/declarations/store/-private/managers/notification-manager.d.ts +0 -83
  402. package/declarations/store/-private/managers/record-array-manager.d.ts +0 -100
  403. package/declarations/store/-private/network/request-cache.d.ts +0 -103
  404. package/declarations/store/-private/record-arrays/-utils.d.ts +0 -80
  405. package/declarations/store/-private/record-arrays/legacy-live-array.d.ts +0 -81
  406. package/declarations/store/-private/record-arrays/legacy-many-array.d.ts +0 -133
  407. package/declarations/store/-private/record-arrays/legacy-query.d.ts +0 -81
  408. package/declarations/store/-private/record-arrays/native-proxy-type-fix.d.ts +0 -3
  409. package/declarations/store/-private/record-arrays/resource-array.d.ts +0 -67
  410. package/declarations/store/-private/store-service.d.ts +0 -874
  411. package/declarations/store/-private/utils/coerce-id.d.ts +0 -4
  412. package/declarations/store/-private/utils/construct-resource.d.ts +0 -6
  413. package/declarations/store/-private/utils/is-non-empty-string.d.ts +0 -1
  414. package/declarations/store/-private/utils/normalize-model-name.d.ts +0 -1
  415. package/declarations/store/-private/utils/uuid-polyfill.d.ts +0 -1
  416. package/declarations/store/-private.d.ts +0 -24
  417. package/declarations/store/-types/q/cache-capabilities-manager.d.ts +0 -90
  418. package/declarations/store/-types/q/identifier.d.ts +0 -23
  419. package/declarations/store/-types/q/record-instance.d.ts +0 -22
  420. package/declarations/store/-types/q/store.d.ts +0 -31
  421. package/declarations/store/deprecated/-private.d.ts +0 -223
  422. package/declarations/store/deprecated/store.d.ts +0 -784
  423. package/declarations/store.d.ts +0 -2
  424. package/declarations/types/-private.d.ts +0 -22
  425. package/declarations/types/cache/aliases.d.ts +0 -1
  426. package/declarations/types/cache/change.d.ts +0 -6
  427. package/declarations/types/cache/mutations.d.ts +0 -38
  428. package/declarations/types/cache/operations.d.ts +0 -168
  429. package/declarations/types/cache/relationship.d.ts +0 -13
  430. package/declarations/types/cache.d.ts +0 -429
  431. package/declarations/types/graph.d.ts +0 -47
  432. package/declarations/types/identifier.d.ts +0 -86
  433. package/declarations/types/json/raw.d.ts +0 -6
  434. package/declarations/types/params.d.ts +0 -8
  435. package/declarations/types/record.d.ts +0 -269
  436. package/declarations/types/request.d.ts +0 -367
  437. package/declarations/types/runtime.d.ts +0 -14
  438. package/declarations/types/schema/concepts.d.ts +0 -23
  439. package/declarations/types/schema/fields.d.ts +0 -2200
  440. package/declarations/types/schema/fields.type-test.d.ts +0 -1
  441. package/declarations/types/schema/schema-service.d.ts +0 -380
  442. package/declarations/types/spec/document.d.ts +0 -67
  443. package/declarations/types/spec/error.d.ts +0 -18
  444. package/declarations/types/spec/json-api-raw.d.ts +0 -139
  445. package/declarations/types/symbols.d.ts +0 -78
  446. package/declarations/types/utils.d.ts +0 -5
  447. package/declarations/types.d.ts +0 -11
  448. package/declarations/utils/string.d.ts +0 -47
  449. package/dist/configure-DPUFCemT.js +0 -1940
  450. package/dist/default-cache-policy-D7_u4YRH.js +0 -572
  451. package/dist/future-BKkJJkj7.js +0 -678
  452. package/dist/index-CQP2NSqg.js +0 -9982
  453. package/dist/symbols-3C1OkYtZ.js +0 -39
  454. package/dist/unpkg/dev/-leaked-Co0EI6Go.js +0 -1939
  455. package/dist/unpkg/dev/-private-sql1_mdx.js +0 -39
  456. package/dist/unpkg/dev/future-DFfOzSoe.js +0 -672
  457. package/dist/unpkg/dev/index-BzcBOnw9.js +0 -9392
  458. package/dist/unpkg/dev/runtime-E1M51_-O.js +0 -135
  459. package/dist/unpkg/dev-deprecated/-leaked-DjMeRqdU.js +0 -1939
  460. package/dist/unpkg/dev-deprecated/-private-3C1OkYtZ.js +0 -39
  461. package/dist/unpkg/dev-deprecated/future-DFfOzSoe.js +0 -672
  462. package/dist/unpkg/dev-deprecated/index-6TnTv-WG.js +0 -10007
  463. package/dist/unpkg/dev-deprecated/runtime-DAu5b0IR.js +0 -135
  464. package/dist/unpkg/prod/-leaked-DUONXQDB.js +0 -1676
  465. package/dist/unpkg/prod/-private-sql1_mdx.js +0 -39
  466. package/dist/unpkg/prod/handler-EU_8ncB2.js +0 -1619
  467. package/dist/unpkg/prod/promise-cache-DIT8Ypjq.js +0 -19
  468. package/dist/unpkg/prod/request-BrJSCG6r.js +0 -421
  469. package/dist/unpkg/prod/schema-BSkHyoWz.js +0 -5219
  470. package/dist/unpkg/prod-deprecated/-leaked-DRNv9VIX.js +0 -1676
  471. package/dist/unpkg/prod-deprecated/-private-3C1OkYtZ.js +0 -39
  472. package/dist/unpkg/prod-deprecated/handler-CCIu4sQ3.js +0 -334
  473. package/dist/unpkg/prod-deprecated/hooks-Dv4Np0MY.js +0 -26
  474. package/dist/unpkg/prod-deprecated/promise-cache-DIT8Ypjq.js +0 -19
  475. package/dist/unpkg/prod-deprecated/request-BrJSCG6r.js +0 -421
  476. package/dist/unpkg/prod-deprecated/schema-CJcjHv0E.js +0 -6939
@@ -1,304 +0,0 @@
1
- import { type PersistedResourceKey, type RequestKey, type ResourceKey } from "../../../types/identifier.js";
2
- import type { RequestInfo } from "../../../types/request.js";
3
- import type { ExistingResourceIdentifierObject, ResourceIdentifierObject } from "../../../types/spec/json-api-raw.js";
4
- import type { ForgetMethod, GenerationMethod, KeyInfo, KeyInfoMethod, ResetMethod, UpdateMethod } from "../../-types/q/identifier.js";
5
- type TypeFromIdentifier<T> = T extends {
6
- type: infer U;
7
- } ? U : string;
8
- type NarrowIdentifierIfPossible<T> = T extends ExistingResourceIdentifierObject ? PersistedResourceKey<TypeFromIdentifier<T>> : ResourceKey;
9
- export declare function isResourceKey(identifier: unknown): identifier is ResourceKey;
10
- export declare function isRequestKey(identifier: unknown): identifier is RequestKey;
11
- interface KeyOptions {
12
- lid: IdentifierMap;
13
- id: IdentifierMap;
14
- }
15
- type TypeMap = {
16
- [key: string]: KeyOptions;
17
- };
18
- type IdentifierMap = Map<string, ResourceKey>;
19
- type StableCache = {
20
- resources: IdentifierMap;
21
- documents: Map<string, RequestKey>;
22
- resourcesByType: TypeMap;
23
- polymorphicLidBackMap: Map<string, string[]>;
24
- };
25
- export type MergeMethod = (targetIdentifier: ResourceKey, matchedIdentifier: ResourceKey, resourceData: unknown) => ResourceKey;
26
- /**
27
- Configures how unique identifier lid strings are generated by @ember-data/store.
28
-
29
- This configuration MUST occur prior to the store instance being created.
30
-
31
- Takes a method which can expect to receive various data as its first argument
32
- and the name of a bucket as its second argument.
33
-
34
- Currently there are two buckets, 'record' and 'document'.
35
-
36
- ### Resource (`Record`) Identity
37
-
38
- If the bucket is `record` the method must return a unique (to at-least
39
- the given bucket) string identifier for the given data as a string to be
40
- used as the `lid` of an `Identifier` token.
41
-
42
- This method will only be called by either `getOrCreateRecordIdentifier` or
43
- `createIdentifierForNewRecord` when an identifier for the supplied data
44
- is not already known via `lid` or `type + id` combo and one needs to be
45
- generated or retrieved from a proprietary cache.
46
-
47
- `data` will be the same data argument provided to `getOrCreateRecordIdentifier`
48
- and in the `createIdentifierForNewRecord` case will be an object with
49
- only `type` as a key.
50
-
51
- ```ts
52
- import { setIdentifierGenerationMethod } from '@warp-drive/core';
53
-
54
- export function initialize(applicationInstance) {
55
- // note how `count` here is now scoped to the application instance
56
- // for our generation method by being inside the closure provided
57
- // by the initialize function
58
- let count = 0;
59
-
60
- setIdentifierGenerationMethod((resource, bucket) => {
61
- return resource.lid || `my-key-${count++}`;
62
- });
63
- }
64
-
65
- export default {
66
- name: 'configure-ember-data-identifiers',
67
- initialize
68
- };
69
- ```
70
-
71
- ### Document Identity
72
-
73
- If the bucket is `document` the method will receive the associated
74
- immutable `request` passed to `store.request` as its first argument
75
- and should return a unique string for the given request if the document
76
- should be cached, and `null` if it should not be cached.
77
-
78
- Note, the request result will still be passed to the cache via `Cache.put`,
79
- but caches should take this as a signal that the document should not itself
80
- be cached, while its contents may still be used to update other cache state.
81
-
82
- The presence of `cacheOptions.key` on the request will take precedence
83
- for the document cache key, and this method will not be called if it is
84
- present.
85
-
86
- The default method implementation for this bucket is to return `null`
87
- for all requests whose method is not `GET`, and to return the `url` for
88
- those where it is.
89
-
90
- This means that queries via `POST` MUST provide `cacheOptions.key` or
91
- implement this hook.
92
-
93
- ⚠️ Caution: Requests that do not have a `method` assigned are assumed to be `GET`
94
-
95
- @public
96
- */
97
- export declare function setIdentifierGenerationMethod(method: GenerationMethod | null): void;
98
- /**
99
- Configure a callback for when the identifier cache encounters new resource
100
- data for an existing resource.
101
-
102
- This configuration MUST occur prior to the store instance being created.
103
-
104
- ```js
105
- import { setIdentifierUpdateMethod } from '@warp-drive/core';
106
- ```
107
-
108
- Takes a method which can expect to receive an existing `Identifier` alongside
109
- some new data to consider as a second argument. This is an opportunity
110
- for secondary lookup tables and caches associated with the identifier
111
- to be amended.
112
-
113
- This method is called everytime `updateRecordIdentifier` is called and
114
- with the same arguments. It provides the opportunity to update secondary
115
- lookup tables for existing identifiers.
116
-
117
- It will always be called after an identifier created with `createIdentifierForNewRecord`
118
- has been committed, or after an update to the `record` a `RecordIdentifier`
119
- is assigned to has been committed. Committed here meaning that the server
120
- has acknowledged the update (for instance after a call to `.save()`)
121
-
122
- If `id` has not previously existed, it will be assigned to the `Identifier`
123
- prior to this `UpdateMethod` being called; however, calls to the parent method
124
- `updateRecordIdentifier` that attempt to change the `id` or calling update
125
- without providing an `id` when one is missing will throw an error.
126
-
127
- @public
128
- */
129
- export declare function setIdentifierUpdateMethod(method: UpdateMethod | null): void;
130
- /**
131
- Configure a callback for when the identifier cache is going to release an identifier.
132
-
133
- This configuration MUST occur prior to the store instance being created.
134
-
135
- ```js
136
- import { setIdentifierForgetMethod } from '@warp-drive/core';
137
- ```
138
-
139
- Takes method which can expect to receive an existing `Identifier` that should be eliminated
140
- from any secondary lookup tables or caches that the user has populated for it.
141
-
142
- @public
143
- */
144
- export declare function setIdentifierForgetMethod(method: ForgetMethod | null): void;
145
- /**
146
- Configure a callback for when the identifier cache is being torn down.
147
-
148
- This configuration MUST occur prior to the store instance being created.
149
-
150
- ```js
151
- import { setIdentifierResetMethod } from '@warp-drive/core';
152
- ```
153
-
154
- Takes a method which can expect to be called when the parent application is destroyed.
155
-
156
- If you have properly used a WeakMap to encapsulate the state of your customization
157
- to the application instance, you may not need to implement the `resetMethod`.
158
-
159
- @public
160
- */
161
- export declare function setIdentifierResetMethod(method: ResetMethod | null): void;
162
- /**
163
- Configure a callback for when the identifier cache is generating a new
164
- ResourceKey for a resource.
165
-
166
- This method controls the `type` and `id` that will be assigned to the
167
- `ResourceKey` that is created.
168
-
169
- This configuration MUST occur prior to the store instance being created.
170
-
171
- ```js
172
- import { setKeyInfoForResource } from '@warp-drive/core';
173
- ```
174
-
175
- @public
176
- */
177
- export declare function setKeyInfoForResource(method: KeyInfoMethod | null): void;
178
- /**
179
- * Each instance of {@link Store} receives a unique instance of a CacheKeyManager.
180
- *
181
- * This cache is responsible for assigning or retrieving the unique identify
182
- * for arbitrary resource data encountered by the store. Data representing
183
- * a unique resource or record should always be represented by the same
184
- * identifier.
185
- *
186
- * It can be configured by consuming applications.
187
- *
188
- * @hideconstructor
189
- * @public
190
- */
191
- export declare class CacheKeyManager {
192
- constructor();
193
- /**
194
- * allows us to peek without generating when needed
195
- * useful for the "create" case when we need to see if
196
- * we are accidentally overwritting something
197
- *
198
- * @private
199
- */
200
- peekResourceKey(resource: ResourceIdentifierObject): ResourceKey | undefined;
201
- /**
202
- * Peeks the {@link RequestKey} for the given {@link RequestInfo}, but will not
203
- * create one if none has been previously generated.
204
- *
205
- * @public
206
- */
207
- peekRequestKey(request: RequestInfo): RequestKey | null;
208
- /**
209
- * Returns the {@link RequestKey} for the given {@link RequestInfo} if the request is
210
- * considered cacheable. For cacheable requests, this method will create
211
- * a RequestKey if none is found.
212
- *
213
- * A `null` response indicates the request cannot/will not be cached,
214
- * generally this means either
215
- *
216
- * - {@link RequestInfo.cacheOptions.key} is not present on the `RequestInfo`
217
- * - the request's method is `GET` but it has no `url`
218
- *
219
- * Generally you should not seek to cache requests that are not idempotent
220
- * or have side effects, such as mutations that create, update or delete
221
- * a resource.
222
- *
223
- * @public
224
- */
225
- getOrCreateDocumentIdentifier(request: RequestInfo): RequestKey | null;
226
- /**
227
- Returns the {@link ResourceKey} for the given Resource, creates one if it does not yet exist.
228
-
229
- Specifically this means that we:
230
-
231
- - validate the `id` `type` and `lid` combo against known identifiers
232
- - return an object with an `lid` that is stable (repeated calls with the same
233
- `id` + `type` or `lid` will return the same `lid` value)
234
- - this referential stability of the object itself is guaranteed
235
-
236
- @public
237
- */
238
- getOrCreateRecordIdentifier<T>(resource: T): NarrowIdentifierIfPossible<T>;
239
- /**
240
- Returns a new Identifier for the supplied data. Call this method to generate
241
- an identifier when a new resource is being created local to the client and
242
- potentially does not have an `id`.
243
-
244
- Delegates generation to the user supplied `GenerateMethod` if one has been provided
245
- with the signature `generateMethod({ type }, 'record')`.
246
-
247
- @public
248
- */
249
- createIdentifierForNewRecord(data: {
250
- type: string;
251
- id?: string | null;
252
- lid?: string;
253
- }): ResourceKey;
254
- /**
255
- Provides the opportunity to update secondary lookup tables for existing identifiers
256
- Called after an identifier created with `createIdentifierForNewRecord` has been
257
- committed.
258
-
259
- Assigned `id` to an `Identifier` if `id` has not previously existed; however,
260
- attempting to change the `id` or calling update without providing an `id` when
261
- one is missing will throw an error.
262
-
263
- - sets `id` (if `id` was previously `null`)
264
- - `lid` and `type` MUST NOT be altered post creation
265
-
266
- If a merge occurs, it is possible the returned identifier does not match the originally
267
- provided identifier. In this case the abandoned identifier will go through the usual
268
- `forgetRecordIdentifier` codepaths.
269
-
270
- @public
271
- */
272
- updateRecordIdentifier(identifierObject: ResourceKey, data: unknown): ResourceKey;
273
- /**
274
- Provides the opportunity to eliminate an identifier from secondary lookup tables
275
- as well as eliminates it from ember-data's own lookup tables and book keeping.
276
-
277
- Useful when a record has been deleted and the deletion has been persisted and
278
- we do not care about the record anymore. Especially useful when an `id` of a
279
- deleted record might be reused later for a new record.
280
-
281
- @public
282
- */
283
- forgetRecordIdentifier(identifierObject: ResourceKey): void;
284
- }
285
- /**
286
- * This type exists for internal use only for
287
- * where intimate contracts still exist either for
288
- * the Test Suite or for Legacy code.
289
- *
290
- * @private
291
- */
292
- export interface PrivateCacheKeyManager extends CacheKeyManager {
293
- _cache: StableCache;
294
- /**
295
- * Internal hook to allow management of merge conflicts with identifiers.
296
- *
297
- * we allow late binding of this private internal merge so that
298
- * the cache can insert itself here to handle elimination of duplicates
299
- */
300
- __configureMerge(method: MergeMethod | null): void;
301
- _mergeRecordIdentifiers(keyInfo: KeyInfo, identifier: ResourceKey, existingIdentifier: ResourceKey, data: unknown): ResourceKey;
302
- destroy(): void;
303
- }
304
- export {};
@@ -1,367 +0,0 @@
1
- import type { Cache, ChangedAttributesHash, RelationshipDiff } from "../../../types/cache.js";
2
- import type { Change } from "../../../types/cache/change.js";
3
- import type { Operation } from "../../../types/cache/operations.js";
4
- import type { CollectionRelationship, ResourceRelationship } from "../../../types/cache/relationship.js";
5
- import type { LocalRelationshipOperation } from "../../../types/graph.js";
6
- import type { RequestKey, ResourceKey } from "../../../types/identifier.js";
7
- import type { Value } from "../../../types/json/raw.js";
8
- import type { StructuredDataDocument, StructuredDocument } from "../../../types/request.js";
9
- import type { CollectionResourceDataDocument, ResourceDocument, SingleResourceDataDocument } from "../../../types/spec/document.js";
10
- import type { ApiError } from "../../../types/spec/error.js";
11
- import type { StoreRequestContext } from "../cache-handler/handler.js";
12
- /**
13
- * The CacheManager wraps a Cache enforcing that only
14
- * the public API surface area is exposed.
15
- *
16
- * Hence, it is the value of `Store.cache`, wrapping
17
- * the cache instance returned by `Store.createCache`.
18
- *
19
- * It handles translating between cache versions when
20
- * necessary, for instance when a Store is configured
21
- * to use both a v1 and a v2 cache depending on some
22
- * heuristic.
23
- *
24
- * Starting with the v2 spec, the cache is designed such
25
- * that it must be implemented as a singleton.
26
- *
27
- * @class CacheManager
28
- * @public
29
- */
30
- export declare class CacheManager implements Cache {
31
- version: "2";
32
- constructor(cache: Cache);
33
- /**
34
- * Cache the response to a request
35
- *
36
- * Unlike `store.push` which has UPSERT
37
- * semantics, `put` has `replace` semantics similar to
38
- * the `http` method `PUT`
39
- *
40
- * the individually cacheable
41
- * e resource data it may contain
42
- * should upsert, but the document data surrounding it should
43
- * fully replace any existing information
44
- *
45
- * Note that in order to support inserting arbitrary data
46
- * to the cache that did not originate from a request `put`
47
- * should expect to sometimes encounter a document with only
48
- * a `content` member and therefor must not assume the existence
49
- * of `request` and `response` on the document.
50
- *
51
- * @public
52
- */
53
- put<T>(doc: StructuredDocument<T> | {
54
- content: T;
55
- }): ResourceDocument;
56
- /**
57
- * Perform an operation on the cache to update the remote state.
58
- *
59
- * @public
60
- * @param op the operation to perform
61
- */
62
- patch(op: Operation | Operation[]): void;
63
- /**
64
- * Update resource data with a local mutation. Currently supports operations
65
- * on relationships only.
66
- *
67
- * @public
68
- */
69
- mutate(mutation: LocalRelationshipOperation): void;
70
- /**
71
- * Peek resource data from the Cache.
72
- *
73
- * In development, if the return value
74
- * is JSON the return value
75
- * will be deep-cloned and deep-frozen
76
- * to prevent mutation thereby enforcing cache
77
- * Immutability.
78
- *
79
- * This form of peek is useful for implementations
80
- * that want to feed raw-data from cache to the UI
81
- * or which want to interact with a blob of data
82
- * directly from the presentation cache.
83
- *
84
- * An implementation might want to do this because
85
- * de-referencing records which read from their own
86
- * blob is generally safer because the record does
87
- * not require retaining connections to the Store
88
- * and Cache to present data on a per-field basis.
89
- *
90
- * This generally takes the place of `getAttr` as
91
- * an API and may even take the place of `getRelationship`
92
- * depending on implementation specifics, though this
93
- * latter usage is less recommended due to the advantages
94
- * of the Graph handling necessary entanglements and
95
- * notifications for relational data.
96
- *
97
- * @public
98
- * @return the known resource data
99
- */
100
- peek(cacheKey: ResourceKey): unknown;
101
- peek(cacheKey: RequestKey): ResourceDocument | null;
102
- peekRemoteState(cacheKey: ResourceKey): unknown;
103
- peekRemoteState(cacheKey: RequestKey): ResourceDocument | null;
104
- /**
105
- * Peek the Cache for the existing request data associated with
106
- * a cacheable request
107
- *
108
- * @public
109
- */
110
- peekRequest(key: RequestKey): StructuredDocument<ResourceDocument> | null;
111
- /**
112
- * Push resource data from a remote source into the cache for this ResourceKey
113
- *
114
- * @public
115
- * @return if `hasRecord` is true then calculated key changes should be returned
116
- */
117
- upsert(key: ResourceKey, data: unknown, hasRecord: boolean): void | string[];
118
- /**
119
- * Create a fork of the cache from the current state.
120
- *
121
- * Applications should typically not call this method themselves,
122
- * preferring instead to fork at the Store level, which will
123
- * utilize this method to fork the cache.
124
- *
125
- * @public
126
- */
127
- fork(): Promise<Cache>;
128
- /**
129
- * Merge a fork back into a parent Cache.
130
- *
131
- * Applications should typically not call this method themselves,
132
- * preferring instead to merge at the Store level, which will
133
- * utilize this method to merge the caches.
134
- *
135
- * @public
136
- */
137
- merge(cache: Cache): Promise<void>;
138
- /**
139
- * Generate the list of changes applied to all
140
- * record in the store.
141
- *
142
- * Each individual resource or document that has
143
- * been mutated should be described as an individual
144
- * `Change` entry in the returned array.
145
- *
146
- * A `Change` is described by an object containing up to
147
- * three properties: (1) the `ResourceKey` of the entity that
148
- * changed; (2) the `op` code of that change being one of
149
- * `upsert` or `remove`, and if the op is `upsert` a `patch`
150
- * containing the data to merge into the cache for the given
151
- * entity.
152
- *
153
- * This `patch` is opaque to the Store but should be understood
154
- * by the Cache and may expect to be utilized by an Adapter
155
- * when generating data during a `save` operation.
156
- *
157
- * It is generally recommended that the `patch` contain only
158
- * the updated state, ignoring fields that are unchanged
159
- *
160
- * ```ts
161
- * interface Change {
162
- * key: ResourceKey | RequestKey;
163
- * op: 'upsert' | 'remove';
164
- * patch?: unknown;
165
- * }
166
- * ```
167
- *
168
- * @public
169
- */
170
- diff(): Promise<Change[]>;
171
- /**
172
- * Serialize the entire contents of the Cache into a Stream
173
- * which may be fed back into a new instance of the same Cache
174
- * via `cache.hydrate`.
175
- *
176
- * @public
177
- */
178
- dump(): Promise<ReadableStream<unknown>>;
179
- /**
180
- * hydrate a Cache from a Stream with content previously serialized
181
- * from another instance of the same Cache, resolving when hydration
182
- * is complete.
183
- *
184
- * This method should expect to be called both in the context of restoring
185
- * the Cache during application rehydration after SSR **AND** at unknown
186
- * times during the lifetime of an already booted application when it is
187
- * desired to bulk-load additional information into the cache. This latter
188
- * behavior supports optimizing pre/fetching of data for route transitions
189
- * via data-only SSR modes.
190
- *
191
- * @public
192
- */
193
- hydrate(stream: ReadableStream<unknown>): Promise<void>;
194
- /**
195
- * [LIFECYCLE] Signal to the cache that a new record has been instantiated on the client
196
- *
197
- * It returns properties from options that should be set on the record during the create
198
- * process. This return value behavior is deprecated.
199
- *
200
- * @public
201
- */
202
- clientDidCreate(key: ResourceKey, options?: Record<string, unknown>): Record<string, unknown>;
203
- /**
204
- * [LIFECYCLE] Signals to the cache that a resource
205
- * will be part of a save transaction.
206
- *
207
- * @public
208
- * @param key
209
- */
210
- willCommit(key: ResourceKey | ResourceKey[], context: StoreRequestContext): void;
211
- /**
212
- * [LIFECYCLE] Signals to the cache that a resource
213
- * was successfully updated as part of a save transaction.
214
- *
215
- * @public
216
- */
217
- didCommit(key: ResourceKey, result: StructuredDataDocument<SingleResourceDataDocument> | null): SingleResourceDataDocument;
218
- didCommit(key: ResourceKey[], result: StructuredDataDocument<SingleResourceDataDocument> | null): SingleResourceDataDocument;
219
- didCommit(key: ResourceKey[], result: StructuredDataDocument<CollectionResourceDataDocument> | null): CollectionResourceDataDocument;
220
- /**
221
- * [LIFECYCLE] Signals to the cache that a resource
222
- * was update via a save transaction failed.
223
- *
224
- * @public
225
- */
226
- commitWasRejected(key: ResourceKey | ResourceKey[], errors?: ApiError[]): void;
227
- /**
228
- * [LIFECYCLE] Signals to the cache that all data for a resource
229
- * should be cleared.
230
- *
231
- * @public
232
- */
233
- unloadRecord(key: ResourceKey): void;
234
- /**
235
- * Retrieve the data for an attribute from the cache
236
- *
237
- * @public
238
- */
239
- getAttr(key: ResourceKey, propertyName: string): Value | undefined;
240
- /**
241
- * Retrieve the remote state for an attribute from the cache
242
- *
243
- * @public
244
- */
245
- getRemoteAttr(key: ResourceKey, propertyName: string): Value | undefined;
246
- /**
247
- * Mutate the data for an attribute in the cache
248
- *
249
- * @public
250
- */
251
- setAttr(key: ResourceKey, propertyName: string, value: Value): void;
252
- /**
253
- * Query the cache for the changed attributes of a resource.
254
- *
255
- * @public
256
- */
257
- changedAttrs(key: ResourceKey): ChangedAttributesHash;
258
- /**
259
- * Query the cache for whether any mutated attributes exist
260
- *
261
- * @public
262
- */
263
- hasChangedAttrs(key: ResourceKey): boolean;
264
- /**
265
- * Tell the cache to discard any uncommitted mutations to attributes
266
- *
267
- * @public
268
- * @return the names of attributes that were restored
269
- */
270
- rollbackAttrs(key: ResourceKey): string[];
271
- /**
272
- * Query the cache for the changes to relationships of a resource.
273
- *
274
- * Returns a map of relationship names to RelationshipDiff objects.
275
- *
276
- * ```ts
277
- * type RelationshipDiff =
278
- | {
279
- kind: 'collection';
280
- remoteState: ResourceKey[];
281
- additions: Set<ResourceKey>;
282
- removals: Set<ResourceKey>;
283
- localState: ResourceKey[];
284
- reordered: boolean;
285
- }
286
- | {
287
- kind: 'resource';
288
- remoteState: ResourceKey | null;
289
- localState: ResourceKey | null;
290
- };
291
- ```
292
- *
293
- * @public
294
- */
295
- changedRelationships(key: ResourceKey): Map<string, RelationshipDiff>;
296
- /**
297
- * Query the cache for whether any mutated attributes exist
298
- *
299
- * @public
300
- */
301
- hasChangedRelationships(key: ResourceKey): boolean;
302
- /**
303
- * Tell the cache to discard any uncommitted mutations to relationships.
304
- *
305
- * This will also discard the change on any appropriate inverses.
306
- *
307
- * This method is a candidate to become a mutation
308
- *
309
- * @public
310
- * @return the names of relationships that were restored
311
- */
312
- rollbackRelationships(key: ResourceKey): string[];
313
- /**
314
- * Query the cache for the current state of a relationship property
315
- *
316
- * @public
317
- * @return resource relationship object
318
- */
319
- getRelationship(key: ResourceKey, propertyName: string): ResourceRelationship | CollectionRelationship;
320
- /**
321
- * Query the cache for the remote state of a relationship property
322
- *
323
- * @public
324
- * @return resource relationship object
325
- */
326
- getRemoteRelationship(key: ResourceKey, propertyName: string): ResourceRelationship | CollectionRelationship;
327
- /**
328
- * Update the cache state for the given resource to be marked as locally deleted,
329
- * or remove such a mark.
330
- *
331
- * @public
332
- */
333
- setIsDeleted(key: ResourceKey, isDeleted: boolean): void;
334
- /**
335
- * Query the cache for any validation errors applicable to the given resource.
336
- *
337
- * @public
338
- */
339
- getErrors(key: ResourceKey): ApiError[];
340
- /**
341
- * Query the cache for whether a given resource has any available data
342
- *
343
- * @public
344
- */
345
- isEmpty(key: ResourceKey): boolean;
346
- /**
347
- * Query the cache for whether a given resource was created locally and not
348
- * yet persisted.
349
- *
350
- * @public
351
- */
352
- isNew(key: ResourceKey): boolean;
353
- /**
354
- * Query the cache for whether a given resource is marked as deleted (but not
355
- * necessarily persisted yet).
356
- *
357
- * @public
358
- */
359
- isDeleted(key: ResourceKey): boolean;
360
- /**
361
- * Query the cache for whether a given resource has been deleted and that deletion
362
- * has also been persisted.
363
- *
364
- * @public
365
- */
366
- isDeletionCommitted(key: ResourceKey): boolean;
367
- }