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

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 (436) hide show
  1. package/declarations/aliases-BWYW5EhX.d.ts +17 -0
  2. package/declarations/aliases-BWYW5EhX.d.ts.map +1 -0
  3. package/declarations/build-config/babel-macros.d.ts +2 -1
  4. package/declarations/build-config/canary-features.d.ts +1 -1
  5. package/declarations/build-config/debugging.d.ts +1 -1
  6. package/declarations/build-config/deprecations.d.ts +1 -1
  7. package/declarations/build-config/env.d.ts +2 -1
  8. package/declarations/build-config/macros.d.ts +2 -1
  9. package/declarations/build-config.d.ts +2 -18
  10. package/declarations/change-C7kqv2kW.d.ts +41 -0
  11. package/declarations/change-C7kqv2kW.d.ts.map +1 -0
  12. package/declarations/concepts-LHsLJZMl.d.ts +77 -0
  13. package/declarations/concepts-LHsLJZMl.d.ts.map +1 -0
  14. package/declarations/configure-B_F639tN.d.ts +134 -0
  15. package/declarations/configure-B_F639tN.d.ts.map +1 -0
  16. package/declarations/configure.d.ts +2 -7
  17. package/declarations/document-BEn91SwT.d.ts +129 -0
  18. package/declarations/document-BEn91SwT.d.ts.map +1 -0
  19. package/declarations/error-50OSEhsF.d.ts +77 -0
  20. package/declarations/error-50OSEhsF.d.ts.map +1 -0
  21. package/declarations/fields-FM7peCiM.d.ts +2327 -0
  22. package/declarations/fields-FM7peCiM.d.ts.map +1 -0
  23. package/declarations/graph/-private.d.ts +2 -13
  24. package/declarations/graph-DLqYXP2z.d.ts +186 -0
  25. package/declarations/graph-DLqYXP2z.d.ts.map +1 -0
  26. package/declarations/identifier-DQnqOSJK.d.ts +112 -0
  27. package/declarations/identifier-DQnqOSJK.d.ts.map +1 -0
  28. package/declarations/index.d.ts +2 -96
  29. package/declarations/internal-Cz-893zD.d.ts +8690 -0
  30. package/declarations/internal-Cz-893zD.d.ts.map +1 -0
  31. package/declarations/json-api-raw-C5APJHHB.d.ts +378 -0
  32. package/declarations/json-api-raw-C5APJHHB.d.ts.map +1 -0
  33. package/declarations/mutations-CqtoGB4t.d.ts +165 -0
  34. package/declarations/mutations-CqtoGB4t.d.ts.map +1 -0
  35. package/declarations/operations-D1qA6r0_.d.ts +244 -0
  36. package/declarations/operations-D1qA6r0_.d.ts.map +1 -0
  37. package/declarations/params-DrEx3bf8.d.ts +41 -0
  38. package/declarations/params-DrEx3bf8.d.ts.map +1 -0
  39. package/declarations/raw-D5hnjiq7.d.ts +31 -0
  40. package/declarations/raw-D5hnjiq7.d.ts.map +1 -0
  41. package/declarations/reactive/-private.d.ts +2 -2
  42. package/declarations/reactive.d.ts +2 -286
  43. package/declarations/record-D3QQcaIR.d.ts +254 -0
  44. package/declarations/record-D3QQcaIR.d.ts.map +1 -0
  45. package/declarations/relationship-CmHzMPKf.d.ts +65 -0
  46. package/declarations/relationship-CmHzMPKf.d.ts.map +1 -0
  47. package/declarations/request.d.ts +2 -52
  48. package/declarations/signals/-leaked.d.ts +63 -2
  49. package/declarations/signals/-leaked.d.ts.map +1 -0
  50. package/declarations/store/-private.d.ts +2 -24
  51. package/declarations/store.d.ts +8358 -2
  52. package/declarations/store.d.ts.map +1 -0
  53. package/declarations/symbols-DjRDCeX0.d.ts +88 -0
  54. package/declarations/symbols-DjRDCeX0.d.ts.map +1 -0
  55. package/declarations/types/-private.d.ts +71 -17
  56. package/declarations/types/-private.d.ts.map +1 -0
  57. package/declarations/types/cache/aliases.d.ts +2 -1
  58. package/declarations/types/cache/change.d.ts +2 -6
  59. package/declarations/types/cache/mutations.d.ts +2 -38
  60. package/declarations/types/cache/operations.d.ts +2 -168
  61. package/declarations/types/cache/relationship.d.ts +2 -13
  62. package/declarations/types/cache.d.ts +2 -429
  63. package/declarations/types/graph.d.ts +2 -47
  64. package/declarations/types/identifier.d.ts +2 -86
  65. package/declarations/types/json/raw.d.ts +2 -6
  66. package/declarations/types/params.d.ts +2 -8
  67. package/declarations/types/record.d.ts +2 -269
  68. package/declarations/types/request.d.ts +2 -367
  69. package/declarations/types/runtime.d.ts +53 -12
  70. package/declarations/types/runtime.d.ts.map +1 -0
  71. package/declarations/types/schema/concepts.d.ts +2 -23
  72. package/declarations/types/schema/fields.d.ts +2 -2200
  73. package/declarations/types/schema/fields.type-test.d.ts +1 -1
  74. package/declarations/types/schema/schema-service.d.ts +2 -380
  75. package/declarations/types/spec/document.d.ts +2 -67
  76. package/declarations/types/spec/error.d.ts +2 -18
  77. package/declarations/types/spec/json-api-raw.d.ts +2 -139
  78. package/declarations/types/symbols.d.ts +2 -78
  79. package/declarations/types/utils.d.ts +2 -5
  80. package/declarations/types.d.ts +3 -11
  81. package/declarations/utils/string.d.ts +51 -44
  82. package/declarations/utils/string.d.ts.map +1 -0
  83. package/declarations/utils-BtURiy8l.d.ts +24 -0
  84. package/declarations/utils-BtURiy8l.d.ts.map +1 -0
  85. package/dist/-private-DMzvF_Q6.js +120 -0
  86. package/dist/-private-DMzvF_Q6.js.map +1 -0
  87. package/dist/-private-HjaQ1wp1.js +1695 -0
  88. package/dist/-private-HjaQ1wp1.js.map +1 -0
  89. package/dist/-private-b1g4dhl0.js +22 -0
  90. package/dist/-private-b1g4dhl0.js.map +1 -0
  91. package/dist/build-config/babel-macros.js +3 -1
  92. package/dist/build-config/canary-features.js +1 -1
  93. package/dist/build-config/debugging.js +1 -1
  94. package/dist/build-config/deprecations.js +1 -1
  95. package/dist/build-config/env.js +3 -1
  96. package/dist/build-config/macros.js +3 -1
  97. package/dist/build-config.js +3 -1
  98. package/dist/configure.js +3 -2
  99. package/dist/graph/-private.js +2183 -3192
  100. package/dist/graph/-private.js.map +1 -0
  101. package/dist/index.js +3 -8
  102. package/dist/reactive/-private.js +3 -1
  103. package/dist/reactive.js +5 -4
  104. package/dist/request--vRFALbQ.js +766 -0
  105. package/dist/request--vRFALbQ.js.map +1 -0
  106. package/dist/request.js +2 -48
  107. package/dist/signals/-leaked.js +3 -1
  108. package/dist/src-Dex_phWI.js +9088 -0
  109. package/dist/src-Dex_phWI.js.map +1 -0
  110. package/dist/store/-private.js +3 -1
  111. package/dist/store-DNF9Rgoh.js +462 -0
  112. package/dist/store-DNF9Rgoh.js.map +1 -0
  113. package/dist/store.js +3 -1
  114. package/dist/types/-private.js +1 -77
  115. package/dist/types/identifier.js +60 -52
  116. package/dist/types/identifier.js.map +1 -0
  117. package/dist/types/record.js +211 -181
  118. package/dist/types/record.js.map +1 -0
  119. package/dist/types/request.js +138 -69
  120. package/dist/types/request.js.map +1 -0
  121. package/dist/types/runtime.js +54 -26
  122. package/dist/types/runtime.js.map +1 -0
  123. package/dist/types/schema/fields.js +501 -495
  124. package/dist/types/schema/fields.js.map +1 -0
  125. package/dist/types/schema/fields.type-test.js +79 -0
  126. package/dist/types/schema/fields.type-test.js.map +1 -0
  127. package/dist/types/symbols.js +84 -77
  128. package/dist/types/symbols.js.map +1 -0
  129. package/dist/unpkg/dev/-private-2RfQ2761.js +111 -0
  130. package/dist/unpkg/dev/-private-2RfQ2761.js.map +1 -0
  131. package/dist/unpkg/dev/-private-CM1zxNws.js +1684 -0
  132. package/dist/unpkg/dev/-private-CM1zxNws.js.map +1 -0
  133. package/dist/unpkg/dev/-private-DL4tfrv9.js +22 -0
  134. package/dist/unpkg/dev/-private-DL4tfrv9.js.map +1 -0
  135. package/dist/unpkg/dev/build-config/babel-macros.js +3 -1
  136. package/dist/unpkg/dev/build-config/canary-features.js +1 -1
  137. package/dist/unpkg/dev/build-config/debugging.js +1 -1
  138. package/dist/unpkg/dev/build-config/deprecations.js +1 -1
  139. package/dist/unpkg/dev/build-config/env.js +3 -1
  140. package/dist/unpkg/dev/build-config/macros.js +3 -1
  141. package/dist/unpkg/dev/build-config.js +3 -1
  142. package/dist/unpkg/dev/configure.js +3 -1
  143. package/dist/unpkg/dev/graph/-private.js +1941 -2949
  144. package/dist/unpkg/dev/graph/-private.js.map +1 -0
  145. package/dist/unpkg/dev/index.js +3 -6
  146. package/dist/unpkg/dev/reactive/-private.js +3 -1
  147. package/dist/unpkg/dev/reactive.js +5 -3
  148. package/dist/unpkg/dev/request-DAuXbfYi.js +756 -0
  149. package/dist/unpkg/dev/request-DAuXbfYi.js.map +1 -0
  150. package/dist/unpkg/dev/request.js +2 -48
  151. package/dist/unpkg/dev/runtime-EoVKAhTv.js +110 -0
  152. package/dist/unpkg/dev/runtime-EoVKAhTv.js.map +1 -0
  153. package/dist/unpkg/dev/signals/-leaked.js +3 -1
  154. package/dist/unpkg/dev/src-Bxlr_vue.js +8192 -0
  155. package/dist/unpkg/dev/src-Bxlr_vue.js.map +1 -0
  156. package/dist/unpkg/dev/store/-private.js +3 -55
  157. package/dist/unpkg/dev/store-DmiFvT1B.js +427 -0
  158. package/dist/unpkg/dev/store-DmiFvT1B.js.map +1 -0
  159. package/dist/unpkg/dev/store.js +1 -556
  160. package/dist/unpkg/dev/types/-private.js +1 -67
  161. package/dist/unpkg/dev/types/identifier.js +63 -56
  162. package/dist/unpkg/dev/types/identifier.js.map +1 -0
  163. package/dist/unpkg/dev/types/record.js +211 -181
  164. package/dist/unpkg/dev/types/record.js.map +1 -0
  165. package/dist/unpkg/dev/types/request.js +138 -69
  166. package/dist/unpkg/dev/types/request.js.map +1 -0
  167. package/dist/unpkg/dev/types/runtime.js +54 -26
  168. package/dist/unpkg/dev/types/runtime.js.map +1 -0
  169. package/dist/unpkg/dev/types/schema/fields.js +501 -495
  170. package/dist/unpkg/dev/types/schema/fields.js.map +1 -0
  171. package/dist/unpkg/dev/types/schema/fields.type-test.js +79 -0
  172. package/dist/unpkg/dev/types/schema/fields.type-test.js.map +1 -0
  173. package/dist/unpkg/dev/types/symbols.js +84 -77
  174. package/dist/unpkg/dev/types/symbols.js.map +1 -0
  175. package/dist/unpkg/dev/utils/string.js +79 -85
  176. package/dist/unpkg/dev/utils/string.js.map +1 -0
  177. package/dist/unpkg/dev-deprecated/-private-2RfQ2761.js +111 -0
  178. package/dist/unpkg/dev-deprecated/-private-2RfQ2761.js.map +1 -0
  179. package/dist/unpkg/dev-deprecated/-private-CM1zxNws.js +1684 -0
  180. package/dist/unpkg/dev-deprecated/-private-CM1zxNws.js.map +1 -0
  181. package/dist/unpkg/dev-deprecated/-private-DL4tfrv9.js +22 -0
  182. package/dist/unpkg/dev-deprecated/-private-DL4tfrv9.js.map +1 -0
  183. package/dist/unpkg/dev-deprecated/build-config/babel-macros.js +3 -1
  184. package/dist/unpkg/dev-deprecated/build-config/canary-features.js +1 -1
  185. package/dist/unpkg/dev-deprecated/build-config/debugging.js +1 -1
  186. package/dist/unpkg/dev-deprecated/build-config/deprecations.js +1 -1
  187. package/dist/unpkg/dev-deprecated/build-config/env.js +3 -1
  188. package/dist/unpkg/dev-deprecated/build-config/macros.js +3 -1
  189. package/dist/unpkg/dev-deprecated/build-config.js +3 -1
  190. package/dist/unpkg/dev-deprecated/configure.js +3 -1
  191. package/dist/unpkg/dev-deprecated/graph/-private.js +2060 -3143
  192. package/dist/unpkg/dev-deprecated/graph/-private.js.map +1 -0
  193. package/dist/unpkg/dev-deprecated/index.js +3 -5
  194. package/dist/unpkg/dev-deprecated/reactive/-private.js +3 -1
  195. package/dist/unpkg/dev-deprecated/reactive.js +5 -3
  196. package/dist/unpkg/dev-deprecated/request-DAuXbfYi.js +756 -0
  197. package/dist/unpkg/dev-deprecated/request-DAuXbfYi.js.map +1 -0
  198. package/dist/unpkg/dev-deprecated/request.js +2 -48
  199. package/dist/unpkg/dev-deprecated/runtime-BacZMq1r.js +110 -0
  200. package/dist/unpkg/dev-deprecated/runtime-BacZMq1r.js.map +1 -0
  201. package/dist/unpkg/dev-deprecated/signals/-leaked.js +3 -1
  202. package/dist/unpkg/dev-deprecated/src-DEl2Ca3T.js +8745 -0
  203. package/dist/unpkg/dev-deprecated/src-DEl2Ca3T.js.map +1 -0
  204. package/dist/unpkg/dev-deprecated/store/-private.js +3 -1
  205. package/dist/unpkg/dev-deprecated/store-TcP2H4Af.js +427 -0
  206. package/dist/unpkg/dev-deprecated/store-TcP2H4Af.js.map +1 -0
  207. package/dist/unpkg/dev-deprecated/store.js +1 -556
  208. package/dist/unpkg/dev-deprecated/types/-private.js +1 -67
  209. package/dist/unpkg/dev-deprecated/types/identifier.js +63 -56
  210. package/dist/unpkg/dev-deprecated/types/identifier.js.map +1 -0
  211. package/dist/unpkg/dev-deprecated/types/record.js +211 -181
  212. package/dist/unpkg/dev-deprecated/types/record.js.map +1 -0
  213. package/dist/unpkg/dev-deprecated/types/request.js +138 -69
  214. package/dist/unpkg/dev-deprecated/types/request.js.map +1 -0
  215. package/dist/unpkg/dev-deprecated/types/runtime.js +54 -26
  216. package/dist/unpkg/dev-deprecated/types/runtime.js.map +1 -0
  217. package/dist/unpkg/dev-deprecated/types/schema/fields.js +501 -495
  218. package/dist/unpkg/dev-deprecated/types/schema/fields.js.map +1 -0
  219. package/dist/unpkg/dev-deprecated/types/schema/fields.type-test.js +79 -0
  220. package/dist/unpkg/dev-deprecated/types/schema/fields.type-test.js.map +1 -0
  221. package/dist/unpkg/dev-deprecated/types/symbols.js +84 -77
  222. package/dist/unpkg/dev-deprecated/types/symbols.js.map +1 -0
  223. package/dist/unpkg/dev-deprecated/utils/string.js +79 -85
  224. package/dist/unpkg/dev-deprecated/utils/string.js.map +1 -0
  225. package/dist/unpkg/prod/-private-BK71-uXR.js +99 -0
  226. package/dist/unpkg/prod/-private-BK71-uXR.js.map +1 -0
  227. package/dist/unpkg/prod/-private-TNaS5Piv.js +1494 -0
  228. package/dist/unpkg/prod/-private-TNaS5Piv.js.map +1 -0
  229. package/dist/unpkg/prod/-private-Z9i0icpE.js +22 -0
  230. package/dist/unpkg/prod/-private-Z9i0icpE.js.map +1 -0
  231. package/dist/unpkg/prod/build-config/babel-macros.js +3 -1
  232. package/dist/unpkg/prod/build-config/canary-features.js +1 -1
  233. package/dist/unpkg/prod/build-config/debugging.js +1 -1
  234. package/dist/unpkg/prod/build-config/deprecations.js +1 -1
  235. package/dist/unpkg/prod/build-config/env.js +3 -1
  236. package/dist/unpkg/prod/build-config/macros.js +3 -1
  237. package/dist/unpkg/prod/build-config.js +3 -1
  238. package/dist/unpkg/prod/configure.js +3 -2
  239. package/dist/unpkg/prod/graph/-private.js +1475 -2095
  240. package/dist/unpkg/prod/graph/-private.js.map +1 -0
  241. package/dist/unpkg/prod/index.js +2 -482
  242. package/dist/unpkg/prod/reactive/-private.js +3 -1
  243. package/dist/unpkg/prod/reactive.js +5 -30
  244. package/dist/unpkg/prod/request-BcJNzSgv.js +480 -0
  245. package/dist/unpkg/prod/request-BcJNzSgv.js.map +1 -0
  246. package/dist/unpkg/prod/request.js +3 -2
  247. package/dist/unpkg/prod/signals/-leaked.js +3 -1
  248. package/dist/unpkg/prod/src-Dzz-j6pp.js +6799 -0
  249. package/dist/unpkg/prod/src-Dzz-j6pp.js.map +1 -0
  250. package/dist/unpkg/prod/store/-private.js +3 -126
  251. package/dist/unpkg/prod/store-BWhmb7Ob.js +359 -0
  252. package/dist/unpkg/prod/store-BWhmb7Ob.js.map +1 -0
  253. package/dist/unpkg/prod/store.js +1 -435
  254. package/dist/unpkg/prod/types/-private.js +1 -47
  255. package/dist/unpkg/prod/types/identifier.js +63 -56
  256. package/dist/unpkg/prod/types/identifier.js.map +1 -0
  257. package/dist/unpkg/prod/types/record.js +211 -181
  258. package/dist/unpkg/prod/types/record.js.map +1 -0
  259. package/dist/unpkg/prod/types/request.js +138 -69
  260. package/dist/unpkg/prod/types/request.js.map +1 -0
  261. package/dist/unpkg/prod/types/runtime.js +54 -26
  262. package/dist/unpkg/prod/types/runtime.js.map +1 -0
  263. package/dist/unpkg/prod/types/schema/fields.js +501 -495
  264. package/dist/unpkg/prod/types/schema/fields.js.map +1 -0
  265. package/dist/unpkg/prod/types/schema/fields.type-test.js +79 -0
  266. package/dist/unpkg/prod/types/schema/fields.type-test.js.map +1 -0
  267. package/dist/unpkg/prod/types/symbols.js +84 -77
  268. package/dist/unpkg/prod/types/symbols.js.map +1 -0
  269. package/dist/unpkg/prod/utils/string.js +70 -66
  270. package/dist/unpkg/prod/utils/string.js.map +1 -0
  271. package/dist/unpkg/prod-deprecated/-private-BK71-uXR.js +99 -0
  272. package/dist/unpkg/prod-deprecated/-private-BK71-uXR.js.map +1 -0
  273. package/dist/unpkg/prod-deprecated/-private-TNaS5Piv.js +1494 -0
  274. package/dist/unpkg/prod-deprecated/-private-TNaS5Piv.js.map +1 -0
  275. package/dist/unpkg/prod-deprecated/-private-Z9i0icpE.js +22 -0
  276. package/dist/unpkg/prod-deprecated/-private-Z9i0icpE.js.map +1 -0
  277. package/dist/unpkg/prod-deprecated/build-config/babel-macros.js +3 -1
  278. package/dist/unpkg/prod-deprecated/build-config/canary-features.js +1 -1
  279. package/dist/unpkg/prod-deprecated/build-config/debugging.js +1 -1
  280. package/dist/unpkg/prod-deprecated/build-config/deprecations.js +1 -1
  281. package/dist/unpkg/prod-deprecated/build-config/env.js +3 -1
  282. package/dist/unpkg/prod-deprecated/build-config/macros.js +3 -1
  283. package/dist/unpkg/prod-deprecated/build-config.js +3 -1
  284. package/dist/unpkg/prod-deprecated/configure.js +3 -2
  285. package/dist/unpkg/prod-deprecated/graph/-private.js +1586 -2266
  286. package/dist/unpkg/prod-deprecated/graph/-private.js.map +1 -0
  287. package/dist/unpkg/prod-deprecated/index.js +2 -482
  288. package/dist/unpkg/prod-deprecated/reactive/-private.js +3 -1
  289. package/dist/unpkg/prod-deprecated/reactive.js +5 -5
  290. package/dist/unpkg/prod-deprecated/request-BcJNzSgv.js +480 -0
  291. package/dist/unpkg/prod-deprecated/request-BcJNzSgv.js.map +1 -0
  292. package/dist/unpkg/prod-deprecated/request.js +3 -2
  293. package/dist/unpkg/prod-deprecated/signals/-leaked.js +3 -1
  294. package/dist/unpkg/prod-deprecated/src-BOifHFQ5.js +7232 -0
  295. package/dist/unpkg/prod-deprecated/src-BOifHFQ5.js.map +1 -0
  296. package/dist/unpkg/prod-deprecated/store/-private.js +3 -88
  297. package/dist/unpkg/prod-deprecated/store-BWhmb7Ob.js +359 -0
  298. package/dist/unpkg/prod-deprecated/store-BWhmb7Ob.js.map +1 -0
  299. package/dist/unpkg/prod-deprecated/store.js +1 -435
  300. package/dist/unpkg/prod-deprecated/types/-private.js +1 -47
  301. package/dist/unpkg/prod-deprecated/types/identifier.js +63 -56
  302. package/dist/unpkg/prod-deprecated/types/identifier.js.map +1 -0
  303. package/dist/unpkg/prod-deprecated/types/record.js +211 -181
  304. package/dist/unpkg/prod-deprecated/types/record.js.map +1 -0
  305. package/dist/unpkg/prod-deprecated/types/request.js +138 -69
  306. package/dist/unpkg/prod-deprecated/types/request.js.map +1 -0
  307. package/dist/unpkg/prod-deprecated/types/runtime.js +54 -26
  308. package/dist/unpkg/prod-deprecated/types/runtime.js.map +1 -0
  309. package/dist/unpkg/prod-deprecated/types/schema/fields.js +501 -495
  310. package/dist/unpkg/prod-deprecated/types/schema/fields.js.map +1 -0
  311. package/dist/unpkg/prod-deprecated/types/schema/fields.type-test.js +79 -0
  312. package/dist/unpkg/prod-deprecated/types/schema/fields.type-test.js.map +1 -0
  313. package/dist/unpkg/prod-deprecated/types/symbols.js +84 -77
  314. package/dist/unpkg/prod-deprecated/types/symbols.js.map +1 -0
  315. package/dist/unpkg/prod-deprecated/utils/string.js +70 -66
  316. package/dist/unpkg/prod-deprecated/utils/string.js.map +1 -0
  317. package/dist/utils/string.js +84 -85
  318. package/dist/utils/string.js.map +1 -0
  319. package/package.json +9 -9
  320. package/declarations/graph/-private/-diff.d.ts +0 -19
  321. package/declarations/graph/-private/-edge-definition.d.ts +0 -149
  322. package/declarations/graph/-private/-state.d.ts +0 -9
  323. package/declarations/graph/-private/-utils.d.ts +0 -25
  324. package/declarations/graph/-private/coerce-id.d.ts +0 -4
  325. package/declarations/graph/-private/debug/assert-polymorphic-type.d.ts +0 -6
  326. package/declarations/graph/-private/edges/collection.d.ts +0 -39
  327. package/declarations/graph/-private/edges/implicit.d.ts +0 -43
  328. package/declarations/graph/-private/edges/resource.d.ts +0 -23
  329. package/declarations/graph/-private/graph.d.ts +0 -56
  330. package/declarations/graph/-private/normalize-link.d.ts +0 -2
  331. package/declarations/graph/-private/operations/add-to-related-records.d.ts +0 -4
  332. package/declarations/graph/-private/operations/merge-identifier.d.ts +0 -3
  333. package/declarations/graph/-private/operations/remove-from-related-records.d.ts +0 -4
  334. package/declarations/graph/-private/operations/replace-related-record.d.ts +0 -3
  335. package/declarations/graph/-private/operations/replace-related-records.d.ts +0 -7
  336. package/declarations/graph/-private/operations/update-relationship.d.ts +0 -9
  337. package/declarations/reactive/-private/default-mode.d.ts +0 -73
  338. package/declarations/reactive/-private/document.d.ts +0 -142
  339. package/declarations/reactive/-private/fields/extension.d.ts +0 -8
  340. package/declarations/reactive/-private/fields/get-field-key.d.ts +0 -8
  341. package/declarations/reactive/-private/fields/managed-array.d.ts +0 -18
  342. package/declarations/reactive/-private/fields/managed-object.d.ts +0 -17
  343. package/declarations/reactive/-private/fields/many-array-manager.d.ts +0 -19
  344. package/declarations/reactive/-private/hooks.d.ts +0 -5
  345. package/declarations/reactive/-private/kind/alias-field.d.ts +0 -4
  346. package/declarations/reactive/-private/kind/array-field.d.ts +0 -4
  347. package/declarations/reactive/-private/kind/attribute-field.d.ts +0 -4
  348. package/declarations/reactive/-private/kind/belongs-to-field.d.ts +0 -4
  349. package/declarations/reactive/-private/kind/collection-field.d.ts +0 -4
  350. package/declarations/reactive/-private/kind/derived-field.d.ts +0 -4
  351. package/declarations/reactive/-private/kind/generic-field.d.ts +0 -4
  352. package/declarations/reactive/-private/kind/has-many-field.d.ts +0 -4
  353. package/declarations/reactive/-private/kind/hash-field.d.ts +0 -4
  354. package/declarations/reactive/-private/kind/identity-field.d.ts +0 -4
  355. package/declarations/reactive/-private/kind/local-field.d.ts +0 -4
  356. package/declarations/reactive/-private/kind/object-field.d.ts +0 -4
  357. package/declarations/reactive/-private/kind/resource-field.d.ts +0 -4
  358. package/declarations/reactive/-private/kind/schema-array-field.d.ts +0 -4
  359. package/declarations/reactive/-private/kind/schema-object-field.d.ts +0 -4
  360. package/declarations/reactive/-private/record.d.ts +0 -83
  361. package/declarations/reactive/-private/schema.d.ts +0 -326
  362. package/declarations/reactive/-private/symbols.d.ts +0 -5
  363. package/declarations/request/-private/context.d.ts +0 -39
  364. package/declarations/request/-private/debug.d.ts +0 -4
  365. package/declarations/request/-private/fetch.d.ts +0 -33
  366. package/declarations/request/-private/future.d.ts +0 -7
  367. package/declarations/request/-private/manager.d.ts +0 -158
  368. package/declarations/request/-private/promise-cache.d.ts +0 -28
  369. package/declarations/request/-private/types.d.ts +0 -234
  370. package/declarations/request/-private/utils.d.ts +0 -57
  371. package/declarations/signals/-private.d.ts +0 -6
  372. package/declarations/signals/promise-state.d.ts +0 -264
  373. package/declarations/signals/reactivity/configure.d.ts +0 -138
  374. package/declarations/signals/reactivity/internal.d.ts +0 -154
  375. package/declarations/signals/reactivity/signal.d.ts +0 -56
  376. package/declarations/signals/request-state.d.ts +0 -372
  377. package/declarations/signals/request-subscription.d.ts +0 -177
  378. package/declarations/store/-private/cache-handler/handler.d.ts +0 -56
  379. package/declarations/store/-private/cache-handler/types.d.ts +0 -84
  380. package/declarations/store/-private/cache-handler/utils.d.ts +0 -31
  381. package/declarations/store/-private/caches/instance-cache.d.ts +0 -58
  382. package/declarations/store/-private/caches/resource-utils.d.ts +0 -9
  383. package/declarations/store/-private/debug/utils.d.ts +0 -7
  384. package/declarations/store/-private/default-cache-policy.d.ts +0 -387
  385. package/declarations/store/-private/managers/cache-capabilities-manager.d.ts +0 -34
  386. package/declarations/store/-private/managers/cache-key-manager.d.ts +0 -304
  387. package/declarations/store/-private/managers/cache-manager.d.ts +0 -367
  388. package/declarations/store/-private/managers/notification-manager.d.ts +0 -83
  389. package/declarations/store/-private/managers/record-array-manager.d.ts +0 -100
  390. package/declarations/store/-private/network/request-cache.d.ts +0 -103
  391. package/declarations/store/-private/record-arrays/-utils.d.ts +0 -80
  392. package/declarations/store/-private/record-arrays/legacy-live-array.d.ts +0 -81
  393. package/declarations/store/-private/record-arrays/legacy-many-array.d.ts +0 -133
  394. package/declarations/store/-private/record-arrays/legacy-query.d.ts +0 -81
  395. package/declarations/store/-private/record-arrays/native-proxy-type-fix.d.ts +0 -3
  396. package/declarations/store/-private/record-arrays/resource-array.d.ts +0 -67
  397. package/declarations/store/-private/store-service.d.ts +0 -874
  398. package/declarations/store/-private/utils/coerce-id.d.ts +0 -4
  399. package/declarations/store/-private/utils/construct-resource.d.ts +0 -6
  400. package/declarations/store/-private/utils/is-non-empty-string.d.ts +0 -1
  401. package/declarations/store/-private/utils/normalize-model-name.d.ts +0 -1
  402. package/declarations/store/-private/utils/uuid-polyfill.d.ts +0 -1
  403. package/declarations/store/-types/q/cache-capabilities-manager.d.ts +0 -90
  404. package/declarations/store/-types/q/identifier.d.ts +0 -23
  405. package/declarations/store/-types/q/record-instance.d.ts +0 -22
  406. package/declarations/store/-types/q/store.d.ts +0 -31
  407. package/declarations/store/deprecated/-private.d.ts +0 -223
  408. package/declarations/store/deprecated/store.d.ts +0 -784
  409. package/dist/configure-DPUFCemT.js +0 -1940
  410. package/dist/default-cache-policy-D7_u4YRH.js +0 -572
  411. package/dist/future-BKkJJkj7.js +0 -678
  412. package/dist/index-CQP2NSqg.js +0 -9982
  413. package/dist/symbols-3C1OkYtZ.js +0 -39
  414. package/dist/unpkg/dev/-leaked-Co0EI6Go.js +0 -1939
  415. package/dist/unpkg/dev/-private-sql1_mdx.js +0 -39
  416. package/dist/unpkg/dev/future-DFfOzSoe.js +0 -672
  417. package/dist/unpkg/dev/index-BzcBOnw9.js +0 -9392
  418. package/dist/unpkg/dev/runtime-E1M51_-O.js +0 -135
  419. package/dist/unpkg/dev-deprecated/-leaked-DjMeRqdU.js +0 -1939
  420. package/dist/unpkg/dev-deprecated/-private-3C1OkYtZ.js +0 -39
  421. package/dist/unpkg/dev-deprecated/future-DFfOzSoe.js +0 -672
  422. package/dist/unpkg/dev-deprecated/index-6TnTv-WG.js +0 -10007
  423. package/dist/unpkg/dev-deprecated/runtime-DAu5b0IR.js +0 -135
  424. package/dist/unpkg/prod/-leaked-DUONXQDB.js +0 -1676
  425. package/dist/unpkg/prod/-private-sql1_mdx.js +0 -39
  426. package/dist/unpkg/prod/handler-EU_8ncB2.js +0 -1619
  427. package/dist/unpkg/prod/promise-cache-DIT8Ypjq.js +0 -19
  428. package/dist/unpkg/prod/request-BrJSCG6r.js +0 -421
  429. package/dist/unpkg/prod/schema-BSkHyoWz.js +0 -5219
  430. package/dist/unpkg/prod-deprecated/-leaked-DRNv9VIX.js +0 -1676
  431. package/dist/unpkg/prod-deprecated/-private-3C1OkYtZ.js +0 -39
  432. package/dist/unpkg/prod-deprecated/handler-CCIu4sQ3.js +0 -334
  433. package/dist/unpkg/prod-deprecated/hooks-Dv4Np0MY.js +0 -26
  434. package/dist/unpkg/prod-deprecated/promise-cache-DIT8Ypjq.js +0 -19
  435. package/dist/unpkg/prod-deprecated/request-BrJSCG6r.js +0 -421
  436. package/dist/unpkg/prod-deprecated/schema-CJcjHv0E.js +0 -6939
@@ -0,0 +1,244 @@
1
+ import { c as RequestKey, l as ResourceKey, s as PersistedResourceKey } from "./identifier-DQnqOSJK.js";
2
+ import { i as Value } from "./raw-D5hnjiq7.js";
3
+ import { a as ExistingResourceObject } from "./json-api-raw-C5APJHHB.js";
4
+ import { n as Relationship } from "./relationship-CmHzMPKf.js";
5
+ //#region src/types/cache/operations.d.ts
6
+ /**
7
+ * All operations are objects with at least one property,
8
+ * `op` which contains a string with the name of the operation
9
+ * to perform.
10
+ */
11
+ interface Op {
12
+ /**
13
+ * The name of the {@link Op | operation}
14
+ */
15
+ op: string;
16
+ }
17
+ /**
18
+ * Occasionally the Store discovers that two previously
19
+ * thought to be distinct resources refer to the same resource.
20
+ *
21
+ * This operation will be performed, giving the Cache the chance
22
+ * to cleanup and merge internal state as desired when this discovery
23
+ * is made.
24
+ */
25
+ interface MergeOperation extends Op {
26
+ op: "mergeIdentifiers";
27
+ /**
28
+ * The stale {@link ResourceKey | ResourceKey} that
29
+ * the cache should eliminate in favor of {@link MergeOperation.value | value}
30
+ */
31
+ record: ResourceKey;
32
+ /**
33
+ * The kept {@link ResourceKey | ResourceKey} that
34
+ * the cache should also keep and merge {@link MergeOperation.record | record} into.
35
+ */
36
+ value: ResourceKey;
37
+ }
38
+ /**
39
+ * Removes a document and its associated request from
40
+ * the cache.
41
+ */
42
+ interface RemoveDocumentOperation extends Op {
43
+ op: "remove";
44
+ /**
45
+ * The cache key for the request
46
+ */
47
+ record: RequestKey;
48
+ }
49
+ /**
50
+ * Removes a resource from the cache. This is treated
51
+ * as if a remote deletion has occurred, and all references
52
+ * to the resource should be eliminated.
53
+ */
54
+ interface RemoveResourceOperation extends Op {
55
+ op: "remove";
56
+ /**
57
+ * The cache key for the resource
58
+ */
59
+ record: PersistedResourceKey;
60
+ }
61
+ /**
62
+ * Adds a resource to the cache.
63
+ */
64
+ interface AddResourceOperation extends Op {
65
+ op: "add";
66
+ /**
67
+ * The cache key for the resource
68
+ */
69
+ record: PersistedResourceKey;
70
+ /**
71
+ * The data for the resource
72
+ */
73
+ value: ExistingResourceObject;
74
+ }
75
+ /**
76
+ * Upserts (merges) new state for a resource
77
+ */
78
+ interface UpdateResourceOperation extends Op {
79
+ op: "update";
80
+ /**
81
+ * The cache key for the resource
82
+ */
83
+ record: PersistedResourceKey;
84
+ /**
85
+ * The new state to merge into the resource
86
+ */
87
+ value: ExistingResourceObject;
88
+ }
89
+ /**
90
+ * Replaces the state of a field with a new state
91
+ */
92
+ interface UpdateResourceFieldOperation extends Op {
93
+ op: "update";
94
+ /**
95
+ * The cache key for the resource
96
+ */
97
+ record: PersistedResourceKey;
98
+ /**
99
+ * The name of the field to update
100
+ */
101
+ field: string;
102
+ /**
103
+ * The new value for the field
104
+ */
105
+ value: Value;
106
+ }
107
+ /**
108
+ * Replaces the state of a relationship with a new state
109
+ */
110
+ interface UpdateResourceRelationshipOperation extends Op {
111
+ op: "update";
112
+ /**
113
+ * The cache key for the resource
114
+ */
115
+ record: PersistedResourceKey;
116
+ /**
117
+ * The name of the relationship to update
118
+ */
119
+ field: string;
120
+ /**
121
+ * The new state for the relationship
122
+ */
123
+ value: Relationship<PersistedResourceKey>;
124
+ }
125
+ /**
126
+ * Adds a resource to a request document, optionally
127
+ * at a specific index. This can be used to update the
128
+ * result of a request.
129
+ */
130
+ interface AddToDocumentOperation extends Op {
131
+ op: "add";
132
+ /**
133
+ * The cache key for the request document
134
+ */
135
+ record: RequestKey;
136
+ /**
137
+ * Which member of the document to add to
138
+ */
139
+ field: "data" | "included";
140
+ /**
141
+ * The resource(s) to add
142
+ */
143
+ value: PersistedResourceKey | PersistedResourceKey[];
144
+ /**
145
+ * The index at which to insert the resource(s), if applicable
146
+ */
147
+ index?: number;
148
+ }
149
+ /**
150
+ * Adds the specified ResourceKeys to a relationship
151
+ */
152
+ interface AddToResourceRelationshipOperation extends Op {
153
+ op: "add";
154
+ /**
155
+ * The cache key for the resource whose relationship is being updated
156
+ */
157
+ record: PersistedResourceKey;
158
+ /**
159
+ * The name of the relationship to add to
160
+ */
161
+ field: string;
162
+ /**
163
+ * The resource(s) to add to the relationship
164
+ */
165
+ value: PersistedResourceKey | PersistedResourceKey[];
166
+ /**
167
+ * The index at which to insert the resource(s), if applicable
168
+ */
169
+ index?: number;
170
+ }
171
+ /**
172
+ * Removes the specified ResourceKeys from a relationship
173
+ */
174
+ interface RemoveFromResourceRelationshipOperation extends Op {
175
+ op: "remove";
176
+ /**
177
+ * The cache key for the resource whose relationship is being updated
178
+ */
179
+ record: PersistedResourceKey;
180
+ /**
181
+ * The name of the relationship to remove from
182
+ */
183
+ field: string;
184
+ /**
185
+ * The resource(s) to remove from the relationship
186
+ */
187
+ value: PersistedResourceKey | PersistedResourceKey[];
188
+ /**
189
+ * The index to remove the resource(s) from, if applicable
190
+ */
191
+ index?: number;
192
+ }
193
+ /**
194
+ * Removes a resource from a request document, optionally
195
+ * at a specific index. This can be used to update the
196
+ * result of a request.
197
+ */
198
+ interface RemoveFromDocumentOperation extends Op {
199
+ op: "remove";
200
+ /**
201
+ * The cache key for the request document
202
+ */
203
+ record: RequestKey;
204
+ /**
205
+ * Which member of the document to remove from
206
+ */
207
+ field: "data" | "included";
208
+ /**
209
+ * The resource(s) to remove
210
+ */
211
+ value: PersistedResourceKey | PersistedResourceKey[];
212
+ /**
213
+ * The index to remove the resource(s) from, if applicable
214
+ */
215
+ index?: number;
216
+ }
217
+ /**
218
+ * {@link Cache} Operations perform updates to the
219
+ * Cache's "remote" (or clean) state to reflect external
220
+ * changes.
221
+ *
222
+ * Usually operations represent the result of a {@link WebSocket} or
223
+ * {@link EventSource | ServerEvent} message, though they can also be used to carefully
224
+ * patch the state of the cache with information known by the
225
+ * application or developer.
226
+ *
227
+ * Operations are applied via {@link Cache.patch}.
228
+ *
229
+ * See also:
230
+ * - {@link MergeOperation}
231
+ * - {@link RemoveResourceOperation}
232
+ * - {@link RemoveDocumentOperation}
233
+ * - {@link AddResourceOperation}
234
+ * - {@link UpdateResourceOperation}
235
+ * - {@link UpdateResourceFieldOperation}
236
+ * - {@link AddToResourceRelationshipOperation}
237
+ * - {@link RemoveFromResourceRelationshipOperation}
238
+ * - {@link AddToDocumentOperation}
239
+ * - {@link RemoveFromDocumentOperation}
240
+ */
241
+ type Operation = MergeOperation | RemoveResourceOperation | RemoveDocumentOperation | AddResourceOperation | UpdateResourceOperation | UpdateResourceFieldOperation | AddToResourceRelationshipOperation | RemoveFromResourceRelationshipOperation | AddToDocumentOperation | RemoveFromDocumentOperation;
242
+ //#endregion
243
+ export { Op as a, RemoveFromDocumentOperation as c, UpdateResourceFieldOperation as d, UpdateResourceOperation as f, MergeOperation as i, RemoveFromResourceRelationshipOperation as l, AddToDocumentOperation as n, Operation as o, UpdateResourceRelationshipOperation as p, AddToResourceRelationshipOperation as r, RemoveDocumentOperation as s, AddResourceOperation as t, RemoveResourceOperation as u };
244
+ //# sourceMappingURL=operations-D1qA6r0_.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations-D1qA6r0_.d.ts","names":[],"sources":["../src/types/cache/operations.ts"],"mappings":";;;;;;;;;;UA6BiB;;;;EAIf;;;;;;;;;;UAWe,uBAAuB;EACtC;;;;;EAKA,QAAQ;;;;;EAKR,OAAO;;;;;;UAOQ,gCAAgC;EAC/C;;;;EAIA,QAAQ;;;;;;;UAQO,gCAAgC;EAC/C;;;;EAIA,QAAQ;;;;;UAMO,6BAA6B;EAC5C;;;;EAIA,QAAQ;;;;EAIR,OAAO;;;;;UAKQ,gCAAgC;EAC/C;;;;EAIA,QAAQ;;;;EAIR,OAAO;;;;;UAKQ,qCAAqC;EACpD;;;;EAIA,QAAQ;;;;EAIR;;;;EAIA,OAAO;;;;;UAKQ,4CAA4C;EAC3D;;;;EAIA,QAAQ;;;;EAIR;;;;EAIA,OAAO,aAAa;;;;;;;UAQL,+BAA+B;EAC9C;;;;EAIA,QAAQ;;;;EAIR;;;;EAIA,OAAO,uBAAuB;;;;EAI9B;;;;;UAKe,2CAA2C;EAC1D;;;;EAIA,QAAQ;;;;EAIR;;;;EAIA,OAAO,uBAAuB;;;;EAI9B;;;;;UAKe,gDAAgD;EAC/D;;;;EAIA,QAAQ;;;;EAIR;;;;EAIA,OAAO,uBAAuB;;;;EAI9B;;;;;;;UAOe,oCAAoC;EACnD;;;;EAIA,QAAQ;;;;EAIR;;;;EAIA,OAAO,uBAAuB;;;;EAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;KA2BU,YACR,iBACA,0BACA,0BACA,uBACA,0BACA,+BACA,qCACA,0CACA,yBACA"}
@@ -0,0 +1,41 @@
1
+ //#region src/types/params.d.ts
2
+ /**
3
+ * A JSON-serializable primitive value, suitable for use as a single
4
+ * query parameter value.
5
+ */
6
+ type SerializablePrimitive = string | number | boolean | null;
7
+ /**
8
+ * A JSON-serializable value suitable for use as a query parameter value:
9
+ * either a {@link SerializablePrimitive} or an array of them.
10
+ */
11
+ type Serializable = SerializablePrimitive | SerializablePrimitive[];
12
+ /**
13
+ * Options for controlling how {@link QueryParamsSource} values are
14
+ * serialized into a URL query string.
15
+ */
16
+ type QueryParamsSerializationOptions = {
17
+ /**
18
+ * How array values should be serialized:
19
+ *
20
+ * - `'bracket'` - `key[]=1&key[]=2`
21
+ * - `'indices'` - `key[0]=1&key[1]=2`
22
+ * - `'repeat'` - `key=1&key=2`
23
+ * - `'comma'` - `key=1,2`
24
+ */
25
+ arrayFormat?: "bracket" | "indices" | "repeat" | "comma";
26
+ };
27
+ /**
28
+ * The query parameters to serialize for a request: either a
29
+ * dictionary of {@link Serializable} values (with an optional
30
+ * `include` member for specifying relationships to sideload),
31
+ * or a native `URLSearchParams` instance.
32
+ */
33
+ type QueryParamsSource = ({
34
+ /**
35
+ * the relationship paths to sideload, see {@link Includes}
36
+ */
37
+ include?: string | string[];
38
+ } & Record<Exclude<string, "include">, Serializable>) | URLSearchParams;
39
+ //#endregion
40
+ export { SerializablePrimitive as i, QueryParamsSource as n, Serializable as r, QueryParamsSerializationOptions as t };
41
+ //# sourceMappingURL=params-DrEx3bf8.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"params-DrEx3bf8.d.ts","names":[],"sources":["../src/types/params.ts"],"mappings":";;;;;KAOY;;;;;KAMA,eAAe,wBAAwB;;;;;KAMvC;;;;;;;;;EASV;;;;;;;;KASU;;;;EAKN;IACE,OAAO,4BAA4B,iBACvC"}
@@ -0,0 +1,31 @@
1
+ //#region src/types/json/raw.d.ts
2
+ /**
3
+ * A JSON primitive: a string, number, boolean, or `null`.
4
+ *
5
+ * @public
6
+ */
7
+ type PrimitiveValue = string | number | boolean | null;
8
+ /**
9
+ * A plain JSON object, whose values are themselves valid {@link Value}s.
10
+ *
11
+ * @public
12
+ */
13
+ interface ObjectValue {
14
+ [key: string]: Value;
15
+ }
16
+ /**
17
+ * A JSON array whose members are valid {@link Value}s.
18
+ *
19
+ * @public
20
+ */
21
+ type ArrayValue = Value[];
22
+ /**
23
+ * Any valid JSON value: a {@link PrimitiveValue}, an {@link ArrayValue}, or an
24
+ * {@link ObjectValue}.
25
+ *
26
+ * @public
27
+ */
28
+ type Value = PrimitiveValue | ArrayValue | ObjectValue;
29
+ //#endregion
30
+ export { Value as i, ObjectValue as n, PrimitiveValue as r, ArrayValue as t };
31
+ //# sourceMappingURL=raw-D5hnjiq7.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raw-D5hnjiq7.d.ts","names":[],"sources":["../src/types/json/raw.ts"],"mappings":";;;;;;KAKY;;;;;;UAOK;GACA,cAAA;;;;;;;KAQL,aAAa;;;;;;;KAQb,QAAQ,iBAAiB,aAAa"}
@@ -1,2 +1,2 @@
1
- export { Context } from "./-private/symbols.js";
2
- export type { PrivateReactiveResource } from "./-private/record.js";
1
+ import { Jn as ExtensibleField, ct as Context, j as PrivateReactiveResource, ot as ManagedArray } from "../internal-Cz-893zD.js";
2
+ export { Context, type ExtensibleField, type ManagedArray, type PrivateReactiveResource };
@@ -1,286 +1,2 @@
1
- /**
2
- * # About
3
- *
4
- * This module provides an implementation of reactive objects that a Store may use for creating
5
- * reactive representations of the raw data for requests, resources and their relationships
6
- * stored in the cache.
7
- *
8
- * - For configuring the store to use these reactive objects, see [The Setup Guide](/guides/configuration/)
9
- * - For defining resource schemas, see [The Schema Guide](/guides/the-manual/schemas/)
10
- *
11
- * Any method that returns a record instance will use the `instantiateRecord`
12
- * hook configured above to instantiate a ReactiveResource once this is in place.
13
- * After that, its up to you what ReactiveResource can do.
14
- *
15
- * ## Modes
16
- *
17
- * ReactiveResource has two modes: `legacy` and `polaris`.
18
- *
19
- * **LegacyMode** can be used to emulate the behaviors and capabilities of WarpDrive's `Model` class,
20
- * and because there is little distinction between Model and a ReactiveResource in LegacyMode we refer
21
- * to both of these approaches as LegacyMode. This mode is the default experience in V5.
22
- *
23
- * In LegacyMode:
24
- *
25
- * - records are mutable
26
- * - local changes immediately reflect app wide
27
- * - records have all the APIs of Model (references, state props, currentState, methods etc)
28
- * - the continued use of `@warp-drive/legacy` is required (though most imports from it can be removed)
29
- * - `async: true` relationships are supported (but not recommended outside of [LinksMode](/guides/the-manual/misc/links-mode.md))
30
- *
31
- * ---
32
- *
33
- * **PolarisMode** is an upcoming suite of features that will become the default experience in V6.
34
- *
35
- * In PolarisMode:
36
- *
37
- * - records are immutable, unless creating a new resource or explicitly checking out a record for editing
38
- * - local changes are isolated until committed, displaying only via the editable version of the record
39
- * - records have a more limited API, focused on only what is in their schema.
40
- * - some common operations may have more friction to perform because intended utilities are not yet available
41
- * - `async: true` relationships are not supported (see [LinksMode](/guides/the-manual/misc/links-mode.md))
42
- * - The `@warp-drive/legacy` package is not required
43
- *
44
- * These modes are interopable. The reactive object (record) for a resource in PolarisMode can relate to
45
- * a record in LegacyMode and vice-versa. This interopability is true whether the record in LegacyMode is
46
- * a ReactiveResource or a Model.
47
- *
48
- * ---
49
- *
50
- * ## Basic Usage
51
- *
52
- * ReactiveResource is a reactive object that transforms raw data from an associated
53
- * cache into reactive data backed by Signals.
54
- *
55
- * The shape of the object and the transformation of raw cache data into its
56
- * reactive form is controlled by a resource schema.
57
- *
58
- * For instance, lets say your API is a [{json:api}](https://jsonapi.org) and your store is using
59
- * the Cache provided by {@link @warp-drive/json-api! | @warp-drive/json-api}, and a request
60
- * returns the following raw data:
61
- *
62
- * ```ts
63
- * {
64
- * data: {
65
- * type: 'user',
66
- * id: '1',
67
- * attributes: { firstName: 'Chris', lastName: 'Thoburn' },
68
- * relationships: { pets: { data: [{ type: 'dog', id: '1' }] }}
69
- * },
70
- * included: [
71
- * {
72
- * type: 'dog',
73
- * id: '1',
74
- * attributes: { name: 'Rey' },
75
- * relationships: { owner: { data: { type: 'user', id: '1' }}}
76
- * }
77
- * ]
78
- * }
79
- * ```
80
- *
81
- * We could describe the `'user'` and `'dog'` resources in the above payload
82
- * with the following schemas:
83
- *
84
- * ```ts
85
- * store.schema.registerResources([
86
- * {
87
- * type: 'user',
88
- * identity: { type: '@id', name: 'id' },
89
- * fields: [
90
- * {
91
- * type: '@identity',
92
- * name: '$type',
93
- * kind: 'derived',
94
- * options: { key: 'type' },
95
- * },
96
- * { kind: 'field', name: 'firstName' },
97
- * { kind: 'field', name: 'lastName' },
98
- * {
99
- * kind: 'derived',
100
- * name: 'name',
101
- * type: 'concat',
102
- * options: { fields: ['firstName', 'lastName'], separator: ' ' }
103
- * },
104
- * {
105
- * kind: 'hasMany',
106
- * name: 'pets',
107
- * type: 'pet',
108
- * options: {
109
- * async: false,
110
- * inverse: 'owner',
111
- * polymorphic: true,
112
- * linksMode: true,
113
- * }
114
- * }
115
- * ]
116
- * },
117
- * {
118
- * type: 'dog',
119
- * identity: { type: '@id', name: 'id' },
120
- * fields: [
121
- * {
122
- * type: '@identity',
123
- * name: '$type',
124
- * kind: 'derived',
125
- * options: { key: 'type' },
126
- * },
127
- * { kind: 'field', name: 'name' },
128
- * {
129
- * kind: 'belongsTo',
130
- * name: 'owner',
131
- * type: 'user',
132
- * options: {
133
- * async: false,
134
- * inverse: 'pets',
135
- * as: 'pet',
136
- * linksMode: true,
137
- * }
138
- * }
139
- * ]
140
- * }
141
- * ]);
142
- * ```
143
- *
144
- * With these schemas in place, the reactive objects that the store would
145
- * provide us whenever we encountered a `'user'` or a `'dog'` would be:
146
- *
147
- * ```ts
148
- * interface Pet {
149
- * readonly id: string;
150
- * readonly owner: User;
151
- * }
152
- *
153
- * interface Dog extends Pet {
154
- * readonly $type: 'dog';
155
- * readonly name: string;
156
- * }
157
- *
158
- * interface EditableUser {
159
- * readonly $type: 'user';
160
- * readonly id: string;
161
- * firstName: string;
162
- * lastName: string;
163
- * readonly name: string;
164
- * pets: Array<Dog | Pet>;
165
- * }
166
- *
167
- * interface User {
168
- * readonly $type: 'user';
169
- * readonly id: string;
170
- * readonly firstName: string;
171
- * readonly lastName: string;
172
- * readonly name: string;
173
- * readonly pets: Readonly<Array<Dog | Pet>>;
174
- * [Checkout](): Promise<EditableUser>
175
- * }>
176
- * ```
177
- *
178
- * Note how based on the schema the reactive object we receive is able to produce
179
- * `name` on user (despite no name field being in the cache), provide `$type`
180
- * pulled from the identity of the resource, and flatten the individual attributes
181
- * and relationships onto the record for easier use.
182
- *
183
- * Notice also how we typed this object with `readonly`. This is because while
184
- * ReactiveResource instances are ***deeply reactive***, they are also ***immutable***.
185
- *
186
- * We can mutate a ReactiveResource only be explicitly asking permission to do so, and
187
- * in the process gaining access to an editable copy. The immutable version will
188
- * not show any in-process edits made to this editable copy.
189
- *
190
- * ```ts
191
- * import { Checkout } from '@warp-drive/schema-record';
192
- *
193
- * const editable = await user[Checkout]();
194
- * ```
195
- *
196
- * ## Utilities
197
- *
198
- * ReactiveResource provides a schema builder that simplifies setting up a couple of
199
- * conventional fields like identity and `$type`. We can rewrite the schema
200
- * definition above using this utility like so:
201
- *
202
- * ```ts
203
- * import { withDefaults } from '@warp-drive/core/reactive';
204
- *
205
- * store.schema.registerResources([
206
- * withDefaults({
207
- * type: 'user',
208
- * fields: [
209
- * { kind: 'field', name: 'firstName' },
210
- * { kind: 'field', name: 'lastName' },
211
- * {
212
- * kind: 'derived',
213
- * name: 'name',
214
- * type: 'concat',
215
- * options: { fields: ['firstName', 'lastName'], separator: ' ' }
216
- * },
217
- * {
218
- * kind: 'hasMany',
219
- * name: 'pets',
220
- * type: 'pet',
221
- * options: {
222
- * async: false,
223
- * inverse: 'owner',
224
- * polymorphic: true,
225
- * linksMode: true,
226
- * resetOnRemoteUpdate: false,
227
- * }
228
- * }
229
- * ]
230
- * }),
231
- * withDefaults({
232
- * type: 'dog',
233
- * fields: [
234
- * { kind: 'field', name: 'name' },
235
- * {
236
- * kind: 'belongsTo',
237
- * name: 'owner',
238
- * type: 'user',
239
- * options: {
240
- * async: false,
241
- * inverse: 'pets',
242
- * as: 'pet',
243
- * linksMode: true,
244
- * resetOnRemoteUpdate: false,
245
- * }
246
- * }
247
- * ]
248
- * })
249
- * ]);
250
- * ```
251
- *
252
- * ## Type Support
253
- *
254
- * ### Resource Schemas
255
- *
256
- * - {@link PolarisResourceSchema}
257
- * - {@link LegacyResourceSchema}
258
- * - {@link ObjectSchema}
259
- *
260
- * ### Resource Schema Type Utils
261
- *
262
- * - {@link resourceSchema}
263
- * - {@link objectSchema}
264
- * - {@link isResourceSchema}
265
- * - {@link isLegacyResourceSchema}
266
- *
267
- * ### Field Schemas
268
- *
269
- * - {@link LegacyModeFieldSchema}
270
- * - {@link PolarisModeFieldSchema}
271
- *
272
- * @module
273
- */
274
- import { checkout } from "./reactive/-private/record.js";
275
- export { instantiateRecord, teardownRecord } from "./reactive/-private/hooks.js";
276
- export { type CAUTION_MEGA_DANGER_ZONE_Extension, type ProcessedExtension, type ExtensionDef, type Transformation, SchemaService, withDefaults, fromIdentity, registerDerivations } from "./reactive/-private/schema.js";
277
- export { commit, type ReactiveResource } from "./reactive/-private/record.js";
278
- export { checkout };
279
- export { Checkout } from "./reactive/-private/symbols.js";
280
- export { type ReactiveDocument, type ReactiveDataDocument, type ReactiveErrorDocument } from "./reactive/-private/document.js";
281
- export { createRequestSubscription, getRequestState, type RequestSubscription, type RequestLoadingState, type RequestState } from "./signals/-private.js";
282
- export { getPromiseState, type PromiseState, type ResolvedPromise, type RejectedPromise, type PendingPromise } from "./signals/-private.js";
283
- export type { LegacyLiveArray } from "./store/-private/record-arrays/legacy-live-array.js";
284
- export type { LegacyManyArray } from "./store/-private/record-arrays/legacy-many-array.js";
285
- export type { LegacyQueryArray } from "./store/-private/record-arrays/legacy-query.js";
286
- export type { ReactiveResourceArray } from "./store/-private/record-arrays/resource-array.js";
1
+ import { $n as fromIdentity, A as teardownRecord, C as getPromiseState, L as LegacyManyArray, M as ReactiveResource, N as checkout, P as commit, Qn as Transformation, S as ResolvedPromise, Xn as ProcessedExtension, Yn as ExtensionDef, Zn as SchemaService, _ as RequestState, at as ReactiveResourceArray, b as PromiseState, bt as ReactiveErrorDocument, er as registerDerivations, g as RequestLoadingState, h as createRequestSubscription, k as instantiateRecord, nt as LegacyQueryArray, p as RequestSubscription, qn as CAUTION_MEGA_DANGER_ZONE_Extension, rt as LegacyLiveArray, st as Checkout, tr as withDefaults, v as getRequestState, vt as ReactiveDataDocument, x as RejectedPromise, y as PendingPromise, yt as ReactiveDocument } from "./internal-Cz-893zD.js";
2
+ export { type CAUTION_MEGA_DANGER_ZONE_Extension, Checkout, type ExtensionDef, type LegacyLiveArray, type LegacyManyArray, type LegacyQueryArray, type PendingPromise, type ProcessedExtension, type PromiseState, type ReactiveDataDocument, type ReactiveDocument, type ReactiveErrorDocument, type ReactiveResource, type ReactiveResourceArray, type RejectedPromise, type RequestLoadingState, type RequestState, type RequestSubscription, type ResolvedPromise, SchemaService, type Transformation, checkout, commit, createRequestSubscription, fromIdentity, getPromiseState, getRequestState, instantiateRecord, registerDerivations, teardownRecord, withDefaults };