@warp-drive/legacy 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 (193) hide show
  1. package/declarations/adapter/-private/build-url-mixin.d.ts +41 -29
  2. package/declarations/adapter/-private/fastboot-interface.d.ts +4 -5
  3. package/declarations/adapter/-private/utils/continue-on-reject.d.ts +5 -6
  4. package/declarations/adapter/-private/utils/determine-body-promise.d.ts +1 -2
  5. package/declarations/adapter/-private/utils/fetch.d.ts +2 -3
  6. package/declarations/adapter/-private/utils/parse-response-headers.d.ts +0 -1
  7. package/declarations/adapter/-private/utils/serialize-into-hash.d.ts +5 -6
  8. package/declarations/adapter/-private/utils/serialize-query-params.d.ts +5 -2
  9. package/declarations/adapter/-private.d.ts +5 -6
  10. package/declarations/adapter/error.d.ts +206 -178
  11. package/declarations/adapter/json-api.d.ts +206 -207
  12. package/declarations/adapter/rest.d.ts +805 -808
  13. package/declarations/adapter.d.ts +742 -766
  14. package/declarations/compat/-private.d.ts +10 -11
  15. package/declarations/compat/builders/find-all.d.ts +26 -24
  16. package/declarations/compat/builders/find-record.d.ts +41 -39
  17. package/declarations/compat/builders/query.d.ts +50 -45
  18. package/declarations/compat/builders/save-record.d.ts +26 -24
  19. package/declarations/compat/builders/utils.d.ts +1 -2
  20. package/declarations/compat/builders.d.ts +10 -11
  21. package/declarations/compat/extensions.d.ts +52 -106
  22. package/declarations/compat/legacy-network-handler/fetch-manager.d.ts +39 -38
  23. package/declarations/compat/legacy-network-handler/identifier-has-id.d.ts +1 -2
  24. package/declarations/compat/legacy-network-handler/legacy-data-fetch.d.ts +9 -10
  25. package/declarations/compat/legacy-network-handler/legacy-data-utils.d.ts +1 -2
  26. package/declarations/compat/legacy-network-handler/legacy-network-handler.d.ts +1 -2
  27. package/declarations/compat/legacy-network-handler/minimum-adapter-interface.d.ts +521 -517
  28. package/declarations/compat/legacy-network-handler/minimum-serializer-interface.d.ts +214 -215
  29. package/declarations/compat/legacy-network-handler/serializer-response.d.ts +5 -6
  30. package/declarations/compat/legacy-network-handler/snapshot-record-array.d.ts +83 -84
  31. package/declarations/compat/legacy-network-handler/snapshot.d.ts +228 -229
  32. package/declarations/compat/utils.d.ts +118 -119
  33. package/declarations/compat.d.ts +106 -104
  34. package/declarations/model/-private/attr.d.ts +164 -145
  35. package/declarations/model/-private/belongs-to.d.ts +135 -122
  36. package/declarations/model/-private/debug/assert-polymorphic-type.d.ts +15 -4
  37. package/declarations/model/-private/errors.d.ts +272 -267
  38. package/declarations/model/-private/has-many.d.ts +119 -116
  39. package/declarations/model/-private/hooks.d.ts +5 -6
  40. package/declarations/model/-private/legacy-relationships-support.d.ts +51 -52
  41. package/declarations/model/-private/model-for-mixin.d.ts +18 -3
  42. package/declarations/model/-private/model-methods.d.ts +29 -24
  43. package/declarations/model/-private/model.d.ts +1306 -1254
  44. package/declarations/model/-private/notify-changes.d.ts +3 -4
  45. package/declarations/model/-private/promise-belongs-to.d.ts +33 -27
  46. package/declarations/model/-private/promise-many-array.d.ts +125 -116
  47. package/declarations/model/-private/record-state.d.ts +63 -60
  48. package/declarations/model/-private/references/belongs-to.d.ts +491 -487
  49. package/declarations/model/-private/references/has-many.d.ts +495 -492
  50. package/declarations/model/-private/schema-provider.d.ts +53 -56
  51. package/declarations/model/-private/type-utils.d.ts +41 -41
  52. package/declarations/model/-private/util.d.ts +1 -2
  53. package/declarations/model/-private.d.ts +8 -8
  54. package/declarations/model/migration-support.d.ts +281 -279
  55. package/declarations/model.d.ts +48 -49
  56. package/declarations/serializer/-private/embedded-records-mixin.d.ts +70 -71
  57. package/declarations/serializer/-private/transforms/boolean.d.ts +37 -37
  58. package/declarations/serializer/-private/transforms/date.d.ts +22 -22
  59. package/declarations/serializer/-private/transforms/number.d.ts +22 -22
  60. package/declarations/serializer/-private/transforms/string.d.ts +22 -22
  61. package/declarations/serializer/-private/transforms/transform.d.ts +109 -110
  62. package/declarations/serializer/-private/utils.d.ts +0 -1
  63. package/declarations/serializer/json-api.d.ts +124 -494
  64. package/declarations/serializer/json.d.ts +62 -1031
  65. package/declarations/serializer/rest.d.ts +52 -552
  66. package/declarations/serializer/transform.d.ts +5 -6
  67. package/declarations/serializer.d.ts +217 -218
  68. package/dist/{-private-DFfBszo5.js → -private-CKrP0ogQ.js} +1 -1
  69. package/dist/adapter/-private.js +1 -1
  70. package/dist/adapter/error.js +17 -0
  71. package/dist/adapter/json-api.js +1 -1
  72. package/dist/adapter/rest.js +5 -7
  73. package/dist/adapter.js +6 -35
  74. package/dist/compat/-private.js +1 -1
  75. package/dist/compat/extensions.js +0 -2
  76. package/dist/compat.js +3 -4
  77. package/dist/{errors-_QQ7xpSn.js → errors-BX5wowuz.js} +11 -10
  78. package/dist/{json-DSOlH9A8.js → json-Et4mt_LM.js} +84 -157
  79. package/dist/model/-private.js +1 -1
  80. package/dist/model/migration-support.js +3 -4
  81. package/dist/model.js +3 -3
  82. package/dist/{schema-provider-D_P8ReX6.js → schema-provider-BdQhkT-Q.js} +20 -13
  83. package/dist/{serialize-into-hash-BxfqWC8u.js → serialize-into-hash-Bp58npke.js} +1 -1
  84. package/dist/serializer/json-api.js +42 -2
  85. package/dist/serializer/json.js +1 -1
  86. package/dist/serializer/rest.js +46 -41
  87. package/dist/serializer/transform.js +0 -44
  88. package/package.json +7 -7
  89. package/declarations/adapter/-private/build-url-mixin.d.ts.map +0 -1
  90. package/declarations/adapter/-private/fastboot-interface.d.ts.map +0 -1
  91. package/declarations/adapter/-private/utils/continue-on-reject.d.ts.map +0 -1
  92. package/declarations/adapter/-private/utils/determine-body-promise.d.ts.map +0 -1
  93. package/declarations/adapter/-private/utils/fetch.d.ts.map +0 -1
  94. package/declarations/adapter/-private/utils/parse-response-headers.d.ts.map +0 -1
  95. package/declarations/adapter/-private/utils/serialize-into-hash.d.ts.map +0 -1
  96. package/declarations/adapter/-private/utils/serialize-query-params.d.ts.map +0 -1
  97. package/declarations/adapter/-private.d.ts.map +0 -1
  98. package/declarations/adapter/error.d.ts.map +0 -1
  99. package/declarations/adapter/json-api.d.ts.map +0 -1
  100. package/declarations/adapter/rest.d.ts.map +0 -1
  101. package/declarations/adapter.d.ts.map +0 -1
  102. package/declarations/compat/-private.d.ts.map +0 -1
  103. package/declarations/compat/builders/find-all.d.ts.map +0 -1
  104. package/declarations/compat/builders/find-record.d.ts.map +0 -1
  105. package/declarations/compat/builders/query.d.ts.map +0 -1
  106. package/declarations/compat/builders/save-record.d.ts.map +0 -1
  107. package/declarations/compat/builders/utils.d.ts.map +0 -1
  108. package/declarations/compat/builders.d.ts.map +0 -1
  109. package/declarations/compat/extensions.d.ts.map +0 -1
  110. package/declarations/compat/legacy-network-handler/fetch-manager.d.ts.map +0 -1
  111. package/declarations/compat/legacy-network-handler/identifier-has-id.d.ts.map +0 -1
  112. package/declarations/compat/legacy-network-handler/legacy-data-fetch.d.ts.map +0 -1
  113. package/declarations/compat/legacy-network-handler/legacy-data-utils.d.ts.map +0 -1
  114. package/declarations/compat/legacy-network-handler/legacy-network-handler.d.ts.map +0 -1
  115. package/declarations/compat/legacy-network-handler/minimum-adapter-interface.d.ts.map +0 -1
  116. package/declarations/compat/legacy-network-handler/minimum-serializer-interface.d.ts.map +0 -1
  117. package/declarations/compat/legacy-network-handler/serializer-response.d.ts.map +0 -1
  118. package/declarations/compat/legacy-network-handler/snapshot-record-array.d.ts.map +0 -1
  119. package/declarations/compat/legacy-network-handler/snapshot.d.ts.map +0 -1
  120. package/declarations/compat/utils.d.ts.map +0 -1
  121. package/declarations/compat.d.ts.map +0 -1
  122. package/declarations/model/-private/attr.d.ts.map +0 -1
  123. package/declarations/model/-private/attr.type-test.d.ts +0 -2
  124. package/declarations/model/-private/attr.type-test.d.ts.map +0 -1
  125. package/declarations/model/-private/belongs-to.d.ts.map +0 -1
  126. package/declarations/model/-private/belongs-to.type-test.d.ts +0 -2
  127. package/declarations/model/-private/belongs-to.type-test.d.ts.map +0 -1
  128. package/declarations/model/-private/debug/assert-polymorphic-type.d.ts.map +0 -1
  129. package/declarations/model/-private/errors.d.ts.map +0 -1
  130. package/declarations/model/-private/has-many.d.ts.map +0 -1
  131. package/declarations/model/-private/has-many.type-test.d.ts +0 -2
  132. package/declarations/model/-private/has-many.type-test.d.ts.map +0 -1
  133. package/declarations/model/-private/hooks.d.ts.map +0 -1
  134. package/declarations/model/-private/legacy-relationships-support.d.ts.map +0 -1
  135. package/declarations/model/-private/model-for-mixin.d.ts.map +0 -1
  136. package/declarations/model/-private/model-methods.d.ts.map +0 -1
  137. package/declarations/model/-private/model.d.ts.map +0 -1
  138. package/declarations/model/-private/model.type-test.d.ts +0 -2
  139. package/declarations/model/-private/model.type-test.d.ts.map +0 -1
  140. package/declarations/model/-private/notify-changes.d.ts.map +0 -1
  141. package/declarations/model/-private/promise-belongs-to.d.ts.map +0 -1
  142. package/declarations/model/-private/promise-many-array.d.ts.map +0 -1
  143. package/declarations/model/-private/promise-proxy-base.d.ts +0 -3
  144. package/declarations/model/-private/promise-proxy-base.d.ts.map +0 -1
  145. package/declarations/model/-private/record-state.d.ts.map +0 -1
  146. package/declarations/model/-private/references/belongs-to.d.ts.map +0 -1
  147. package/declarations/model/-private/references/has-many.d.ts.map +0 -1
  148. package/declarations/model/-private/schema-provider.d.ts.map +0 -1
  149. package/declarations/model/-private/type-utils.d.ts.map +0 -1
  150. package/declarations/model/-private/util.d.ts.map +0 -1
  151. package/declarations/model/-private.d.ts.map +0 -1
  152. package/declarations/model/migration-support.d.ts.map +0 -1
  153. package/declarations/model/migration-support.type-test.d.ts +0 -2
  154. package/declarations/model/migration-support.type-test.d.ts.map +0 -1
  155. package/declarations/model.d.ts.map +0 -1
  156. package/declarations/serializer/-private/embedded-records-mixin.d.ts.map +0 -1
  157. package/declarations/serializer/-private/transforms/boolean.d.ts.map +0 -1
  158. package/declarations/serializer/-private/transforms/boolean.type-test.d.ts +0 -2
  159. package/declarations/serializer/-private/transforms/boolean.type-test.d.ts.map +0 -1
  160. package/declarations/serializer/-private/transforms/date.d.ts.map +0 -1
  161. package/declarations/serializer/-private/transforms/number.d.ts.map +0 -1
  162. package/declarations/serializer/-private/transforms/string.d.ts.map +0 -1
  163. package/declarations/serializer/-private/transforms/transform.d.ts.map +0 -1
  164. package/declarations/serializer/-private/utils.d.ts.map +0 -1
  165. package/declarations/serializer/json-api.d.ts.map +0 -1
  166. package/declarations/serializer/json.d.ts.map +0 -1
  167. package/declarations/serializer/rest.d.ts.map +0 -1
  168. package/declarations/serializer/transform.d.ts.map +0 -1
  169. package/declarations/serializer.d.ts.map +0 -1
  170. package/dist/-private-DFfBszo5.js.map +0 -1
  171. package/dist/adapter/-private.js.map +0 -1
  172. package/dist/adapter/error.js.map +0 -1
  173. package/dist/adapter/json-api.js.map +0 -1
  174. package/dist/adapter/rest.js.map +0 -1
  175. package/dist/adapter.js.map +0 -1
  176. package/dist/compat/-private.js.map +0 -1
  177. package/dist/compat/builders.js.map +0 -1
  178. package/dist/compat/extensions.js.map +0 -1
  179. package/dist/compat/utils.js.map +0 -1
  180. package/dist/compat.js.map +0 -1
  181. package/dist/errors-_QQ7xpSn.js.map +0 -1
  182. package/dist/json-DSOlH9A8.js.map +0 -1
  183. package/dist/model/-private.js.map +0 -1
  184. package/dist/model/migration-support.js.map +0 -1
  185. package/dist/model.js.map +0 -1
  186. package/dist/runtime-BPCpkOf1-BKOwiRJp.js.map +0 -1
  187. package/dist/schema-provider-D_P8ReX6.js.map +0 -1
  188. package/dist/serialize-into-hash-BxfqWC8u.js.map +0 -1
  189. package/dist/serializer/json-api.js.map +0 -1
  190. package/dist/serializer/json.js.map +0 -1
  191. package/dist/serializer/rest.js.map +0 -1
  192. package/dist/serializer/transform.js.map +0 -1
  193. package/dist/serializer.js.map +0 -1
@@ -1,5 +1,4 @@
1
- import type { NotificationType, Store } from '@warp-drive/core';
2
- import type { StableRecordIdentifier } from '@warp-drive/core/types/identifier';
3
- import type { Model } from './model.ts';
1
+ import type { NotificationType, Store } from "@warp-drive/core";
2
+ import type { StableRecordIdentifier } from "@warp-drive/core/types/identifier";
3
+ import type { Model } from "./model.js";
4
4
  export default function notifyChanges(identifier: StableRecordIdentifier, value: NotificationType, key: string | undefined, record: Model, store: Store): void;
5
- //# sourceMappingURL=notify-changes.d.ts.map
@@ -1,40 +1,46 @@
1
- import type PromiseProxyMixin from '@ember/object/promise-proxy-mixin';
2
- import type ObjectProxy from '@ember/object/proxy';
3
- import type { Store } from '@warp-drive/core';
4
- import type { OpaqueRecordInstance, TypeFromInstanceOrString } from '@warp-drive/core/types/record';
5
- import type { LegacySupport } from './legacy-relationships-support.ts';
1
+ import type PromiseProxyMixin from "@ember/object/promise-proxy-mixin";
2
+ import type ObjectProxy from "@ember/object/proxy";
3
+ import type { Store } from "@warp-drive/core";
4
+ import type { OpaqueRecordInstance, TypeFromInstanceOrString } from "@warp-drive/core/types/record";
5
+ import type { LegacySupport } from "./legacy-relationships-support.js";
6
6
  export interface BelongsToProxyMeta<T = unknown> {
7
- key: string;
8
- store: Store;
9
- legacySupport: LegacySupport;
10
- modelName: TypeFromInstanceOrString<T>;
7
+ key: string;
8
+ store: Store;
9
+ legacySupport: LegacySupport;
10
+ modelName: TypeFromInstanceOrString<T>;
11
11
  }
12
12
  export interface BelongsToProxyCreateArgs<T = unknown> {
13
- promise: Promise<T | null>;
14
- content?: T | null;
15
- _belongsToState: BelongsToProxyMeta<T>;
13
+ promise: Promise<T | null>;
14
+ content?: T | null;
15
+ _belongsToState: BelongsToProxyMeta<T>;
16
16
  }
17
17
  export declare const LegacyPromiseProxy: unique symbol;
18
18
  interface PromiseObjectType<T> extends PromiseProxyMixin<T | null>, ObjectProxy<T> {
19
- new <PT>(...args: unknown[]): PromiseObjectType<PT>;
20
- }
21
- declare class PromiseObjectType<T> {
19
+ // eslint-disable-next-line @typescript-eslint/no-misused-new
20
+ new <PT>(...args: unknown[]): PromiseObjectType<PT>;
22
21
  }
22
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-extraneous-class
23
+ declare class PromiseObjectType<T> {}
23
24
  declare const Extended: PromiseObjectType<OpaqueRecordInstance>;
25
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
26
+ interface PromiseBelongsTo<T> {
27
+ [LegacyPromiseProxy]: true;
28
+ }
24
29
  /**
25
- A PromiseBelongsTo is a PromiseObject that also proxies certain method calls
26
- to the underlying belongsTo model.
27
- Right now we proxy:
28
- * `reload()`
29
- @class PromiseBelongsTo
30
- @private
30
+ A PromiseBelongsTo is a PromiseObject that also proxies certain method calls
31
+ to the underlying belongsTo model.
32
+ Right now we proxy:
33
+ * `reload()`
34
+ @class PromiseBelongsTo
35
+ @private
31
36
  */
32
37
  declare class PromiseBelongsTo<T = unknown> extends Extended<T> {
33
- _belongsToState: BelongsToProxyMeta<T>;
34
- get id(): string | null;
35
- get meta(): void;
36
- reload(options: Record<string, unknown>): Promise<this>;
37
- [LegacyPromiseProxy]: true;
38
+ _belongsToState: BelongsToProxyMeta<T>;
39
+ get id(): string | null;
40
+ // we don't proxy meta because we would need to proxy it to the relationship state container
41
+ // however, meta on relationships does not trigger change notifications.
42
+ // if you need relationship meta, you should do `record.belongsTo(relationshipName).meta()`
43
+ get meta(): void;
44
+ reload(options: Record<string, unknown>): Promise<this>;
38
45
  }
39
46
  export { PromiseBelongsTo };
40
- //# sourceMappingURL=promise-belongs-to.d.ts.map
@@ -1,126 +1,135 @@
1
- import type { RelatedCollection as ManyArray } from '@warp-drive/core/store/-private';
2
- import type { BaseFinderOptions } from '@warp-drive/core/types';
3
- import { LegacyPromiseProxy } from './promise-belongs-to.ts';
1
+ import type { RelatedCollection as ManyArray } from "@warp-drive/core/store/-private";
2
+ import type { BaseFinderOptions } from "@warp-drive/core/types";
3
+ import type { Links } from "@warp-drive/core/types/spec/json-api-raw";
4
+ import { LegacyPromiseProxy } from "./promise-belongs-to.js";
4
5
  export interface HasManyProxyCreateArgs<T = unknown> {
5
- promise: Promise<ManyArray<T>>;
6
- content?: ManyArray<T>;
6
+ promise: Promise<ManyArray<T>>;
7
+ content?: ManyArray<T>;
8
+ }
9
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
10
+ export interface PromiseManyArray<T> {
11
+ [LegacyPromiseProxy]: true;
7
12
  }
8
13
  /**
9
- This class is returned as the result of accessing an async hasMany relationship
10
- on an instance of a Model extending from `@ember-data/model`.
14
+ This class is returned as the result of accessing an async hasMany relationship
15
+ on an instance of a Model extending from `@ember-data/model`.
11
16
 
12
- A PromiseManyArray is an iterable proxy that allows templates to consume related
13
- ManyArrays and update once their contents are no longer pending.
17
+ A PromiseManyArray is an iterable proxy that allows templates to consume related
18
+ ManyArrays and update once their contents are no longer pending.
14
19
 
15
- In your JS code you should resolve the promise first.
20
+ In your JS code you should resolve the promise first.
16
21
 
17
- ```js
18
- const comments = await post.comments;
19
- ```
22
+ ```js
23
+ const comments = await post.comments;
24
+ ```
20
25
 
21
- @class PromiseManyArray
22
- @public
26
+ @class PromiseManyArray
27
+ @public
23
28
  */
24
29
  export declare class PromiseManyArray<T = unknown> {
25
- promise: Promise<ManyArray<T>> | null;
26
- isDestroyed: boolean;
27
- content: ManyArray<T> | null;
28
- constructor(promise: Promise<ManyArray<T>>, content?: ManyArray<T>);
29
- /**
30
- * Retrieve the length of the content
31
- * @property length
32
- * @public
33
- */
34
- get length(): number;
35
- get '[]'(): 0 | ManyArray<T> | undefined;
36
- /**
37
- * Iterate the proxied content. Called by the glimmer iterator in #each
38
- * We do not guarantee that forEach will always be available. This
39
- * may eventually be made to use Symbol.Iterator once glimmer supports it.
40
- *
41
- * @param cb
42
- * @return
43
- * @private
44
- */
45
- forEach(cb: (item: T, index: number, array: T[]) => void): void;
46
- /**
47
- * Reload the relationship
48
- * @public
49
- * @param options
50
- * @return
51
- */
52
- reload(options: Omit<BaseFinderOptions, ''>): this;
53
- /**
54
- * Whether the loading promise is still pending
55
- *
56
- * @property isPending
57
- * @type {Boolean}
58
- * @public
59
- */
60
- isPending: boolean;
61
- /**
62
- * Whether the loading promise rejected
63
- *
64
- * @property isRejected
65
- * @type {Boolean}
66
- * @public
67
- */
68
- isRejected: boolean;
69
- /**
70
- * Whether the loading promise succeeded
71
- *
72
- * @property isFulfilled
73
- * @type {Boolean}
74
- * @public
75
- */
76
- isFulfilled: boolean;
77
- /**
78
- * Whether the loading promise completed (resolved or rejected)
79
- *
80
- * @property isSettled
81
- * @type {Boolean}
82
- * @public
83
- */
84
- isSettled: boolean;
85
- /**
86
- * chain this promise
87
- *
88
- * @public
89
- * @param success
90
- * @param fail
91
- * @return {Promise}
92
- */
93
- then(s: Parameters<Promise<ManyArray<T>>['then']>[0], f?: Parameters<Promise<ManyArray<T>>['then']>[1]): Promise<unknown>;
94
- /**
95
- * catch errors thrown by this promise
96
- * @public
97
- * @param callback
98
- * @return {Promise}
99
- */
100
- catch(cb: Parameters<Promise<ManyArray<T>>['catch']>[0]): Promise<unknown>;
101
- /**
102
- * run cleanup after this promise completes
103
- *
104
- * @public
105
- * @param callback
106
- * @return {Promise}
107
- */
108
- finally(cb: Parameters<Promise<ManyArray<T>>['finally']>[0]): Promise<ManyArray<T>>;
109
- destroy(): void;
110
- /**
111
- * Retrieve the links for this relationship
112
- * @property links
113
- * @public
114
- */
115
- get links(): import("@warp-drive/core/types/spec/json-api-raw.js").Links | null | undefined;
116
- /**
117
- * Retrieve the meta for this relationship
118
- * @property meta
119
- * @public
120
- */
121
- get meta(): Record<string, unknown> | null | undefined;
122
- _update(promise: Promise<ManyArray<T>>, content?: ManyArray<T>): void;
123
- static create<T>({ promise, content }: HasManyProxyCreateArgs<T>): PromiseManyArray<T>;
124
- [LegacyPromiseProxy]: true;
30
+ promise: Promise<ManyArray<T>> | null;
31
+ isDestroyed: boolean;
32
+ content: ManyArray<T> | null;
33
+ constructor(promise: Promise<ManyArray<T>>, content?: ManyArray<T>);
34
+ /**
35
+ * Retrieve the length of the content
36
+ * @property length
37
+ * @public
38
+ */
39
+ get length(): number;
40
+ // this will error if someone tries to call
41
+ // A(identifierArray) since it is not configurable
42
+ // which is preferrable to the `meta` override we used
43
+ // before which required importing all of Ember
44
+ get "[]"(): 0 | ManyArray<T> | undefined;
45
+ /**
46
+ * Iterate the proxied content. Called by the glimmer iterator in #each
47
+ * We do not guarantee that forEach will always be available. This
48
+ * may eventually be made to use Symbol.Iterator once glimmer supports it.
49
+ *
50
+ * @param cb
51
+ * @return
52
+ * @private
53
+ */
54
+ forEach(cb: (item: T, index: number, array: T[]) => void): void;
55
+ /**
56
+ * Reload the relationship
57
+ * @public
58
+ * @param options
59
+ * @return
60
+ */
61
+ reload(options: Omit<BaseFinderOptions, "">): this;
62
+ //---- Properties/Methods from the PromiseProxyMixin that we will keep as our API
63
+ /**
64
+ * Whether the loading promise is still pending
65
+ *
66
+ * @property isPending
67
+ * @type {Boolean}
68
+ * @public
69
+ */
70
+ isPending: boolean;
71
+ /**
72
+ * Whether the loading promise rejected
73
+ *
74
+ * @property isRejected
75
+ * @type {Boolean}
76
+ * @public
77
+ */
78
+ isRejected: boolean;
79
+ /**
80
+ * Whether the loading promise succeeded
81
+ *
82
+ * @property isFulfilled
83
+ * @type {Boolean}
84
+ * @public
85
+ */
86
+ isFulfilled: boolean;
87
+ /**
88
+ * Whether the loading promise completed (resolved or rejected)
89
+ *
90
+ * @property isSettled
91
+ * @type {Boolean}
92
+ * @public
93
+ */
94
+ isSettled: boolean;
95
+ /**
96
+ * chain this promise
97
+ *
98
+ * @public
99
+ */
100
+ then(success: Parameters<Promise<ManyArray<T>>["then"]>[0], rejected?: Parameters<Promise<ManyArray<T>>["then"]>[1]): Promise<unknown>;
101
+ /**
102
+ * catch errors thrown by this promise
103
+ * @public
104
+ * @param callback
105
+ * @return {Promise}
106
+ */
107
+ catch(cb: Parameters<Promise<ManyArray<T>>["catch"]>[0]): Promise<unknown>;
108
+ /**
109
+ * run cleanup after this promise completes
110
+ *
111
+ * @public
112
+ * @param callback
113
+ * @return {Promise}
114
+ */
115
+ finally(cb: Parameters<Promise<ManyArray<T>>["finally"]>[0]): Promise<unknown>;
116
+ //---- Methods on EmberObject that we should keep
117
+ destroy(): void;
118
+ //---- Methods/Properties on ManyArray that we own and proxy to
119
+ /**
120
+ * Retrieve the links for this relationship
121
+ * @property links
122
+ * @public
123
+ */
124
+ get links(): Links | null | undefined;
125
+ /**
126
+ * Retrieve the meta for this relationship
127
+ * @property meta
128
+ * @public
129
+ */
130
+ get meta(): Record<string, unknown> | null | undefined;
131
+ //---- Our own stuff
132
+ /** @internal */
133
+ _update(promise: Promise<ManyArray<T>>, content?: ManyArray<T>): void;
134
+ static create<T>({ promise, content }: HasManyProxyCreateArgs<T>): PromiseManyArray<T>;
125
135
  }
126
- //# sourceMappingURL=promise-many-array.d.ts.map
@@ -1,9 +1,9 @@
1
- import type { Store } from '@warp-drive/core';
2
- import type { RequestCacheRequestState, RequestStateService } from '@warp-drive/core/store/-private';
3
- import type { Cache } from '@warp-drive/core/types/cache';
4
- import type { StableRecordIdentifier } from '@warp-drive/core/types/identifier';
5
- import type { Errors } from './errors';
6
- import type { MinimalLegacyRecord } from './model-methods';
1
+ import type { Store } from "@warp-drive/core";
2
+ import type { RequestCacheRequestState, RequestStateService } from "@warp-drive/core/store/-private";
3
+ import type { Cache } from "@warp-drive/core/types/cache";
4
+ import type { StableRecordIdentifier } from "@warp-drive/core/types/identifier";
5
+ import type { Errors } from "./errors.js";
6
+ import type { MinimalLegacyRecord } from "./model-methods.js";
7
7
  /**
8
8
  Historically EmberData managed a state machine
9
9
  for each record, the localState for which
@@ -15,64 +15,67 @@ with the state tree that used to be possible (listed below).
15
15
  stateName and dirtyType are candidates for deprecation.
16
16
 
17
17
  root
18
- empty
19
- deleted // hidden from stateName
20
- preloaded // hidden from stateName
18
+ empty
19
+ deleted // hidden from stateName
20
+ preloaded // hidden from stateName
21
21
 
22
- loading
23
- empty // hidden from stateName
24
- preloaded // hidden from stateName
22
+ loading
23
+ empty // hidden from stateName
24
+ preloaded // hidden from stateName
25
25
 
26
- loaded
27
- saved
28
- updated
29
- uncommitted
30
- invalid
31
- inFlight
32
- created
33
- uncommitted
34
- invalid
35
- inFlight
26
+ loaded
27
+ saved
28
+ updated
29
+ uncommitted
30
+ invalid
31
+ inFlight
32
+ created
33
+ uncommitted
34
+ invalid
35
+ inFlight
36
36
 
37
- deleted
38
- saved
39
- new // hidden from stateName
40
- uncommitted
41
- invalid
42
- inFlight
37
+ deleted
38
+ saved
39
+ new // hidden from stateName
40
+ uncommitted
41
+ invalid
42
+ inFlight
43
43
 
44
- @internal
44
+ @internal
45
45
  */
46
46
  export default class RecordState {
47
- store: Store;
48
- identifier: StableRecordIdentifier;
49
- record: MinimalLegacyRecord;
50
- rs: RequestStateService;
51
- pendingCount: number;
52
- fulfilledCount: number;
53
- rejectedCount: number;
54
- cache: Cache;
55
- _errorRequests: RequestCacheRequestState[];
56
- _lastError: RequestCacheRequestState | null;
57
- handler: object;
58
- constructor(record: MinimalLegacyRecord);
59
- destroy(): void;
60
- notify(key: keyof this & string): void;
61
- updateInvalidErrors(errors: Errors): void;
62
- cleanErrorRequests(): void;
63
- isSaving: boolean;
64
- get isLoading(): boolean;
65
- get isLoaded(): boolean;
66
- get isSaved(): boolean;
67
- get isEmpty(): boolean;
68
- get isNew(): boolean;
69
- get isDeleted(): boolean;
70
- get isValid(): boolean;
71
- get isDirty(): boolean;
72
- get isError(): boolean;
73
- get adapterError(): unknown;
74
- get isPreloaded(): boolean;
75
- get stateName(): "root.loading" | "root.empty" | "root.deleted.inFlight" | "root.deleted.saved" | "root.deleted.invalid" | "root.deleted.uncommitted" | "root.loaded.created.inFlight" | "root.loaded.created.invalid" | "root.loaded.created.uncommitted" | "root.loaded.updated.inFlight" | "root.loaded.updated.invalid" | "root.loaded.updated.uncommitted" | "root.loaded.saved";
76
- get dirtyType(): "" | "updated" | "deleted" | "created";
47
+ store: Store;
48
+ identifier: StableRecordIdentifier;
49
+ record: MinimalLegacyRecord;
50
+ rs: RequestStateService;
51
+ pendingCount: number;
52
+ fulfilledCount: number;
53
+ rejectedCount: number;
54
+ cache: Cache;
55
+ _errorRequests: RequestCacheRequestState[];
56
+ _lastError: RequestCacheRequestState | null;
57
+ handler: object;
58
+ constructor(record: MinimalLegacyRecord);
59
+ /** @internal */
60
+ destroy(): void;
61
+ /** @internal */
62
+ notify(key: keyof this & string): void;
63
+ /** @internal */
64
+ updateInvalidErrors(errors: Errors): void;
65
+ /** @internal */
66
+ cleanErrorRequests(): void;
67
+ isSaving: boolean;
68
+ get isLoading(): boolean;
69
+ get isLoaded(): boolean;
70
+ get isSaved(): boolean;
71
+ get isEmpty(): boolean;
72
+ get isNew(): boolean;
73
+ get isDeleted(): boolean;
74
+ get isValid(): boolean;
75
+ get isDirty(): boolean;
76
+ get isError(): boolean;
77
+ get adapterError(): unknown;
78
+ get isPreloaded(): boolean;
79
+ get stateName(): "root.loading" | "root.empty" | "root.deleted.inFlight" | "root.deleted.saved" | "root.deleted.invalid" | "root.deleted.uncommitted" | "root.loaded.created.inFlight" | "root.loaded.created.invalid" | "root.loaded.created.uncommitted" | "root.loaded.updated.inFlight" | "root.loaded.updated.invalid" | "root.loaded.updated.uncommitted" | "root.loaded.saved";
80
+ get dirtyType(): "" | "deleted" | "created" | "updated";
77
81
  }
78
- //# sourceMappingURL=record-state.d.ts.map