@warp-drive-mirror/core 5.9.0-alpha.2 → 5.9.0-alpha.21

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-WybCP5W2.d.ts +41 -0
  11. package/declarations/change-WybCP5W2.d.ts.map +1 -0
  12. package/declarations/concepts-CFfLCQr6.d.ts +77 -0
  13. package/declarations/concepts-CFfLCQr6.d.ts.map +1 -0
  14. package/declarations/configure-DI1HqQpX.d.ts +164 -0
  15. package/declarations/configure-DI1HqQpX.d.ts.map +1 -0
  16. package/declarations/configure.d.ts +2 -7
  17. package/declarations/document-CRPmGrsO.d.ts +129 -0
  18. package/declarations/document-CRPmGrsO.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-Di3nFhg0.d.ts +186 -0
  25. package/declarations/graph-Di3nFhg0.d.ts.map +1 -0
  26. package/declarations/identifier-DyEvjMjb.d.ts +120 -0
  27. package/declarations/identifier-DyEvjMjb.d.ts.map +1 -0
  28. package/declarations/index.d.ts +2 -96
  29. package/declarations/internal-DMxLqCZa.d.ts +9389 -0
  30. package/declarations/internal-DMxLqCZa.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-al42_Yzp.d.ts +165 -0
  34. package/declarations/mutations-al42_Yzp.d.ts.map +1 -0
  35. package/declarations/operations-Do63dgrL.d.ts +244 -0
  36. package/declarations/operations-Do63dgrL.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-DCFv3y1J.d.ts +258 -0
  44. package/declarations/record-DCFv3y1J.d.ts.map +1 -0
  45. package/declarations/relationship-CT9mFtav.d.ts +65 -0
  46. package/declarations/relationship-CT9mFtav.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 +10363 -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 -371
  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-D4dQm2VC.js +22 -0
  86. package/dist/-private-D4dQm2VC.js.map +1 -0
  87. package/dist/-private-DDz7mWBO.js +1725 -0
  88. package/dist/-private-DDz7mWBO.js.map +1 -0
  89. package/dist/-private-DYCb3vir.js +120 -0
  90. package/dist/-private-DYCb3vir.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-CclbTH_w.js +766 -0
  105. package/dist/request-CclbTH_w.js.map +1 -0
  106. package/dist/request.js +2 -48
  107. package/dist/signals/-leaked.js +3 -1
  108. package/dist/src-DgZnLlik.js +9090 -0
  109. package/dist/src-DgZnLlik.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-9CIgW-DA.js +111 -0
  130. package/dist/unpkg/dev/-private-9CIgW-DA.js.map +1 -0
  131. package/dist/unpkg/dev/-private-B2Am6Oqc.js +22 -0
  132. package/dist/unpkg/dev/-private-B2Am6Oqc.js.map +1 -0
  133. package/dist/unpkg/dev/-private-C1QTxlMX.js +1714 -0
  134. package/dist/unpkg/dev/-private-C1QTxlMX.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-4Qkr-Uqq.js +756 -0
  149. package/dist/unpkg/dev/request-4Qkr-Uqq.js.map +1 -0
  150. package/dist/unpkg/dev/request.js +2 -48
  151. package/dist/unpkg/dev/runtime-DCk-f6iq.js +110 -0
  152. package/dist/unpkg/dev/runtime-DCk-f6iq.js.map +1 -0
  153. package/dist/unpkg/dev/signals/-leaked.js +3 -1
  154. package/dist/unpkg/dev/src-Dq17geGK.js +8194 -0
  155. package/dist/unpkg/dev/src-Dq17geGK.js.map +1 -0
  156. package/dist/unpkg/dev/store/-private.js +3 -55
  157. package/dist/unpkg/dev/store-1Jt0pxEL.js +427 -0
  158. package/dist/unpkg/dev/store-1Jt0pxEL.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-9CIgW-DA.js +111 -0
  178. package/dist/unpkg/dev-deprecated/-private-9CIgW-DA.js.map +1 -0
  179. package/dist/unpkg/dev-deprecated/-private-B2Am6Oqc.js +22 -0
  180. package/dist/unpkg/dev-deprecated/-private-B2Am6Oqc.js.map +1 -0
  181. package/dist/unpkg/dev-deprecated/-private-C1QTxlMX.js +1714 -0
  182. package/dist/unpkg/dev-deprecated/-private-C1QTxlMX.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-4Qkr-Uqq.js +756 -0
  197. package/dist/unpkg/dev-deprecated/request-4Qkr-Uqq.js.map +1 -0
  198. package/dist/unpkg/dev-deprecated/request.js +2 -48
  199. package/dist/unpkg/dev-deprecated/runtime-BmPBYlvC.js +110 -0
  200. package/dist/unpkg/dev-deprecated/runtime-BmPBYlvC.js.map +1 -0
  201. package/dist/unpkg/dev-deprecated/signals/-leaked.js +3 -1
  202. package/dist/unpkg/dev-deprecated/src-n5P9tTX4.js +8747 -0
  203. package/dist/unpkg/dev-deprecated/src-n5P9tTX4.js.map +1 -0
  204. package/dist/unpkg/dev-deprecated/store/-private.js +3 -1
  205. package/dist/unpkg/dev-deprecated/store-GrkCubY2.js +427 -0
  206. package/dist/unpkg/dev-deprecated/store-GrkCubY2.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-B2hz13Ei.js +22 -0
  226. package/dist/unpkg/prod/-private-B2hz13Ei.js.map +1 -0
  227. package/dist/unpkg/prod/-private-CFXr06QP.js +1524 -0
  228. package/dist/unpkg/prod/-private-CFXr06QP.js.map +1 -0
  229. package/dist/unpkg/prod/-private-o67f3_hS.js +99 -0
  230. package/dist/unpkg/prod/-private-o67f3_hS.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-xXJYO0jK.js +480 -0
  245. package/dist/unpkg/prod/request-xXJYO0jK.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-BXphJ7nX.js +6801 -0
  249. package/dist/unpkg/prod/src-BXphJ7nX.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-B2hz13Ei.js +22 -0
  272. package/dist/unpkg/prod-deprecated/-private-B2hz13Ei.js.map +1 -0
  273. package/dist/unpkg/prod-deprecated/-private-CFXr06QP.js +1524 -0
  274. package/dist/unpkg/prod-deprecated/-private-CFXr06QP.js.map +1 -0
  275. package/dist/unpkg/prod-deprecated/-private-o67f3_hS.js +99 -0
  276. package/dist/unpkg/prod-deprecated/-private-o67f3_hS.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-xXJYO0jK.js +480 -0
  291. package/dist/unpkg/prod-deprecated/request-xXJYO0jK.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-Bzk95Vdj.js +7234 -0
  295. package/dist/unpkg/prod-deprecated/src-Bzk95Vdj.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-BlQ9ebNX.js +0 -1940
  410. package/dist/default-cache-policy-D7_u4YRH.js +0 -572
  411. package/dist/future-CPfkKOvf.js +0 -678
  412. package/dist/index-D4jKuR0r.js +0 -10000
  413. package/dist/symbols-3C1OkYtZ.js +0 -39
  414. package/dist/unpkg/dev/-leaked-BYj8zMi0.js +0 -1939
  415. package/dist/unpkg/dev/-private-sql1_mdx.js +0 -39
  416. package/dist/unpkg/dev/future-DUuPqyLj.js +0 -672
  417. package/dist/unpkg/dev/index-BrSRAfLa.js +0 -9410
  418. package/dist/unpkg/dev/runtime-DGG4CvlW.js +0 -135
  419. package/dist/unpkg/dev-deprecated/-leaked-D0KHC8Qz.js +0 -1939
  420. package/dist/unpkg/dev-deprecated/-private-3C1OkYtZ.js +0 -39
  421. package/dist/unpkg/dev-deprecated/future-DUuPqyLj.js +0 -672
  422. package/dist/unpkg/dev-deprecated/index-RnWJEamT.js +0 -10025
  423. package/dist/unpkg/dev-deprecated/runtime-DfhJzpZH.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-DeouKoRZ.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-DlxmDxns.js +0 -5237
  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-BVKoq9bM.js +0 -334
  433. package/dist/unpkg/prod-deprecated/hooks-CfCFjO7d.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-_W00LRDb.js +0 -6957
@@ -1,234 +0,0 @@
1
- import type { Store } from "../../store/-private.js";
2
- import type { RequestKey } from "../../types/identifier.js";
3
- import type { RequestContext, RequestInfo, ResponseInfo, StructuredDataDocument } from "../../types/request.js";
4
- import type { RequestManager } from "./manager.js";
5
- export interface GodContext {
6
- controller: AbortController;
7
- response: ResponseInfo | null;
8
- stream: ReadableStream | Promise<ReadableStream | null> | null;
9
- hasRequestedStream: boolean;
10
- id: number;
11
- identifier: RequestKey | null;
12
- requester: RequestManager | Store;
13
- }
14
- export type Deferred<T> = {
15
- resolve(v: T): void;
16
- reject(v: unknown): void;
17
- promise: Promise<T>;
18
- };
19
- export type ManagedRequestPriority = {
20
- blocking: boolean;
21
- };
22
- export type DeferredStream = {
23
- resolve(v: ReadableStream | null): void;
24
- reject(v: unknown): void;
25
- promise: Promise<ReadableStream | null> & {
26
- sizeHint?: number;
27
- };
28
- };
29
- /**
30
- * A Future is a {@link Promise} which resolves or rejects with a {@link StructuredDocument}
31
- * while providing the ability to {@link Future.abort | abort} the underlying request, and
32
- * {@link Future.getStream | access the response stream} before the outer promise resolves;
33
- *
34
- * @public
35
- */
36
- export interface Future<T> extends Promise<StructuredDataDocument<T>> {
37
- /**
38
- * Cancel this request by firing the {@link AbortController}'s signal.
39
- *
40
- * This method can be used as an action or event handler as its
41
- * context is bound to the Future instance.
42
- *
43
- * @privateRemarks
44
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController/abort)
45
- *
46
- * @param reason optional reason for aborting the request
47
- * @public
48
- */
49
- abort(reason?: string): void;
50
- /**
51
- * Get the response stream, if any, once made available.
52
- *
53
- * This method can be used as an action or event handler as its
54
- * context is bound to the Future instance.
55
- *
56
- * @public
57
- */
58
- getStream(): Promise<ReadableStream | null>;
59
- /**
60
- * Run a callback when this request completes. Use sparingly,
61
- * mostly useful for instrumentation and infrastructure.
62
- *
63
- * @param cb the callback to run
64
- */
65
- onFinalize(cb: () => void): void;
66
- /**
67
- * The identifier of the associated request, if any, as
68
- * assigned by the CacheHandler.
69
- */
70
- lid: RequestKey | null;
71
- /**
72
- * The id of the associated request, if any, as assigned
73
- * by the RequestManager
74
- *
75
- * This is not unique across Manager instances and cannot
76
- * be used to identify or dedupe requests.
77
- */
78
- id: number;
79
- /**
80
- * The RequestManager or Store that initiated this request.
81
- *
82
- * @private
83
- */
84
- requester: RequestManager | Store;
85
- }
86
- export type DeferredFuture<T> = {
87
- resolve(v: StructuredDataDocument<T>): void;
88
- reject(v: unknown): void;
89
- promise: Future<T>;
90
- };
91
- export type NextFn<P = unknown> = (req: RequestInfo) => Future<P>;
92
- /**
93
- * Requests are fulfilled by handlers. A handler receives the request context
94
- as well as a `next` function with which to pass along a request to the next
95
- handler if it so chooses.
96
-
97
- A handler may be any object with a `request` method. This allows both stateful and non-stateful
98
- handlers to be utilized.
99
-
100
- If a handler calls `next`, it receives a `Future` which resolves to a `StructuredDocument`
101
- that it can then compose how it sees fit with its own response.
102
-
103
- ```ts
104
- type NextFn<P> = (req: RequestInfo) => Future<P>;
105
-
106
- interface Handler {
107
- async request<T>(context: RequestContext, next: NextFn<P>): T;
108
- }
109
- ```
110
-
111
- `RequestContext` contains a readonly version of the RequestInfo as well as a few methods for building up the `StructuredDocument` and `Future` that will be part of the response.
112
-
113
- ```ts
114
- interface RequestContext<T> {
115
- readonly request: RequestInfo;
116
-
117
- setStream(stream: ReadableStream | Promise<ReadableStream>): void;
118
- setResponse(response: Response | ResponseInfo): void;
119
- }
120
- ```
121
-
122
- A basic `fetch` handler with support for streaming content updates while
123
- the download is still underway might look like the following, where we use
124
- [`response.clone()`](https://developer.mozilla.org/en-US/docs/Web/API/Response/clone) to `tee` the `ReadableStream` into two streams.
125
-
126
- A more efficient handler might read from the response stream, building up the
127
- response content before passing along the chunk downstream.
128
-
129
- ```ts
130
- const FetchHandler = {
131
- async request(context) {
132
- const response = await fetch(context.request);
133
- context.setResponse(reponse);
134
- context.setStream(response.clone().body);
135
-
136
- return response.json();
137
- }
138
- }
139
- ```
140
-
141
- ### Stream Currying
142
-
143
- `RequestManager.request` and `next` differ from `fetch` in one **crucial detail** in that the outer Promise resolves only once the response stream has been processed.
144
-
145
- For context, it helps to understand a few of the use-cases that RequestManager
146
- is intended to allow.
147
-
148
- - to manage and return streaming content (such as video files)
149
- - to fulfill a request from multiple sources or by splitting one request into multiple requests
150
- - for instance one API call for a user and another for the user's friends
151
- - or e.g. fulfilling part of the request from one source (one API, in-memory, localStorage, IndexedDB etc.) and the rest from another source (a different API, a WebWorker, etc.)
152
- - to coalesce multiple requests
153
- - to decorate a request with additional info
154
- - e.g. an Auth handler that ensures the correct tokens or headers or cookies are attached.
155
-
156
- ----
157
-
158
- `await fetch(<req>)` resolves at the moment headers are received. This allows for the body of the request to be processed as a stream by application
159
- code *while chunks are still being received by the browser*.
160
-
161
- When an app chooses to `await response.json()` what occurs is the browser reads the stream to completion and then returns the result. Additionally, this stream may only be read **once**.
162
-
163
- The `RequestManager` preserves this ability to subscribe to and utilize the stream by either the application or the handler – thereby delivering the full power and flexibility of native APIs – without restricting developers in ways that lead to complicated workarounds.
164
-
165
- Each handler may call `setStream` only once, but may do so *at any time* until the promise that the handler returns has resolved. The associated promise returned by calling `future.getStream` will resolve with the stream set by `setStream` if that method is called, or `null` if that method
166
- has not been called by the time that the handler's request method has resolved.
167
-
168
- Handlers that do not create a stream of their own, but which call `next`, should defensively pipe the stream forward. While this is not required (see automatic currying below) it is better to do so in most cases as otherwise the stream may not become available to downstream handlers or the application until the upstream handler has fully read it.
169
-
170
- ```ts
171
- context.setStream(future.getStream());
172
- ```
173
-
174
- Handlers that either call `next` multiple times or otherwise have reason to create multiple fetch requests should either choose to return no stream, meaningfully combine the streams, or select a single prioritized stream.
175
-
176
- Of course, any handler may choose to read and handle the stream, and return either no stream or a different stream in the process.
177
-
178
- ### Automatic Currying of Stream and Response
179
-
180
- In order to simplify the common case for handlers which decorate a request, if `next` is called only a single time and `setResponse` was never called by the handler, the response set by the next handler in the chain will be applied to that handler's outcome. For instance, this makes the following pattern possible `return (await next(<req>)).content;`.
181
-
182
- Similarly, if `next` is called only a single time and neither `setStream` nor `getStream` was called, we automatically curry the stream from the future returned by `next` onto the future returned by the handler.
183
-
184
- Finally, if the return value of a handler is a `Future`, we curry `content` and `errors` as well, thus enabling the simplest form `return next(<req>)`.
185
-
186
- In the case of the `Future` being returned, `Stream` proxying is automatic and immediate and does not wait for the `Future` to resolve.
187
-
188
- ### Handler Order
189
-
190
- Request handlers are registered by configuring the manager via `use`
191
-
192
- ```ts
193
- const manager = new RequestManager()
194
- .use([Handler1, Handler2]);
195
- ```
196
-
197
- Handlers will be invoked in the order they are registered ("fifo", first-in first-out), and may only be registered up until the first request is made. It is recommended but not required to register all handlers at one time in order to ensure explicitly visible handler ordering.
198
-
199
- @public
200
- */
201
- export interface Handler {
202
- /**
203
- * Method to implement to handle requests. Receives the request
204
- * context and a nextFn to call to pass-along the request to
205
- * other handlers.
206
- *
207
- * @public
208
- */
209
- request<T = unknown>(context: RequestContext, next: NextFn<T>): Promise<T | StructuredDataDocument<T>> | Future<T>;
210
- }
211
- /**
212
- * The CacheHandler is identical to other handlers except that it
213
- * is allowed to return a value synchronously. This is useful for
214
- * features like reducing microtask queueing when de-duping.
215
- *
216
- * A RequestManager may only have one CacheHandler, registered via
217
- * `manager.useCache(CacheHandler)`.
218
- *
219
- * @public
220
- */
221
- export interface CacheHandler {
222
- /**
223
- * Method to implement to handle requests. Receives the request
224
- * context and a nextFn to call to pass-along the request to
225
- * other handlers.
226
- *
227
- * @public
228
- */
229
- request<T = unknown>(context: RequestContext, next: NextFn<T>): Promise<T | StructuredDataDocument<T>> | Future<T> | T;
230
- }
231
- export interface RequestResponse<T> {
232
- result: T;
233
- }
234
- export type GenericCreateArgs = Record<string | symbol, unknown>;
@@ -1,57 +0,0 @@
1
- import type { RequestInfo, StructuredDataDocument } from "../../types/request.js";
2
- import { ContextOwner } from "./context.js";
3
- import type { DeferredFuture, Future, GodContext, Handler } from "./types.js";
4
- export declare const IS_CACHE_HANDLER: "___(unique) Symbol(IS_CACHE_HANDLER)";
5
- export declare function curryFuture<T>(owner: ContextOwner, inbound: Future<T>, outbound: DeferredFuture<T>): Future<T>;
6
- /**
7
- * Additional properties exposed on errors thrown by the
8
- * {@link Fetch | Fetch Handler}.
9
- *
10
- * In the case of an Abort or system/browser level issue,
11
- * this extends {@link DOMException}.
12
- *
13
- * Else it extends from {@link AggregateError} if the
14
- * response includes an array of errors, falling back
15
- * to {@link Error} as its base.
16
- */
17
- export interface FetchError extends DOMException {
18
- /**
19
- * Alias for {@link FetchError.status | status}.
20
- *
21
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/status)
22
- */
23
- code: number;
24
- /**
25
- * The name associated to the {@link FetchError.status | status code}.
26
- *
27
- * Typically this will be of the formula `StatusTextError` for instance
28
- * a 404 status with status text of `Not Found` would have the name
29
- * `NotFoundError`.
30
- */
31
- name: string;
32
- /**
33
- * The http status code associated to the returned error.
34
- *
35
- * Browser/System level network errors will often have an error code of `0` or `5`.
36
- * Aborted requests will have an error code of `20`.
37
- *
38
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/status)
39
- */
40
- status: number;
41
- /**
42
- * The Status Text associated to the {@link FetchError.status | status code}
43
- * for the error.
44
- *
45
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/statusText)
46
- *
47
- */
48
- statusText: string;
49
- /**
50
- * A property signifying that an Error uses the {@link FetchError}
51
- * interface.
52
- */
53
- isRequestError: true;
54
- }
55
- export declare function enhanceReason(reason?: string): DOMException;
56
- export declare function handleOutcome<T>(owner: ContextOwner, inbound: Promise<T | StructuredDataDocument<T>>, outbound: DeferredFuture<T>): Future<T>;
57
- export declare function executeNextHandler<T>(wares: Readonly<Handler[]>, request: RequestInfo, i: number, god: GodContext): Future<T>;
@@ -1,6 +0,0 @@
1
- export { DISPOSE, createRequestSubscription, type RequestArgs, type SubscriptionArgs, type RequestComponentArgs, type RequestSubscription, type ContentFeatures, type RecoveryFeatures, type AutorefreshBehaviorCombos, type AutorefreshBehaviorType } from "./request-subscription.js";
2
- export { getRequestState, type RequestLoadingState, type RequestState } from "./request-state.js";
3
- export { getPromiseState, type PromiseState, type ResolvedPromise, type RejectedPromise, type PendingPromise } from "./promise-state.js";
4
- export { setupSignals, type HooksOptions, type SignalHooks, waitFor, willSyncFlushWatchers } from "./reactivity/configure.js";
5
- export { signal, memoized, gate, entangleSignal, entangleInitiallyStaleSignal, defineSignal, defineGate, defineNonEnumerableSignal, createSignalDescriptor } from "./reactivity/signal.js";
6
- export { type SignalStore, ARRAY_SIGNAL, OBJECT_SIGNAL, Signals, type WarpDriveSignal, peekInternalSignal, createInternalMemo, withSignalStore, notifyInternalSignal, consumeInternalSignal, getOrCreateInternalSignal, createInternalSignal } from "./reactivity/internal.js";
@@ -1,264 +0,0 @@
1
- import type { Awaitable } from "../request.js";
2
- /**
3
- * The state of a promise in the "pending"
4
- * state. This is the default initial state.
5
- *
6
- */
7
- export interface PendingPromise {
8
- /**
9
- * The status of the promise.
10
- *
11
- */
12
- status: "pending";
13
- /**
14
- * Whether the promise is pending.
15
- *
16
- */
17
- isPending: true;
18
- /**
19
- * Whether the promise is pending.
20
- *
21
- * @deprecated use `isPending` instead
22
- */
23
- isLoading: true;
24
- /**
25
- * Whether the promise has resolved
26
- * successfully.
27
- *
28
- */
29
- isSuccess: false;
30
- /**
31
- * Whether the promise has rejected
32
- * with an error.
33
- *
34
- */
35
- isError: false;
36
- /**
37
- * Once the promise has resolved, this will
38
- * be the value the promise resolved to.
39
- *
40
- */
41
- value: null;
42
- /**
43
- * Once the promise has resolved, this will
44
- * be the value the promise resolved to.
45
- *
46
- * @deprecated use `value` instead
47
- */
48
- result: null;
49
- /**
50
- * Once the promise has rejected, this will
51
- * be the error the promise rejected with.
52
- *
53
- *
54
- * @deprecated use `reason` instead
55
- */
56
- error: null;
57
- /**
58
- * Once the promise has rejected, this will
59
- * be the error the promise rejected with.
60
- *
61
- */
62
- reason: null;
63
- }
64
- /**
65
- * The state of a promise in the "fulfilled" state.
66
- * This is the state of a promise that has resolved
67
- * successfully.
68
- *
69
- */
70
- export interface ResolvedPromise<T> {
71
- /**
72
- * The status of the promise.
73
- *
74
- */
75
- status: "fulfilled";
76
- /**
77
- * Whether the promise is pending.
78
- *
79
- */
80
- isPending: false;
81
- /**
82
- * Whether the promise is pending.
83
- *
84
- * @deprecated use `isPending` instead
85
- */
86
- isLoading: false;
87
- /**
88
- * Whether the promise has resolved
89
- * successfully.
90
- *
91
- */
92
- isSuccess: true;
93
- /**
94
- * Whether the promise has rejected
95
- * with an error.
96
- *
97
- */
98
- isError: false;
99
- /**
100
- * Once the promise has resolved, this will
101
- * be the value the promise resolved to.
102
- *
103
- */
104
- value: T;
105
- /**
106
- * Once the promise has resolved, this will
107
- * be the value the promise resolved to.
108
- *
109
- * @deprecated use `value` instead
110
- */
111
- result: T;
112
- /**
113
- * Once the promise has rejected, this will
114
- * be the error the promise rejected with.
115
- *
116
- *
117
- * @deprecated use `reason` instead
118
- */
119
- error: null;
120
- /**
121
- * Once the promise has rejected, this will
122
- * be the error the promise rejected with.
123
- *
124
- */
125
- reason: null;
126
- }
127
- /**
128
- * The state of a promise in the "rejected" state.
129
- * This is the state of a promise that has rejected
130
- * with an error.
131
- *
132
- */
133
- export interface RejectedPromise<E> {
134
- /**
135
- * The status of the promise.
136
- *
137
- */
138
- status: "rejected";
139
- /**
140
- * Whether the promise is pending.
141
- *
142
- */
143
- isPending: false;
144
- /**
145
- * Whether the promise is pending.
146
- *
147
- * @deprecated use `isPending` instead
148
- */
149
- isLoading: false;
150
- /**
151
- * Whether the promise has resolved
152
- * successfully.
153
- *
154
- */
155
- isSuccess: false;
156
- /**
157
- * Whether the promise has rejected
158
- * with an error.
159
- *
160
- */
161
- isError: true;
162
- /**
163
- * Once the promise has resolved, this will
164
- * be the value the promise resolved to.
165
- *
166
- */
167
- value: null;
168
- /**
169
- * Once the promise has resolved, this will
170
- * be the value the promise resolved to.
171
- *
172
- * @deprecated use `value` instead
173
- */
174
- result: null;
175
- /**
176
- * Once the promise has rejected, this will
177
- * be the error the promise rejected with.
178
- *
179
- *
180
- * @deprecated use `reason` instead
181
- */
182
- error: E;
183
- /**
184
- * Once the promise has rejected, this will
185
- * be the error the promise rejected with.
186
- *
187
- */
188
- reason: E;
189
- }
190
- /**
191
- * The state of a promise. This is the type that is returned
192
- * from `getPromiseState`.
193
- *
194
- * See also:
195
- * - {@link PendingPromise}
196
- * - {@link ResolvedPromise}
197
- * - {@link RejectedPromise}
198
- *
199
- */
200
- export type PromiseState<
201
- T = unknown,
202
- E = unknown
203
- > = PendingPromise | ResolvedPromise<T> | RejectedPromise<E>;
204
- export declare function createPromiseState<
205
- T,
206
- E
207
- >(promise: Promise<T> | Awaitable<T, E>): Readonly<PromiseState<T, E>>;
208
- /**
209
- * Returns a reactive state-machine for the provided promise or awaitable.
210
- *
211
- * Repeat calls to `getPromiseState` with the same promise will return the same state object
212
- * making is safe and easy to use in templates and JavaScript code to produce reactive
213
- * behaviors around promises.
214
- *
215
- * `getPromiseState` can be used in both JavaScript and Template contexts.
216
- *
217
- * ```ts
218
- * import { getPromiseState } from '@warp-drive-mirror/ember';
219
- *
220
- * const state = getPromiseState(promise);
221
- * ```
222
- *
223
- * For instance, we could write a getter on a component that updates whenever
224
- * the promise state advances or the promise changes, by combining the function
225
- * with the use of `@cached`
226
- *
227
- * ```ts
228
- * class Component {
229
- * @cached
230
- * get title() {
231
- * const state = getPromiseState(this.args.request);
232
- * if (state.isPending) {
233
- * return 'loading...';
234
- * }
235
- * if (state.isError) { return null; }
236
- * return state.result.title;
237
- * }
238
- * }
239
- * ```
240
- *
241
- * Or in a template as a helper:
242
- *
243
- * ```gjs
244
- * import { getPromiseState } from '@warp-drive-mirror/ember';
245
- *
246
- * <template>
247
- * {{#let (getPromiseState @request) as |state|}}
248
- * {{#if state.isPending}} <Spinner />
249
- * {{else if state.isError}} <ErrorForm @error={{state.error}} />
250
- * {{else}}
251
- * <h1>{{state.result.title}}</h1>
252
- * {{/if}}
253
- * {{/let}}
254
- * </template>
255
- * ```
256
- *
257
- * If looking to use in a template, consider also the `<Await />` component.
258
- *
259
- * See also {@link PromiseState}
260
- */
261
- export declare function getPromiseState<
262
- T = unknown,
263
- E = unknown
264
- >(promise: Promise<T> | Awaitable<T, E>): Readonly<PromiseState<T, E>>;
@@ -1,138 +0,0 @@
1
- export declare const ARRAY_SIGNAL: "___(unique) Symbol(#[])";
2
- export declare const OBJECT_SIGNAL: "___(unique) Symbol(#{})";
3
- /**
4
- * The hooks which MUST be configured in order to use reactive arrays,
5
- * resources and documents with framework specfic signals or TC39 signals.
6
- *
7
- * Support for multiple frameworks simultaneously can be done via
8
- * this abstraction by returning multiple signals from the `createSignal`
9
- * method, and consuming the correct one via the correct framework via
10
- * the `consumeSignal` and `notifySignal` methods.
11
- *
12
- * Unlike many signals implementations, WarpDrive does not wrap values as
13
- * signals directly, but instead uses signals to alert the reactive layer
14
- * to changes in the underlying cache. E.g. a signal is associated to a value,
15
- * but does not serve as the cache for that value directly. We refer to this as
16
- * a "gate", the pattern has also been called "side-signals".
17
- *
18
- * A no-op implementation is allowed, though it may lead to performance issues
19
- * in locations that use createMemo as no memoization would be done. This is
20
- * typically desirable only when integrating with a framework that does its own
21
- * memoization and does not integrate with any signals-like primitive. For these
22
- * scenarios you may also be interested in integrating with the {@link NotificationManager}
23
- * more directly.
24
- *
25
- * @public
26
- */
27
- export interface SignalHooks<T = SignalRef> {
28
- /**
29
- * Create a signal for the given key associated to the given object.
30
- *
31
- * This method does *not* need to cache the signal, it will only be
32
- * called once for a given object and key. However, if your framework
33
- * will look for a signal cache on the object in a given location or may
34
- * have created its own signal on the object for some reason it may be
35
- * useful to ensure such cache is properly updated.
36
- */
37
- createSignal: (obj: object, key: string | symbol) => T;
38
- /**
39
- * Consume (mark as acccessed) a signal previously created via createSignal.
40
- */
41
- consumeSignal: (signal: T) => void;
42
- /**
43
- * Alert a signal previously created via createSignal that its associated value has changed.
44
- */
45
- notifySignal: (signal: T) => void;
46
- /**
47
- * Take the given function and wrap it in signals-based memoization. Analagous
48
- * to a Computed in the TC39 spec.
49
- *
50
- * Should return a function which when run provides the latest value of the original
51
- * function.
52
- */
53
- createMemo: <F>(obj: object, key: string | symbol, fn: () => F) => () => F;
54
- /**
55
- * If the signals implementation allows synchronous flushing of watchers, and
56
- * has scheduled such a flush (e.g. watchers will run before the current calling
57
- * context yields) this should return "true".
58
- *
59
- * This is generally something that should return false for anything but the few
60
- * frameworks that extensively handle their own reactivity => render scheduling.
61
- *
62
- * For an example, see EmberJS's backburner scheduler which functioned as a microtask
63
- * polyfill.
64
- */
65
- willSyncFlushWatchers: () => boolean;
66
- /**
67
- * An optional method that allows wrapping key promises within WarpDrive
68
- * for things like test-waiters.
69
- */
70
- waitFor?: <K>(promise: Promise<K>) => Promise<K>;
71
- }
72
- /**
73
- * Contains information a {@link SignalHooks} implementation may want
74
- * to use, such as the specialized key used for the signal
75
- * representing an array's contents / length.
76
- *
77
- * ```ts
78
- * interface HooksOptions {
79
- * wellknown: {
80
- * Array: symbol | string;
81
- * }
82
- * }
83
- * ```
84
- *
85
- * @public
86
- */
87
- export interface HooksOptions {
88
- /**
89
- * A list of specialized symbols/strings
90
- * used by WarpDrive to encapsulate key
91
- * reactivity concerns.
92
- */
93
- wellknown: {
94
- /**
95
- * The key used when the signal provides reactivity for the
96
- * `length` or "contents" of an array.
97
- *
98
- * Arrays only use a single signal for all accesses, regardless
99
- * of index, property or method: this one.
100
- */
101
- Array: symbol | string;
102
- };
103
- }
104
- /**
105
- * Configures the signals implementation to use. Supports multiple
106
- * implementations simultaneously.
107
- *
108
- * See {@link HooksOptions} for the options passed to the provided function
109
- * when called.
110
- *
111
- * See {@link SignalHooks} for the implementation the callback function should
112
- * return.
113
- *
114
- * @public
115
- * @param buildConfig - a function that takes options and returns a configuration object
116
- */
117
- export declare function setupSignals<T>(buildConfig: (options: HooksOptions) => SignalHooks<T>): void;
118
- /**
119
- * Internal method for consuming the configured `createSignal` hook
120
- *
121
- * @private
122
- */
123
- export declare function createSignal(obj: object, key: string | symbol): SignalRef;
124
- /**
125
- * Internal method for consuming the configured `consumeSignal` hook
126
- *
127
- * @private
128
- */
129
- export declare function consumeSignal(signal: SignalRef): void;
130
- /**
131
- * Internal method for consuming the configured `notifySignal` hook
132
- *
133
- * @private
134
- */
135
- export declare function notifySignal(signal: SignalRef): void;
136
- export declare function createMemo<T>(object: object, key: string | symbol, fn: () => T): () => T;
137
- export declare function willSyncFlushWatchers(): boolean;
138
- export declare function waitFor<K>(promise: Promise<K>): Promise<K>;