@warp-drive/core 5.6.0-alpha.15 → 5.6.0-alpha.17

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 (286) hide show
  1. package/declarations/build-config/babel-macros.d.ts +1 -2
  2. package/declarations/build-config/canary-features.d.ts +1 -2
  3. package/declarations/build-config/debugging.d.ts +1 -2
  4. package/declarations/build-config/deprecations.d.ts +1 -2
  5. package/declarations/build-config/env.d.ts +1 -2
  6. package/declarations/build-config/macros.d.ts +1 -2
  7. package/declarations/build-config.d.ts +1 -2
  8. package/declarations/configure.d.ts +6 -7
  9. package/declarations/graph/-private/-diff.d.ts +21 -22
  10. package/declarations/graph/-private/-edge-definition.d.ts +134 -135
  11. package/declarations/graph/-private/-state.d.ts +93 -7
  12. package/declarations/graph/-private/-utils.d.ts +18 -13
  13. package/declarations/graph/-private/coerce-id.d.ts +6 -1
  14. package/declarations/graph/-private/debug/assert-polymorphic-type.d.ts +15 -4
  15. package/declarations/graph/-private/edges/collection.d.ts +35 -36
  16. package/declarations/graph/-private/edges/implicit.d.ts +28 -29
  17. package/declarations/graph/-private/edges/resource.d.ts +19 -20
  18. package/declarations/graph/-private/graph.d.ts +83 -48
  19. package/declarations/graph/-private/normalize-link.d.ts +7 -2
  20. package/declarations/graph/-private/operations/add-to-related-records.d.ts +3 -4
  21. package/declarations/graph/-private/operations/merge-identifier.d.ts +2 -3
  22. package/declarations/graph/-private/operations/remove-from-related-records.d.ts +3 -4
  23. package/declarations/graph/-private/operations/replace-related-record.d.ts +2 -3
  24. package/declarations/graph/-private/operations/replace-related-records.d.ts +58 -4
  25. package/declarations/graph/-private/operations/update-relationship.d.ts +11 -9
  26. package/declarations/graph/-private.d.ts +9 -10
  27. package/declarations/index.d.ts +11 -12
  28. package/declarations/reactive/-private/document.d.ts +143 -144
  29. package/declarations/reactive/-private/fields/compute.d.ts +31 -28
  30. package/declarations/reactive/-private/fields/extension.d.ts +2 -3
  31. package/declarations/reactive/-private/fields/managed-array.d.ts +19 -20
  32. package/declarations/reactive/-private/fields/managed-object.d.ts +16 -16
  33. package/declarations/reactive/-private/fields/many-array-manager.d.ts +15 -16
  34. package/declarations/reactive/-private/hooks.d.ts +3 -4
  35. package/declarations/reactive/-private/record.d.ts +61 -59
  36. package/declarations/reactive/-private/schema.d.ts +242 -224
  37. package/declarations/reactive/-private/symbols.d.ts +26 -1
  38. package/declarations/reactive/-private.d.ts +1 -2
  39. package/declarations/reactive.d.ts +4 -5
  40. package/declarations/request/-private/context.d.ts +34 -35
  41. package/declarations/request/-private/debug.d.ts +2 -3
  42. package/declarations/request/-private/fetch.d.ts +23 -24
  43. package/declarations/request/-private/future.d.ts +3 -4
  44. package/declarations/request/-private/manager.d.ts +159 -157
  45. package/declarations/request/-private/promise-cache.d.ts +21 -13
  46. package/declarations/request/-private/types.d.ts +124 -124
  47. package/declarations/request/-private/utils.d.ts +8 -9
  48. package/declarations/request.d.ts +5 -6
  49. package/declarations/store/-private/cache-handler/handler.d.ts +57 -52
  50. package/declarations/store/-private/cache-handler/types.d.ts +95 -96
  51. package/declarations/store/-private/cache-handler/utils.d.ts +16 -16
  52. package/declarations/store/-private/caches/cache-utils.d.ts +7 -4
  53. package/declarations/store/-private/caches/identifier-cache.d.ts +234 -246
  54. package/declarations/store/-private/caches/instance-cache.d.ts +47 -47
  55. package/declarations/store/-private/caches/resource-utils.d.ts +3 -4
  56. package/declarations/store/-private/debug/utils.d.ts +6 -7
  57. package/declarations/store/-private/default-cache-policy.d.ts +362 -361
  58. package/declarations/store/-private/legacy-model-support/record-reference.d.ts +154 -159
  59. package/declarations/store/-private/legacy-model-support/shim-model-class.d.ts +14 -14
  60. package/declarations/store/-private/managers/cache-capabilities-manager.d.ts +21 -22
  61. package/declarations/store/-private/managers/cache-manager.d.ts +440 -425
  62. package/declarations/store/-private/managers/notification-manager.d.ts +88 -83
  63. package/declarations/store/-private/managers/record-array-manager.d.ts +89 -90
  64. package/declarations/store/-private/network/request-cache.d.ts +86 -83
  65. package/declarations/store/-private/new-core-tmp/promise-state.d.ts +252 -244
  66. package/declarations/store/-private/new-core-tmp/reactivity/configure.d.ts +154 -155
  67. package/declarations/store/-private/new-core-tmp/reactivity/internal.d.ts +148 -149
  68. package/declarations/store/-private/new-core-tmp/reactivity/signal.d.ts +28 -23
  69. package/declarations/store/-private/new-core-tmp/request-state.d.ts +263 -241
  70. package/declarations/store/-private/new-core-tmp/request-subscription.d.ts +253 -223
  71. package/declarations/store/-private/record-arrays/identifier-array.d.ts +125 -121
  72. package/declarations/store/-private/record-arrays/many-array.d.ts +180 -184
  73. package/declarations/store/-private/record-arrays/native-proxy-type-fix.d.ts +120 -110
  74. package/declarations/store/-private/store-service.d.ts +1594 -1586
  75. package/declarations/store/-private/utils/coerce-id.d.ts +6 -1
  76. package/declarations/store/-private/utils/construct-resource.d.ts +1 -2
  77. package/declarations/store/-private/utils/is-non-empty-string.d.ts +0 -1
  78. package/declarations/store/-private/utils/normalize-model-name.d.ts +0 -1
  79. package/declarations/store/-private/utils/uuid-polyfill.d.ts +0 -1
  80. package/declarations/store/-private.d.ts +31 -28
  81. package/declarations/store/-types/q/cache-capabilities-manager.d.ts +96 -97
  82. package/declarations/store/-types/q/ds-model.d.ts +17 -18
  83. package/declarations/store/-types/q/identifier.d.ts +11 -12
  84. package/declarations/store/-types/q/record-instance.d.ts +16 -17
  85. package/declarations/store/-types/q/schema-service.d.ts +346 -343
  86. package/declarations/store/-types/q/store.d.ts +25 -28
  87. package/declarations/store.d.ts +1 -2
  88. package/declarations/types/-private.d.ts +16 -8
  89. package/declarations/types/cache/aliases.d.ts +11 -1
  90. package/declarations/types/cache/change.d.ts +4 -5
  91. package/declarations/types/cache/mutations.d.ts +51 -28
  92. package/declarations/types/cache/operations.d.ts +60 -47
  93. package/declarations/types/cache/relationship.d.ts +11 -9
  94. package/declarations/types/cache.d.ts +495 -484
  95. package/declarations/types/graph.d.ts +31 -32
  96. package/declarations/types/identifier.d.ts +83 -82
  97. package/declarations/types/json/raw.d.ts +1 -2
  98. package/declarations/types/params.d.ts +4 -5
  99. package/declarations/types/record.d.ts +117 -76
  100. package/declarations/types/request.d.ts +289 -266
  101. package/declarations/types/runtime.d.ts +8 -9
  102. package/declarations/types/schema/concepts.d.ts +19 -13
  103. package/declarations/types/schema/fields.d.ts +1712 -1713
  104. package/declarations/types/schema/fields.type-test.d.ts +0 -1
  105. package/declarations/types/spec/document.d.ts +28 -22
  106. package/declarations/types/spec/error.d.ts +16 -17
  107. package/declarations/types/spec/json-api-raw.d.ts +102 -102
  108. package/declarations/types/symbols.d.ts +74 -75
  109. package/declarations/types/utils.d.ts +5 -5
  110. package/declarations/types.d.ts +10 -11
  111. package/declarations/utils/string.d.ts +43 -40
  112. package/dist/graph/-private.js +1 -1
  113. package/dist/{handler-D1C3Innj.js → handler-C2T-IyJK.js} +1 -1
  114. package/dist/index.js +2 -2
  115. package/dist/reactive/-private.js +1 -1
  116. package/dist/reactive.js +42 -73
  117. package/dist/{request-state-CCOJIj5i.js → request-state-CjLph1LP.js} +275 -261
  118. package/dist/store/-private.js +2 -2
  119. package/dist/{symbols-epHW0Vm9.js → symbols-SIstXMLI.js} +1 -1
  120. package/dist/types/-private.js +1 -1
  121. package/package.json +4 -4
  122. package/declarations/build-config/babel-macros.d.ts.map +0 -1
  123. package/declarations/build-config/canary-features.d.ts.map +0 -1
  124. package/declarations/build-config/debugging.d.ts.map +0 -1
  125. package/declarations/build-config/deprecations.d.ts.map +0 -1
  126. package/declarations/build-config/env.d.ts.map +0 -1
  127. package/declarations/build-config/macros.d.ts.map +0 -1
  128. package/declarations/build-config.d.ts.map +0 -1
  129. package/declarations/configure.d.ts.map +0 -1
  130. package/declarations/graph/-private/-diff.d.ts.map +0 -1
  131. package/declarations/graph/-private/-edge-definition.d.ts.map +0 -1
  132. package/declarations/graph/-private/-state.d.ts.map +0 -1
  133. package/declarations/graph/-private/-utils.d.ts.map +0 -1
  134. package/declarations/graph/-private/coerce-id.d.ts.map +0 -1
  135. package/declarations/graph/-private/debug/assert-polymorphic-type.d.ts.map +0 -1
  136. package/declarations/graph/-private/edges/collection.d.ts.map +0 -1
  137. package/declarations/graph/-private/edges/implicit.d.ts.map +0 -1
  138. package/declarations/graph/-private/edges/resource.d.ts.map +0 -1
  139. package/declarations/graph/-private/graph.d.ts.map +0 -1
  140. package/declarations/graph/-private/normalize-link.d.ts.map +0 -1
  141. package/declarations/graph/-private/operations/add-to-related-records.d.ts.map +0 -1
  142. package/declarations/graph/-private/operations/merge-identifier.d.ts.map +0 -1
  143. package/declarations/graph/-private/operations/remove-from-related-records.d.ts.map +0 -1
  144. package/declarations/graph/-private/operations/replace-related-record.d.ts.map +0 -1
  145. package/declarations/graph/-private/operations/replace-related-records.d.ts.map +0 -1
  146. package/declarations/graph/-private/operations/update-relationship.d.ts.map +0 -1
  147. package/declarations/graph/-private.d.ts.map +0 -1
  148. package/declarations/index.d.ts.map +0 -1
  149. package/declarations/reactive/-private/document.d.ts.map +0 -1
  150. package/declarations/reactive/-private/fields/compute.d.ts.map +0 -1
  151. package/declarations/reactive/-private/fields/extension.d.ts.map +0 -1
  152. package/declarations/reactive/-private/fields/managed-array.d.ts.map +0 -1
  153. package/declarations/reactive/-private/fields/managed-object.d.ts.map +0 -1
  154. package/declarations/reactive/-private/fields/many-array-manager.d.ts.map +0 -1
  155. package/declarations/reactive/-private/hooks.d.ts.map +0 -1
  156. package/declarations/reactive/-private/record.d.ts.map +0 -1
  157. package/declarations/reactive/-private/schema.d.ts.map +0 -1
  158. package/declarations/reactive/-private/symbols.d.ts.map +0 -1
  159. package/declarations/reactive/-private.d.ts.map +0 -1
  160. package/declarations/reactive.d.ts.map +0 -1
  161. package/declarations/request/-private/context.d.ts.map +0 -1
  162. package/declarations/request/-private/debug.d.ts.map +0 -1
  163. package/declarations/request/-private/fetch.d.ts.map +0 -1
  164. package/declarations/request/-private/future.d.ts.map +0 -1
  165. package/declarations/request/-private/manager.d.ts.map +0 -1
  166. package/declarations/request/-private/promise-cache.d.ts.map +0 -1
  167. package/declarations/request/-private/types.d.ts.map +0 -1
  168. package/declarations/request/-private/utils.d.ts.map +0 -1
  169. package/declarations/request.d.ts.map +0 -1
  170. package/declarations/store/-private/cache-handler/handler.d.ts.map +0 -1
  171. package/declarations/store/-private/cache-handler/types.d.ts.map +0 -1
  172. package/declarations/store/-private/cache-handler/utils.d.ts.map +0 -1
  173. package/declarations/store/-private/caches/cache-utils.d.ts.map +0 -1
  174. package/declarations/store/-private/caches/identifier-cache.d.ts.map +0 -1
  175. package/declarations/store/-private/caches/instance-cache.d.ts.map +0 -1
  176. package/declarations/store/-private/caches/resource-utils.d.ts.map +0 -1
  177. package/declarations/store/-private/debug/utils.d.ts.map +0 -1
  178. package/declarations/store/-private/default-cache-policy.d.ts.map +0 -1
  179. package/declarations/store/-private/legacy-model-support/record-reference.d.ts.map +0 -1
  180. package/declarations/store/-private/legacy-model-support/shim-model-class.d.ts.map +0 -1
  181. package/declarations/store/-private/managers/cache-capabilities-manager.d.ts.map +0 -1
  182. package/declarations/store/-private/managers/cache-manager.d.ts.map +0 -1
  183. package/declarations/store/-private/managers/notification-manager.d.ts.map +0 -1
  184. package/declarations/store/-private/managers/record-array-manager.d.ts.map +0 -1
  185. package/declarations/store/-private/network/request-cache.d.ts.map +0 -1
  186. package/declarations/store/-private/new-core-tmp/promise-state.d.ts.map +0 -1
  187. package/declarations/store/-private/new-core-tmp/reactivity/configure.d.ts.map +0 -1
  188. package/declarations/store/-private/new-core-tmp/reactivity/internal.d.ts.map +0 -1
  189. package/declarations/store/-private/new-core-tmp/reactivity/signal.d.ts.map +0 -1
  190. package/declarations/store/-private/new-core-tmp/request-state.d.ts.map +0 -1
  191. package/declarations/store/-private/new-core-tmp/request-subscription.d.ts.map +0 -1
  192. package/declarations/store/-private/record-arrays/identifier-array.d.ts.map +0 -1
  193. package/declarations/store/-private/record-arrays/many-array.d.ts.map +0 -1
  194. package/declarations/store/-private/record-arrays/native-proxy-type-fix.d.ts.map +0 -1
  195. package/declarations/store/-private/store-service.d.ts.map +0 -1
  196. package/declarations/store/-private/store-service.type-test.d.ts +0 -2
  197. package/declarations/store/-private/store-service.type-test.d.ts.map +0 -1
  198. package/declarations/store/-private/utils/coerce-id.d.ts.map +0 -1
  199. package/declarations/store/-private/utils/construct-resource.d.ts.map +0 -1
  200. package/declarations/store/-private/utils/is-non-empty-string.d.ts.map +0 -1
  201. package/declarations/store/-private/utils/normalize-model-name.d.ts.map +0 -1
  202. package/declarations/store/-private/utils/uuid-polyfill.d.ts.map +0 -1
  203. package/declarations/store/-private.d.ts.map +0 -1
  204. package/declarations/store/-types/q/cache-capabilities-manager.d.ts.map +0 -1
  205. package/declarations/store/-types/q/ds-model.d.ts.map +0 -1
  206. package/declarations/store/-types/q/identifier.d.ts.map +0 -1
  207. package/declarations/store/-types/q/promise-proxies.d.ts +0 -2
  208. package/declarations/store/-types/q/promise-proxies.d.ts.map +0 -1
  209. package/declarations/store/-types/q/record-data-json-api.d.ts +0 -31
  210. package/declarations/store/-types/q/record-data-json-api.d.ts.map +0 -1
  211. package/declarations/store/-types/q/record-instance.d.ts.map +0 -1
  212. package/declarations/store/-types/q/schema-service.d.ts.map +0 -1
  213. package/declarations/store/-types/q/store.d.ts.map +0 -1
  214. package/declarations/store.d.ts.map +0 -1
  215. package/declarations/types/-private.d.ts.map +0 -1
  216. package/declarations/types/cache/aliases.d.ts.map +0 -1
  217. package/declarations/types/cache/change.d.ts.map +0 -1
  218. package/declarations/types/cache/mutations.d.ts.map +0 -1
  219. package/declarations/types/cache/operations.d.ts.map +0 -1
  220. package/declarations/types/cache/relationship.d.ts.map +0 -1
  221. package/declarations/types/cache.d.ts.map +0 -1
  222. package/declarations/types/graph.d.ts.map +0 -1
  223. package/declarations/types/identifier.d.ts.map +0 -1
  224. package/declarations/types/json/raw.d.ts.map +0 -1
  225. package/declarations/types/params.d.ts.map +0 -1
  226. package/declarations/types/record.d.ts.map +0 -1
  227. package/declarations/types/record.type-test.d.ts +0 -2
  228. package/declarations/types/record.type-test.d.ts.map +0 -1
  229. package/declarations/types/request.d.ts.map +0 -1
  230. package/declarations/types/request.type-test.d.ts +0 -2
  231. package/declarations/types/request.type-test.d.ts.map +0 -1
  232. package/declarations/types/runtime.d.ts.map +0 -1
  233. package/declarations/types/schema/concepts.d.ts.map +0 -1
  234. package/declarations/types/schema/fields.d.ts.map +0 -1
  235. package/declarations/types/schema/fields.type-test.d.ts.map +0 -1
  236. package/declarations/types/spec/document.d.ts.map +0 -1
  237. package/declarations/types/spec/error.d.ts.map +0 -1
  238. package/declarations/types/spec/json-api-raw.d.ts.map +0 -1
  239. package/declarations/types/symbols.d.ts.map +0 -1
  240. package/declarations/types/utils.d.ts.map +0 -1
  241. package/declarations/types.d.ts.map +0 -1
  242. package/declarations/utils/string.d.ts.map +0 -1
  243. package/dist/build-config/babel-macros.js.map +0 -1
  244. package/dist/build-config/canary-features.js.map +0 -1
  245. package/dist/build-config/debugging.js.map +0 -1
  246. package/dist/build-config/deprecations.js.map +0 -1
  247. package/dist/build-config/env.js.map +0 -1
  248. package/dist/build-config/macros.js.map +0 -1
  249. package/dist/build-config.js.map +0 -1
  250. package/dist/configure-B48bFHOl.js.map +0 -1
  251. package/dist/configure.js.map +0 -1
  252. package/dist/context-COmAnXUQ.js.map +0 -1
  253. package/dist/graph/-private.js.map +0 -1
  254. package/dist/handler-D1C3Innj.js.map +0 -1
  255. package/dist/index.js.map +0 -1
  256. package/dist/reactive/-private.js.map +0 -1
  257. package/dist/reactive.js.map +0 -1
  258. package/dist/request-state-CCOJIj5i.js.map +0 -1
  259. package/dist/request.js.map +0 -1
  260. package/dist/store/-private.js.map +0 -1
  261. package/dist/store.js.map +0 -1
  262. package/dist/symbols-epHW0Vm9.js.map +0 -1
  263. package/dist/types/-private.js.map +0 -1
  264. package/dist/types/cache/aliases.js.map +0 -1
  265. package/dist/types/cache/change.js.map +0 -1
  266. package/dist/types/cache/mutations.js.map +0 -1
  267. package/dist/types/cache/operations.js.map +0 -1
  268. package/dist/types/cache/relationship.js.map +0 -1
  269. package/dist/types/cache.js.map +0 -1
  270. package/dist/types/graph.js.map +0 -1
  271. package/dist/types/identifier.js.map +0 -1
  272. package/dist/types/json/raw.js.map +0 -1
  273. package/dist/types/params.js.map +0 -1
  274. package/dist/types/record.js.map +0 -1
  275. package/dist/types/request.js.map +0 -1
  276. package/dist/types/runtime.js.map +0 -1
  277. package/dist/types/schema/concepts.js.map +0 -1
  278. package/dist/types/schema/fields.js.map +0 -1
  279. package/dist/types/schema/fields.type-test.js.map +0 -1
  280. package/dist/types/spec/document.js.map +0 -1
  281. package/dist/types/spec/error.js.map +0 -1
  282. package/dist/types/spec/json-api-raw.js.map +0 -1
  283. package/dist/types/symbols.js.map +0 -1
  284. package/dist/types/utils.js.map +0 -1
  285. package/dist/types.js.map +0 -1
  286. package/dist/utils/string.js.map +0 -1
@@ -1,164 +1,159 @@
1
- import type { StableRecordIdentifier } from '../../../types/identifier.ts';
2
- import type { SingleResourceDocument } from '../../../types/spec/json-api-raw.ts';
3
- import type { OpaqueRecordInstance } from '../../-types/q/record-instance.ts';
4
- import type { Store } from '../store-service.ts';
1
+ import type { StableRecordIdentifier } from "../../../types/identifier.js";
2
+ import type { SingleResourceDocument } from "../../../types/spec/json-api-raw.js";
3
+ import type { OpaqueRecordInstance } from "../../-types/q/record-instance.js";
4
+ import type { Store } from "../store-service.js";
5
5
  /**
6
- A `RecordReference` is a low-level API that allows users and
7
- addon authors to perform meta-operations on a record.
6
+ A `RecordReference` is a low-level API that allows users and
7
+ addon authors to perform meta-operations on a record.
8
8
 
9
- @class RecordReference
10
- @public
9
+ @hideconstructor
10
+ @public
11
11
  */
12
12
  export default class RecordReference {
13
- store: Store;
14
- ___token: object;
15
- ___identifier: StableRecordIdentifier;
16
- _ref: number;
17
- constructor(store: Store, identifier: StableRecordIdentifier);
18
- destroy(): void;
19
- get type(): string;
20
- /**
21
- The `id` of the record that this reference refers to.
22
-
23
- Together, the `type` and `id` properties form a composite key for
24
- the identity map.
25
-
26
- Example
27
-
28
- ```javascript
29
- let userRef = store.getReference('user', 1);
30
-
31
- userRef.id(); // '1'
32
- ```
33
-
34
- @public
35
- @return {String} The id of the record.
36
- */
37
- id(): string | null;
38
- /**
39
- The `identifier` of the record that this reference refers to.
40
-
41
- Together, the `type` and `id` properties form a composite key for
42
- the identity map.
43
-
44
- Example
45
-
46
- ```javascript
47
- let userRef = store.getReference('user', 1);
48
-
49
- userRef.identifier(); // '1'
50
- ```
51
-
52
- @public
53
- @return {String} The identifier of the record.
54
- */
55
- identifier(): StableRecordIdentifier;
56
- /**
57
- How the reference will be looked up when it is loaded. Currently
58
- this always returns `identity` to signify that a record will be
59
- loaded by its `type` and `id`.
60
-
61
- Example
62
-
63
- ```javascript
64
- const userRef = store.getReference('user', 1);
65
-
66
- userRef.remoteType(); // 'identity'
67
- ```
68
-
69
- @public
70
- @return {String} 'identity'
71
- */
72
- remoteType(): 'identity';
73
- /**
74
- This API allows you to provide a reference with new data. The
75
- simplest usage of this API is similar to `store.push`: you provide a
76
- normalized hash of data and the object represented by the reference
77
- will update.
78
-
79
- If you pass a promise to `push`, Ember Data will not ask the adapter
80
- for the data if another attempt to fetch it is made in the
81
- interim. When the promise resolves, the underlying object is updated
82
- with the new data, and the promise returned by *this function* is resolved
83
- with that object.
84
-
85
- For example, `recordReference.push(promise)` will be resolved with a
86
- record.
87
-
88
- Example
89
-
90
- ```javascript
91
- let userRef = store.getReference('user', 1);
92
-
93
- // provide data for reference
94
- userRef.push({
95
- data: {
96
- id: "1",
97
- type: "user",
98
- attributes: {
99
- username: "@user"
100
- }
101
- }
102
- }).then(function(user) {
103
- userRef.value() === user;
104
- });
105
- ```
106
-
107
- @public
108
- @param objectOrPromise a JSON:API ResourceDocument or a promise resolving to one
109
- @return a promise for the value (record or relationship)
110
- */
111
- push(objectOrPromise: SingleResourceDocument | Promise<SingleResourceDocument>): Promise<OpaqueRecordInstance>;
112
- /**
113
- If the entity referred to by the reference is already loaded, it is
114
- present as `reference.value`. Otherwise the value returned by this function
115
- is `null`.
116
-
117
- Example
118
-
119
- ```javascript
120
- let userRef = store.getReference('user', 1);
121
-
122
- userRef.value(); // user
123
- ```
124
-
125
- @public
126
- @return {Model} the record for this RecordReference
127
- */
128
- value(): OpaqueRecordInstance | null;
129
- /**
130
- Triggers a fetch for the backing entity based on its `remoteType`
131
- (see `remoteType` definitions per reference type).
132
-
133
- Example
134
-
135
- ```javascript
136
- let userRef = store.getReference('user', 1);
137
-
138
- // load user (via store.find)
139
- userRef.load().then(...)
140
- ```
141
-
142
- @public
143
- @return {Promise<record>} the record for this RecordReference
144
- */
145
- load(): Promise<unknown>;
146
- /**
147
- Reloads the record if it is already loaded. If the record is not
148
- loaded it will load the record via `store.findRecord`
149
-
150
- Example
151
-
152
- ```javascript
153
- let userRef = store.getReference('user', 1);
154
-
155
- // or trigger a reload
156
- userRef.reload().then(...)
157
- ```
158
-
159
- @public
160
- @return {Promise<record>} the record for this RecordReference
161
- */
162
- reload(): Promise<unknown>;
13
+ private store;
14
+ // unsubscribe token given to us by the notification manager
15
+ private ___token;
16
+ private ___identifier;
17
+ private _ref;
18
+ constructor(store: Store, identifier: StableRecordIdentifier);
19
+ /** @internal */
20
+ destroy(): void;
21
+ get type(): string;
22
+ /**
23
+ The `id` of the record that this reference refers to.
24
+
25
+ Together, the `type` and `id` properties form a composite key for
26
+ the identity map.
27
+
28
+ Example
29
+
30
+ ```javascript
31
+ let userRef = store.getReference('user', 1);
32
+
33
+ userRef.id(); // '1'
34
+ ```
35
+
36
+ @public
37
+ */
38
+ id(): string | null;
39
+ /**
40
+ The `identifier` of the record that this reference refers to.
41
+
42
+ Together, the `type` and `id` properties form a composite key for
43
+ the identity map.
44
+
45
+ Example
46
+
47
+ ```javascript
48
+ let userRef = store.getReference('user', 1);
49
+
50
+ userRef.identifier(); // '1'
51
+ ```
52
+
53
+ @public
54
+ */
55
+ identifier(): StableRecordIdentifier;
56
+ /**
57
+ How the reference will be looked up when it is loaded. Currently
58
+ this always returns `identity` to signify that a record will be
59
+ loaded by its `type` and `id`.
60
+
61
+ Example
62
+
63
+ ```javascript
64
+ const userRef = store.getReference('user', 1);
65
+
66
+ userRef.remoteType(); // 'identity'
67
+ ```
68
+
69
+ @public
70
+ */
71
+ remoteType(): "identity";
72
+ /**
73
+ This API allows you to provide a reference with new data. The
74
+ simplest usage of this API is similar to `store.push`: you provide a
75
+ normalized hash of data and the object represented by the reference
76
+ will update.
77
+
78
+ If you pass a promise to `push`, Ember Data will not ask the adapter
79
+ for the data if another attempt to fetch it is made in the
80
+ interim. When the promise resolves, the underlying object is updated
81
+ with the new data, and the promise returned by *this function* is resolved
82
+ with that object.
83
+
84
+ For example, `recordReference.push(promise)` will be resolved with a
85
+ record.
86
+
87
+ Example
88
+
89
+ ```javascript
90
+ let userRef = store.getReference('user', 1);
91
+
92
+ // provide data for reference
93
+ userRef.push({
94
+ data: {
95
+ id: "1",
96
+ type: "user",
97
+ attributes: {
98
+ username: "@user"
99
+ }
100
+ }
101
+ }).then(function(user) {
102
+ userRef.value() === user;
103
+ });
104
+ ```
105
+
106
+ @public
107
+ @param objectOrPromise a JSON:API ResourceDocument or a promise resolving to one
108
+ @return a promise for the value (record or relationship)
109
+ */
110
+ push(objectOrPromise: SingleResourceDocument | Promise<SingleResourceDocument>): Promise<OpaqueRecordInstance>;
111
+ /**
112
+ If the entity referred to by the reference is already loaded, it is
113
+ present as `reference.value`. Otherwise the value returned by this function
114
+ is `null`.
115
+
116
+ Example
117
+
118
+ ```javascript
119
+ let userRef = store.getReference('user', 1);
120
+
121
+ userRef.value(); // user
122
+ ```
123
+
124
+ @public
125
+ */
126
+ value(): OpaqueRecordInstance | null;
127
+ /**
128
+ Triggers a fetch for the backing entity based on its `remoteType`
129
+ (see `remoteType` definitions per reference type).
130
+
131
+ Example
132
+
133
+ ```javascript
134
+ let userRef = store.getReference('user', 1);
135
+
136
+ // load user (via store.find)
137
+ userRef.load().then(...)
138
+ ```
139
+
140
+ @public
141
+ */
142
+ load(): Promise<OpaqueRecordInstance>;
143
+ /**
144
+ Reloads the record if it is already loaded. If the record is not
145
+ loaded it will load the record via `store.findRecord`
146
+
147
+ Example
148
+
149
+ ```javascript
150
+ let userRef = store.getReference('user', 1);
151
+
152
+ // or trigger a reload
153
+ userRef.reload().then(...)
154
+ ```
155
+
156
+ @public
157
+ */
158
+ reload(): Promise<OpaqueRecordInstance>;
163
159
  }
164
- //# sourceMappingURL=record-reference.d.ts.map
@@ -1,17 +1,17 @@
1
- import type { TypedRecordInstance, TypeFromInstance } from '../../../types/record.ts';
2
- import type { LegacyAttributeField, LegacyRelationshipField } from '../../../types/schema/fields.ts';
3
- import type { KeyOrString, ModelSchema } from '../../-types/q/ds-model.ts';
4
- import type { Store } from '../store-service.ts';
1
+ import type { TypedRecordInstance, TypeFromInstance } from "../../../types/record.js";
2
+ import type { LegacyAttributeField, LegacyRelationshipField } from "../../../types/schema/fields.js";
3
+ import type { KeyOrString, ModelSchema } from "../../-types/q/ds-model.js";
4
+ import type { Store } from "../store-service.js";
5
5
  export declare function getShimClass<T>(store: Store, modelName: T extends TypedRecordInstance ? TypeFromInstance<T> : string): ShimModelClass<T>;
6
+ // Mimics the static apis of @ember-data/model
6
7
  export default class ShimModelClass<T = unknown> implements ModelSchema<T> {
7
- __store: Store;
8
- modelName: T extends TypedRecordInstance ? TypeFromInstance<T> : string;
9
- constructor(store: Store, modelName: T extends TypedRecordInstance ? TypeFromInstance<T> : string);
10
- get fields(): Map<KeyOrString<T>, 'attribute' | 'belongsTo' | 'hasMany'>;
11
- get attributes(): Map<KeyOrString<T>, LegacyAttributeField>;
12
- get relationshipsByName(): Map<KeyOrString<T>, LegacyRelationshipField>;
13
- eachAttribute<K extends KeyOrString<T>>(callback: (key: K, attribute: LegacyAttributeField) => void, binding?: T): void;
14
- eachRelationship<K extends KeyOrString<T>>(callback: (key: K, relationship: LegacyRelationshipField) => void, binding?: T): void;
15
- eachTransformedAttribute<K extends KeyOrString<T>>(callback: (key: K, type: string | null) => void, binding?: T): void;
8
+ private __store;
9
+ modelName: T extends TypedRecordInstance ? TypeFromInstance<T> : string;
10
+ constructor(store: Store, modelName: T extends TypedRecordInstance ? TypeFromInstance<T> : string);
11
+ get fields(): Map<KeyOrString<T>, "attribute" | "belongsTo" | "hasMany">;
12
+ get attributes(): Map<KeyOrString<T>, LegacyAttributeField>;
13
+ get relationshipsByName(): Map<KeyOrString<T>, LegacyRelationshipField>;
14
+ eachAttribute<K extends KeyOrString<T>>(callback: (key: K, attribute: LegacyAttributeField) => void, binding?: T): void;
15
+ eachRelationship<K extends KeyOrString<T>>(callback: (key: K, relationship: LegacyRelationshipField) => void, binding?: T): void;
16
+ eachTransformedAttribute<K extends KeyOrString<T>>(callback: (key: K, type: string | null) => void, binding?: T): void;
16
17
  }
17
- //# sourceMappingURL=shim-model-class.d.ts.map
@@ -1,26 +1,25 @@
1
- import type { StableDocumentIdentifier, StableRecordIdentifier } from '../../../types/identifier.ts';
2
- import type { CacheCapabilitiesManager as StoreWrapper } from '../../-types/q/cache-capabilities-manager.ts';
3
- import type { SchemaService } from '../../-types/q/schema-service.ts';
4
- import type { IdentifierCache } from '../caches/identifier-cache.ts';
5
- import type { Store } from '../store-service.ts';
6
- import type { NotificationType } from './notification-manager.ts';
1
+ import type { StableDocumentIdentifier, StableRecordIdentifier } from "../../../types/identifier.js";
2
+ import type { CacheCapabilitiesManager as StoreWrapper } from "../../-types/q/cache-capabilities-manager.js";
3
+ import type { SchemaService } from "../../-types/q/schema-service.js";
4
+ import type { IdentifierCache } from "../caches/identifier-cache.js";
5
+ import type { Store } from "../store-service.js";
6
+ import type { NotificationType } from "./notification-manager.js";
7
7
  export interface CacheCapabilitiesManager {
8
- getSchemaDefinitionService(): SchemaService;
8
+ getSchemaDefinitionService(): SchemaService;
9
9
  }
10
10
  export declare class CacheCapabilitiesManager implements StoreWrapper {
11
- _willNotify: boolean;
12
- _pendingNotifies: Map<StableRecordIdentifier, Set<string>>;
13
- _store: Store;
14
- constructor(_store: Store);
15
- get identifierCache(): IdentifierCache;
16
- _scheduleNotification(identifier: StableRecordIdentifier, key: string): void;
17
- _flushNotifications(): void;
18
- notifyChange(identifier: StableRecordIdentifier, namespace: 'added' | 'removed', key: null): void;
19
- notifyChange(identifier: StableDocumentIdentifier, namespace: 'added' | 'updated' | 'removed', key: null): void;
20
- notifyChange(identifier: StableRecordIdentifier, namespace: NotificationType, key: string | null): void;
21
- get schema(): SchemaService;
22
- setRecordId(identifier: StableRecordIdentifier, id: string): void;
23
- hasRecord(identifier: StableRecordIdentifier): boolean;
24
- disconnectRecord(identifier: StableRecordIdentifier): void;
11
+ _willNotify: boolean;
12
+ _pendingNotifies: Map<StableRecordIdentifier, Set<string>>;
13
+ _store: Store;
14
+ constructor(_store: Store);
15
+ get identifierCache(): IdentifierCache;
16
+ _scheduleNotification(identifier: StableRecordIdentifier, key: string): void;
17
+ _flushNotifications(): void;
18
+ notifyChange(identifier: StableRecordIdentifier, namespace: "added" | "removed", key: null): void;
19
+ notifyChange(identifier: StableDocumentIdentifier, namespace: "added" | "updated" | "removed", key: null): void;
20
+ notifyChange(identifier: StableRecordIdentifier, namespace: NotificationType, key: string | null): void;
21
+ get schema(): SchemaService;
22
+ setRecordId(identifier: StableRecordIdentifier, id: string): void;
23
+ hasRecord(identifier: StableRecordIdentifier): boolean;
24
+ disconnectRecord(identifier: StableRecordIdentifier): void;
25
25
  }
26
- //# sourceMappingURL=cache-capabilities-manager.d.ts.map