@warp-drive/legacy 5.8.0-alpha.30 → 5.8.0-alpha.32

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 (477) hide show
  1. package/declarations/adapter/error.d.ts +5 -5
  2. package/declarations/adapter/json-api.d.ts +2 -2
  3. package/declarations/compat/builders/find-all.d.ts +6 -6
  4. package/declarations/compat/builders/find-record.d.ts +8 -8
  5. package/declarations/compat/builders/query.d.ts +12 -12
  6. package/declarations/compat.d.ts +3 -3
  7. package/declarations/model/-private/references/belongs-to.d.ts +4 -4
  8. package/declarations/model/-private/references/has-many.d.ts +2 -2
  9. package/declarations/model/migration-support.d.ts +34 -18
  10. package/declarations/model.d.ts +2 -2
  11. package/declarations/serializer/-private/embedded-records-mixin.d.ts +1 -1
  12. package/declarations/serializer/json-api.d.ts +3 -3
  13. package/declarations/serializer/json.d.ts +1 -1
  14. package/declarations/serializer.d.ts +1 -1
  15. package/dist/adapter/error.js +7 -7
  16. package/dist/compat/builders.js +26 -26
  17. package/dist/compat/utils.js +0 -1
  18. package/dist/compat.js +3 -3
  19. package/dist/{errors-B9CDPh3R.js → errors-CIGPcDvd.js} +12 -12
  20. package/dist/{hooks-CQXyievu.js → hooks-QqRnX108.js} +1 -1
  21. package/dist/index.js +4 -4
  22. package/dist/{json-BHxlccxF.js → json-BNrV8EYG.js} +4 -4
  23. package/dist/model/-private.js +1 -1
  24. package/dist/model/migration-support.js +41 -24
  25. package/dist/{model-for-B0TSd9HU.js → model-for-CqXsIKws.js} +1 -1
  26. package/dist/model-fragments.js +2 -2
  27. package/dist/model.js +3 -3
  28. package/dist/{schema-provider-BnVr_CnJ.js → schema-provider-g5MfTj8n.js} +11 -11
  29. package/dist/serializer/json-api.js +7 -7
  30. package/dist/serializer/json.js +1 -1
  31. package/dist/serializer/rest.js +10 -10
  32. package/dist/serializer.js +1 -1
  33. package/dist/unpkg/dev/-private-B1pSSN52.js +1210 -0
  34. package/dist/unpkg/dev/adapter/-private.js +1 -0
  35. package/dist/unpkg/dev/adapter/error.js +336 -0
  36. package/dist/unpkg/dev/adapter/json-api.js +132 -0
  37. package/dist/unpkg/dev/adapter/rest.js +1257 -0
  38. package/dist/unpkg/dev/adapter.js +1253 -0
  39. package/dist/unpkg/dev/compat/-private.js +1 -0
  40. package/dist/unpkg/dev/compat/builders.js +273 -0
  41. package/dist/unpkg/dev/compat/extensions.js +243 -0
  42. package/dist/unpkg/dev/compat/utils.js +224 -0
  43. package/dist/unpkg/dev/compat.js +1020 -0
  44. package/dist/unpkg/dev/declarations/adapter/-private/build-url-mixin.d.ts +33 -0
  45. package/dist/unpkg/dev/declarations/adapter/-private/fastboot-interface.d.ts +8 -0
  46. package/dist/unpkg/dev/declarations/adapter/-private/utils/continue-on-reject.d.ts +1 -0
  47. package/dist/unpkg/dev/declarations/adapter/-private/utils/determine-body-promise.d.ts +4 -0
  48. package/dist/unpkg/dev/declarations/adapter/-private/utils/fetch.d.ts +8 -0
  49. package/dist/unpkg/dev/declarations/adapter/-private/utils/parse-response-headers.d.ts +1 -0
  50. package/dist/unpkg/dev/declarations/adapter/-private/utils/serialize-into-hash.d.ts +6 -0
  51. package/dist/unpkg/dev/declarations/adapter/-private/utils/serialize-query-params.d.ts +5 -0
  52. package/dist/unpkg/dev/declarations/adapter/-private.d.ts +5 -0
  53. package/dist/unpkg/dev/declarations/adapter/error.d.ts +215 -0
  54. package/dist/unpkg/dev/declarations/adapter/json-api.d.ts +231 -0
  55. package/dist/unpkg/dev/declarations/adapter/rest.d.ts +815 -0
  56. package/dist/unpkg/dev/declarations/adapter.d.ts +770 -0
  57. package/dist/unpkg/dev/declarations/compat/-private.d.ts +13 -0
  58. package/dist/unpkg/dev/declarations/compat/builders/find-all.d.ts +35 -0
  59. package/dist/unpkg/dev/declarations/compat/builders/find-record.d.ts +56 -0
  60. package/dist/unpkg/dev/declarations/compat/builders/query.d.ts +66 -0
  61. package/dist/unpkg/dev/declarations/compat/builders/save-record.d.ts +34 -0
  62. package/dist/unpkg/dev/declarations/compat/builders/utils.d.ts +3 -0
  63. package/dist/unpkg/dev/declarations/compat/builders.d.ts +14 -0
  64. package/dist/unpkg/dev/declarations/compat/extensions.d.ts +59 -0
  65. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/fetch-manager.d.ts +55 -0
  66. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/identifier-has-id.d.ts +2 -0
  67. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/legacy-data-fetch.d.ts +11 -0
  68. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/legacy-data-utils.d.ts +5 -0
  69. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/legacy-network-handler.d.ts +2 -0
  70. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/minimum-adapter-interface.d.ts +524 -0
  71. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/minimum-serializer-interface.d.ts +213 -0
  72. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/serializer-response.d.ts +6 -0
  73. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/snapshot-record-array.d.ts +110 -0
  74. package/dist/unpkg/dev/declarations/compat/legacy-network-handler/snapshot.d.ts +255 -0
  75. package/dist/unpkg/dev/declarations/compat/utils.d.ts +137 -0
  76. package/dist/unpkg/dev/declarations/compat.d.ts +157 -0
  77. package/dist/unpkg/dev/declarations/index.d.ts +70 -0
  78. package/dist/unpkg/dev/declarations/model/-private/attr.d.ts +170 -0
  79. package/dist/unpkg/dev/declarations/model/-private/belongs-to.d.ts +174 -0
  80. package/dist/unpkg/dev/declarations/model/-private/debug/assert-polymorphic-type.d.ts +5 -0
  81. package/dist/unpkg/dev/declarations/model/-private/errors.d.ts +289 -0
  82. package/dist/unpkg/dev/declarations/model/-private/has-many.d.ts +162 -0
  83. package/dist/unpkg/dev/declarations/model/-private/hooks.d.ts +10 -0
  84. package/dist/unpkg/dev/declarations/model/-private/legacy-relationships-support.d.ts +47 -0
  85. package/dist/unpkg/dev/declarations/model/-private/model-for-mixin.d.ts +3 -0
  86. package/dist/unpkg/dev/declarations/model/-private/model-methods.d.ts +39 -0
  87. package/dist/unpkg/dev/declarations/model/-private/model.d.ts +1269 -0
  88. package/dist/unpkg/dev/declarations/model/-private/notify-changes.d.ts +4 -0
  89. package/dist/unpkg/dev/declarations/model/-private/promise-belongs-to.d.ts +40 -0
  90. package/dist/unpkg/dev/declarations/model/-private/promise-many-array.d.ts +124 -0
  91. package/dist/unpkg/dev/declarations/model/-private/record-state.d.ts +58 -0
  92. package/dist/unpkg/dev/declarations/model/-private/references/belongs-to.d.ts +498 -0
  93. package/dist/unpkg/dev/declarations/model/-private/references/has-many.d.ts +500 -0
  94. package/dist/unpkg/dev/declarations/model/-private/schema-provider.d.ts +56 -0
  95. package/dist/unpkg/dev/declarations/model/-private/type-utils.d.ts +57 -0
  96. package/dist/unpkg/dev/declarations/model/-private/util.d.ts +5 -0
  97. package/dist/unpkg/dev/declarations/model/-private.d.ts +8 -0
  98. package/dist/unpkg/dev/declarations/model/migration-support.d.ts +280 -0
  99. package/dist/unpkg/dev/declarations/model-fragments/extensions/fragment-array.d.ts +16 -0
  100. package/dist/unpkg/dev/declarations/model-fragments/extensions/fragment.d.ts +15 -0
  101. package/dist/unpkg/dev/declarations/model-fragments/hooks/model-for.d.ts +20 -0
  102. package/dist/unpkg/dev/declarations/model-fragments/index.d.ts +5 -0
  103. package/dist/unpkg/dev/declarations/model-fragments/instance-initializers/fragment-extensions.d.ts +9 -0
  104. package/dist/unpkg/dev/declarations/model-fragments/utilities/with-array-defaults.d.ts +15 -0
  105. package/dist/unpkg/dev/declarations/model-fragments/utilities/with-fragment-array-defaults.d.ts +20 -0
  106. package/dist/unpkg/dev/declarations/model-fragments/utilities/with-fragment-defaults.d.ts +19 -0
  107. package/dist/unpkg/dev/declarations/model-fragments/utilities/with-legacy.d.ts +3 -0
  108. package/dist/unpkg/dev/declarations/model-fragments.d.ts +9 -0
  109. package/dist/unpkg/dev/declarations/model.d.ts +49 -0
  110. package/dist/unpkg/dev/declarations/serializer/-private/embedded-records-mixin.d.ts +91 -0
  111. package/dist/unpkg/dev/declarations/serializer/-private/transforms/boolean.d.ts +47 -0
  112. package/dist/unpkg/dev/declarations/serializer/-private/transforms/date.d.ts +28 -0
  113. package/dist/unpkg/dev/declarations/serializer/-private/transforms/number.d.ts +29 -0
  114. package/dist/unpkg/dev/declarations/serializer/-private/transforms/string.d.ts +29 -0
  115. package/dist/unpkg/dev/declarations/serializer/-private/transforms/transform.d.ts +118 -0
  116. package/dist/unpkg/dev/declarations/serializer/-private/utils.d.ts +3 -0
  117. package/dist/unpkg/dev/declarations/serializer/json-api.d.ts +123 -0
  118. package/dist/unpkg/dev/declarations/serializer/json.d.ts +75 -0
  119. package/dist/unpkg/dev/declarations/serializer/rest.d.ts +51 -0
  120. package/dist/unpkg/dev/declarations/serializer/transform.d.ts +5 -0
  121. package/dist/unpkg/dev/declarations/serializer.d.ts +254 -0
  122. package/dist/unpkg/dev/declarations/store/-private.d.ts +223 -0
  123. package/dist/unpkg/dev/declarations/store.d.ts +3 -0
  124. package/dist/unpkg/dev/errors-CIGPcDvd.js +2595 -0
  125. package/dist/unpkg/dev/hooks-QqRnX108.js +74 -0
  126. package/dist/unpkg/dev/index.js +195 -0
  127. package/dist/unpkg/dev/json-BNrV8EYG.js +1272 -0
  128. package/dist/unpkg/dev/model/-private.js +1 -0
  129. package/dist/unpkg/dev/model/migration-support.js +579 -0
  130. package/dist/unpkg/dev/model-for-CqXsIKws.js +221 -0
  131. package/dist/unpkg/dev/model-fragments.js +76 -0
  132. package/dist/unpkg/dev/model.js +667 -0
  133. package/dist/unpkg/dev/runtime-BPCpkOf1-BKOwiRJp.js +65 -0
  134. package/dist/unpkg/dev/schema-provider-g5MfTj8n.js +2338 -0
  135. package/dist/unpkg/dev/serialize-into-hash-BnYvPex3.js +261 -0
  136. package/dist/unpkg/dev/serializer/json-api.js +527 -0
  137. package/dist/unpkg/dev/serializer/json.js +6 -0
  138. package/dist/unpkg/dev/serializer/rest.js +1243 -0
  139. package/dist/unpkg/dev/serializer/transform.js +278 -0
  140. package/dist/unpkg/dev/serializer.js +248 -0
  141. package/dist/unpkg/dev/store.js +636 -0
  142. package/dist/unpkg/dev/util-Dul6TZts.js +35 -0
  143. package/dist/unpkg/dev/utils-Cqw9eRj5.js +23 -0
  144. package/dist/unpkg/dev-deprecated/-private-B1pSSN52.js +1210 -0
  145. package/dist/unpkg/dev-deprecated/adapter/-private.js +1 -0
  146. package/dist/unpkg/dev-deprecated/adapter/error.js +336 -0
  147. package/dist/unpkg/dev-deprecated/adapter/json-api.js +132 -0
  148. package/dist/unpkg/dev-deprecated/adapter/rest.js +1257 -0
  149. package/dist/unpkg/dev-deprecated/adapter.js +1253 -0
  150. package/dist/unpkg/dev-deprecated/compat/-private.js +1 -0
  151. package/dist/unpkg/dev-deprecated/compat/builders.js +273 -0
  152. package/dist/unpkg/dev-deprecated/compat/extensions.js +243 -0
  153. package/dist/unpkg/dev-deprecated/compat/utils.js +224 -0
  154. package/dist/unpkg/dev-deprecated/compat.js +1020 -0
  155. package/dist/unpkg/dev-deprecated/declarations/adapter/-private/build-url-mixin.d.ts +33 -0
  156. package/dist/unpkg/dev-deprecated/declarations/adapter/-private/fastboot-interface.d.ts +8 -0
  157. package/dist/unpkg/dev-deprecated/declarations/adapter/-private/utils/continue-on-reject.d.ts +1 -0
  158. package/dist/unpkg/dev-deprecated/declarations/adapter/-private/utils/determine-body-promise.d.ts +4 -0
  159. package/dist/unpkg/dev-deprecated/declarations/adapter/-private/utils/fetch.d.ts +8 -0
  160. package/dist/unpkg/dev-deprecated/declarations/adapter/-private/utils/parse-response-headers.d.ts +1 -0
  161. package/dist/unpkg/dev-deprecated/declarations/adapter/-private/utils/serialize-into-hash.d.ts +6 -0
  162. package/dist/unpkg/dev-deprecated/declarations/adapter/-private/utils/serialize-query-params.d.ts +5 -0
  163. package/dist/unpkg/dev-deprecated/declarations/adapter/-private.d.ts +5 -0
  164. package/dist/unpkg/dev-deprecated/declarations/adapter/error.d.ts +215 -0
  165. package/dist/unpkg/dev-deprecated/declarations/adapter/json-api.d.ts +231 -0
  166. package/dist/unpkg/dev-deprecated/declarations/adapter/rest.d.ts +815 -0
  167. package/dist/unpkg/dev-deprecated/declarations/adapter.d.ts +770 -0
  168. package/dist/unpkg/dev-deprecated/declarations/compat/-private.d.ts +13 -0
  169. package/dist/unpkg/dev-deprecated/declarations/compat/builders/find-all.d.ts +35 -0
  170. package/dist/unpkg/dev-deprecated/declarations/compat/builders/find-record.d.ts +56 -0
  171. package/dist/unpkg/dev-deprecated/declarations/compat/builders/query.d.ts +66 -0
  172. package/dist/unpkg/dev-deprecated/declarations/compat/builders/save-record.d.ts +34 -0
  173. package/dist/unpkg/dev-deprecated/declarations/compat/builders/utils.d.ts +3 -0
  174. package/dist/unpkg/dev-deprecated/declarations/compat/builders.d.ts +14 -0
  175. package/dist/unpkg/dev-deprecated/declarations/compat/extensions.d.ts +59 -0
  176. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/fetch-manager.d.ts +55 -0
  177. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/identifier-has-id.d.ts +2 -0
  178. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/legacy-data-fetch.d.ts +11 -0
  179. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/legacy-data-utils.d.ts +5 -0
  180. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/legacy-network-handler.d.ts +2 -0
  181. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/minimum-adapter-interface.d.ts +524 -0
  182. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/minimum-serializer-interface.d.ts +213 -0
  183. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/serializer-response.d.ts +6 -0
  184. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/snapshot-record-array.d.ts +110 -0
  185. package/dist/unpkg/dev-deprecated/declarations/compat/legacy-network-handler/snapshot.d.ts +255 -0
  186. package/dist/unpkg/dev-deprecated/declarations/compat/utils.d.ts +137 -0
  187. package/dist/unpkg/dev-deprecated/declarations/compat.d.ts +157 -0
  188. package/dist/unpkg/dev-deprecated/declarations/index.d.ts +70 -0
  189. package/dist/unpkg/dev-deprecated/declarations/model/-private/attr.d.ts +170 -0
  190. package/dist/unpkg/dev-deprecated/declarations/model/-private/belongs-to.d.ts +174 -0
  191. package/dist/unpkg/dev-deprecated/declarations/model/-private/debug/assert-polymorphic-type.d.ts +5 -0
  192. package/dist/unpkg/dev-deprecated/declarations/model/-private/errors.d.ts +289 -0
  193. package/dist/unpkg/dev-deprecated/declarations/model/-private/has-many.d.ts +162 -0
  194. package/dist/unpkg/dev-deprecated/declarations/model/-private/hooks.d.ts +10 -0
  195. package/dist/unpkg/dev-deprecated/declarations/model/-private/legacy-relationships-support.d.ts +47 -0
  196. package/dist/unpkg/dev-deprecated/declarations/model/-private/model-for-mixin.d.ts +3 -0
  197. package/dist/unpkg/dev-deprecated/declarations/model/-private/model-methods.d.ts +39 -0
  198. package/dist/unpkg/dev-deprecated/declarations/model/-private/model.d.ts +1269 -0
  199. package/dist/unpkg/dev-deprecated/declarations/model/-private/notify-changes.d.ts +4 -0
  200. package/dist/unpkg/dev-deprecated/declarations/model/-private/promise-belongs-to.d.ts +40 -0
  201. package/dist/unpkg/dev-deprecated/declarations/model/-private/promise-many-array.d.ts +124 -0
  202. package/dist/unpkg/dev-deprecated/declarations/model/-private/record-state.d.ts +58 -0
  203. package/dist/unpkg/dev-deprecated/declarations/model/-private/references/belongs-to.d.ts +498 -0
  204. package/dist/unpkg/dev-deprecated/declarations/model/-private/references/has-many.d.ts +500 -0
  205. package/dist/unpkg/dev-deprecated/declarations/model/-private/schema-provider.d.ts +56 -0
  206. package/dist/unpkg/dev-deprecated/declarations/model/-private/type-utils.d.ts +57 -0
  207. package/dist/unpkg/dev-deprecated/declarations/model/-private/util.d.ts +5 -0
  208. package/dist/unpkg/dev-deprecated/declarations/model/-private.d.ts +8 -0
  209. package/dist/unpkg/dev-deprecated/declarations/model/migration-support.d.ts +280 -0
  210. package/dist/unpkg/dev-deprecated/declarations/model-fragments/extensions/fragment-array.d.ts +16 -0
  211. package/dist/unpkg/dev-deprecated/declarations/model-fragments/extensions/fragment.d.ts +15 -0
  212. package/dist/unpkg/dev-deprecated/declarations/model-fragments/hooks/model-for.d.ts +20 -0
  213. package/dist/unpkg/dev-deprecated/declarations/model-fragments/index.d.ts +5 -0
  214. package/dist/unpkg/dev-deprecated/declarations/model-fragments/instance-initializers/fragment-extensions.d.ts +9 -0
  215. package/dist/unpkg/dev-deprecated/declarations/model-fragments/utilities/with-array-defaults.d.ts +15 -0
  216. package/dist/unpkg/dev-deprecated/declarations/model-fragments/utilities/with-fragment-array-defaults.d.ts +20 -0
  217. package/dist/unpkg/dev-deprecated/declarations/model-fragments/utilities/with-fragment-defaults.d.ts +19 -0
  218. package/dist/unpkg/dev-deprecated/declarations/model-fragments/utilities/with-legacy.d.ts +3 -0
  219. package/dist/unpkg/dev-deprecated/declarations/model-fragments.d.ts +9 -0
  220. package/dist/unpkg/dev-deprecated/declarations/model.d.ts +49 -0
  221. package/dist/unpkg/dev-deprecated/declarations/serializer/-private/embedded-records-mixin.d.ts +91 -0
  222. package/dist/unpkg/dev-deprecated/declarations/serializer/-private/transforms/boolean.d.ts +47 -0
  223. package/dist/unpkg/dev-deprecated/declarations/serializer/-private/transforms/date.d.ts +28 -0
  224. package/dist/unpkg/dev-deprecated/declarations/serializer/-private/transforms/number.d.ts +29 -0
  225. package/dist/unpkg/dev-deprecated/declarations/serializer/-private/transforms/string.d.ts +29 -0
  226. package/dist/unpkg/dev-deprecated/declarations/serializer/-private/transforms/transform.d.ts +118 -0
  227. package/dist/unpkg/dev-deprecated/declarations/serializer/-private/utils.d.ts +3 -0
  228. package/dist/unpkg/dev-deprecated/declarations/serializer/json-api.d.ts +123 -0
  229. package/dist/unpkg/dev-deprecated/declarations/serializer/json.d.ts +75 -0
  230. package/dist/unpkg/dev-deprecated/declarations/serializer/rest.d.ts +51 -0
  231. package/dist/unpkg/dev-deprecated/declarations/serializer/transform.d.ts +5 -0
  232. package/dist/unpkg/dev-deprecated/declarations/serializer.d.ts +254 -0
  233. package/dist/unpkg/dev-deprecated/declarations/store/-private.d.ts +223 -0
  234. package/dist/unpkg/dev-deprecated/declarations/store.d.ts +3 -0
  235. package/dist/unpkg/dev-deprecated/errors-CIGPcDvd.js +2595 -0
  236. package/dist/unpkg/dev-deprecated/hooks-QqRnX108.js +74 -0
  237. package/dist/unpkg/dev-deprecated/index.js +195 -0
  238. package/dist/unpkg/dev-deprecated/json-BNrV8EYG.js +1272 -0
  239. package/dist/unpkg/dev-deprecated/model/-private.js +1 -0
  240. package/dist/unpkg/dev-deprecated/model/migration-support.js +579 -0
  241. package/dist/unpkg/dev-deprecated/model-for-CqXsIKws.js +221 -0
  242. package/dist/unpkg/dev-deprecated/model-fragments.js +76 -0
  243. package/dist/unpkg/dev-deprecated/model.js +667 -0
  244. package/dist/unpkg/dev-deprecated/runtime-BPCpkOf1-BKOwiRJp.js +65 -0
  245. package/dist/unpkg/dev-deprecated/schema-provider-g5MfTj8n.js +2338 -0
  246. package/dist/unpkg/dev-deprecated/serialize-into-hash-BnYvPex3.js +261 -0
  247. package/dist/unpkg/dev-deprecated/serializer/json-api.js +527 -0
  248. package/dist/unpkg/dev-deprecated/serializer/json.js +6 -0
  249. package/dist/unpkg/dev-deprecated/serializer/rest.js +1243 -0
  250. package/dist/unpkg/dev-deprecated/serializer/transform.js +278 -0
  251. package/dist/unpkg/dev-deprecated/serializer.js +248 -0
  252. package/dist/unpkg/dev-deprecated/store.js +636 -0
  253. package/dist/unpkg/dev-deprecated/util-Dul6TZts.js +35 -0
  254. package/dist/unpkg/dev-deprecated/utils-Cqw9eRj5.js +23 -0
  255. package/dist/unpkg/prod/-private-B1pSSN52.js +1210 -0
  256. package/dist/unpkg/prod/adapter/-private.js +1 -0
  257. package/dist/unpkg/prod/adapter/error.js +336 -0
  258. package/dist/unpkg/prod/adapter/json-api.js +132 -0
  259. package/dist/unpkg/prod/adapter/rest.js +1257 -0
  260. package/dist/unpkg/prod/adapter.js +1253 -0
  261. package/dist/unpkg/prod/compat/-private.js +1 -0
  262. package/dist/unpkg/prod/compat/builders.js +273 -0
  263. package/dist/unpkg/prod/compat/extensions.js +243 -0
  264. package/dist/unpkg/prod/compat/utils.js +224 -0
  265. package/dist/unpkg/prod/compat.js +1020 -0
  266. package/dist/unpkg/prod/declarations/adapter/-private/build-url-mixin.d.ts +33 -0
  267. package/dist/unpkg/prod/declarations/adapter/-private/fastboot-interface.d.ts +8 -0
  268. package/dist/unpkg/prod/declarations/adapter/-private/utils/continue-on-reject.d.ts +1 -0
  269. package/dist/unpkg/prod/declarations/adapter/-private/utils/determine-body-promise.d.ts +4 -0
  270. package/dist/unpkg/prod/declarations/adapter/-private/utils/fetch.d.ts +8 -0
  271. package/dist/unpkg/prod/declarations/adapter/-private/utils/parse-response-headers.d.ts +1 -0
  272. package/dist/unpkg/prod/declarations/adapter/-private/utils/serialize-into-hash.d.ts +6 -0
  273. package/dist/unpkg/prod/declarations/adapter/-private/utils/serialize-query-params.d.ts +5 -0
  274. package/dist/unpkg/prod/declarations/adapter/-private.d.ts +5 -0
  275. package/dist/unpkg/prod/declarations/adapter/error.d.ts +215 -0
  276. package/dist/unpkg/prod/declarations/adapter/json-api.d.ts +231 -0
  277. package/dist/unpkg/prod/declarations/adapter/rest.d.ts +815 -0
  278. package/dist/unpkg/prod/declarations/adapter.d.ts +770 -0
  279. package/dist/unpkg/prod/declarations/compat/-private.d.ts +13 -0
  280. package/dist/unpkg/prod/declarations/compat/builders/find-all.d.ts +35 -0
  281. package/dist/unpkg/prod/declarations/compat/builders/find-record.d.ts +56 -0
  282. package/dist/unpkg/prod/declarations/compat/builders/query.d.ts +66 -0
  283. package/dist/unpkg/prod/declarations/compat/builders/save-record.d.ts +34 -0
  284. package/dist/unpkg/prod/declarations/compat/builders/utils.d.ts +3 -0
  285. package/dist/unpkg/prod/declarations/compat/builders.d.ts +14 -0
  286. package/dist/unpkg/prod/declarations/compat/extensions.d.ts +59 -0
  287. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/fetch-manager.d.ts +55 -0
  288. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/identifier-has-id.d.ts +2 -0
  289. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/legacy-data-fetch.d.ts +11 -0
  290. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/legacy-data-utils.d.ts +5 -0
  291. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/legacy-network-handler.d.ts +2 -0
  292. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/minimum-adapter-interface.d.ts +524 -0
  293. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/minimum-serializer-interface.d.ts +213 -0
  294. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/serializer-response.d.ts +6 -0
  295. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/snapshot-record-array.d.ts +110 -0
  296. package/dist/unpkg/prod/declarations/compat/legacy-network-handler/snapshot.d.ts +255 -0
  297. package/dist/unpkg/prod/declarations/compat/utils.d.ts +137 -0
  298. package/dist/unpkg/prod/declarations/compat.d.ts +157 -0
  299. package/dist/unpkg/prod/declarations/index.d.ts +70 -0
  300. package/dist/unpkg/prod/declarations/model/-private/attr.d.ts +170 -0
  301. package/dist/unpkg/prod/declarations/model/-private/belongs-to.d.ts +174 -0
  302. package/dist/unpkg/prod/declarations/model/-private/debug/assert-polymorphic-type.d.ts +5 -0
  303. package/dist/unpkg/prod/declarations/model/-private/errors.d.ts +289 -0
  304. package/dist/unpkg/prod/declarations/model/-private/has-many.d.ts +162 -0
  305. package/dist/unpkg/prod/declarations/model/-private/hooks.d.ts +10 -0
  306. package/dist/unpkg/prod/declarations/model/-private/legacy-relationships-support.d.ts +47 -0
  307. package/dist/unpkg/prod/declarations/model/-private/model-for-mixin.d.ts +3 -0
  308. package/dist/unpkg/prod/declarations/model/-private/model-methods.d.ts +39 -0
  309. package/dist/unpkg/prod/declarations/model/-private/model.d.ts +1269 -0
  310. package/dist/unpkg/prod/declarations/model/-private/notify-changes.d.ts +4 -0
  311. package/dist/unpkg/prod/declarations/model/-private/promise-belongs-to.d.ts +40 -0
  312. package/dist/unpkg/prod/declarations/model/-private/promise-many-array.d.ts +124 -0
  313. package/dist/unpkg/prod/declarations/model/-private/record-state.d.ts +58 -0
  314. package/dist/unpkg/prod/declarations/model/-private/references/belongs-to.d.ts +498 -0
  315. package/dist/unpkg/prod/declarations/model/-private/references/has-many.d.ts +500 -0
  316. package/dist/unpkg/prod/declarations/model/-private/schema-provider.d.ts +56 -0
  317. package/dist/unpkg/prod/declarations/model/-private/type-utils.d.ts +57 -0
  318. package/dist/unpkg/prod/declarations/model/-private/util.d.ts +5 -0
  319. package/dist/unpkg/prod/declarations/model/-private.d.ts +8 -0
  320. package/dist/unpkg/prod/declarations/model/migration-support.d.ts +280 -0
  321. package/dist/unpkg/prod/declarations/model-fragments/extensions/fragment-array.d.ts +16 -0
  322. package/dist/unpkg/prod/declarations/model-fragments/extensions/fragment.d.ts +15 -0
  323. package/dist/unpkg/prod/declarations/model-fragments/hooks/model-for.d.ts +20 -0
  324. package/dist/unpkg/prod/declarations/model-fragments/index.d.ts +5 -0
  325. package/dist/unpkg/prod/declarations/model-fragments/instance-initializers/fragment-extensions.d.ts +9 -0
  326. package/dist/unpkg/prod/declarations/model-fragments/utilities/with-array-defaults.d.ts +15 -0
  327. package/dist/unpkg/prod/declarations/model-fragments/utilities/with-fragment-array-defaults.d.ts +20 -0
  328. package/dist/unpkg/prod/declarations/model-fragments/utilities/with-fragment-defaults.d.ts +19 -0
  329. package/dist/unpkg/prod/declarations/model-fragments/utilities/with-legacy.d.ts +3 -0
  330. package/dist/unpkg/prod/declarations/model-fragments.d.ts +9 -0
  331. package/dist/unpkg/prod/declarations/model.d.ts +49 -0
  332. package/dist/unpkg/prod/declarations/serializer/-private/embedded-records-mixin.d.ts +91 -0
  333. package/dist/unpkg/prod/declarations/serializer/-private/transforms/boolean.d.ts +47 -0
  334. package/dist/unpkg/prod/declarations/serializer/-private/transforms/date.d.ts +28 -0
  335. package/dist/unpkg/prod/declarations/serializer/-private/transforms/number.d.ts +29 -0
  336. package/dist/unpkg/prod/declarations/serializer/-private/transforms/string.d.ts +29 -0
  337. package/dist/unpkg/prod/declarations/serializer/-private/transforms/transform.d.ts +118 -0
  338. package/dist/unpkg/prod/declarations/serializer/-private/utils.d.ts +3 -0
  339. package/dist/unpkg/prod/declarations/serializer/json-api.d.ts +123 -0
  340. package/dist/unpkg/prod/declarations/serializer/json.d.ts +75 -0
  341. package/dist/unpkg/prod/declarations/serializer/rest.d.ts +51 -0
  342. package/dist/unpkg/prod/declarations/serializer/transform.d.ts +5 -0
  343. package/dist/unpkg/prod/declarations/serializer.d.ts +254 -0
  344. package/dist/unpkg/prod/declarations/store/-private.d.ts +223 -0
  345. package/dist/unpkg/prod/declarations/store.d.ts +3 -0
  346. package/dist/unpkg/prod/errors-CIGPcDvd.js +2595 -0
  347. package/dist/unpkg/prod/hooks-QqRnX108.js +74 -0
  348. package/dist/unpkg/prod/index.js +195 -0
  349. package/dist/unpkg/prod/json-BNrV8EYG.js +1272 -0
  350. package/dist/unpkg/prod/model/-private.js +1 -0
  351. package/dist/unpkg/prod/model/migration-support.js +579 -0
  352. package/dist/unpkg/prod/model-for-CqXsIKws.js +221 -0
  353. package/dist/unpkg/prod/model-fragments.js +76 -0
  354. package/dist/unpkg/prod/model.js +667 -0
  355. package/dist/unpkg/prod/runtime-BPCpkOf1-BKOwiRJp.js +65 -0
  356. package/dist/unpkg/prod/schema-provider-g5MfTj8n.js +2338 -0
  357. package/dist/unpkg/prod/serialize-into-hash-BnYvPex3.js +261 -0
  358. package/dist/unpkg/prod/serializer/json-api.js +527 -0
  359. package/dist/unpkg/prod/serializer/json.js +6 -0
  360. package/dist/unpkg/prod/serializer/rest.js +1243 -0
  361. package/dist/unpkg/prod/serializer/transform.js +278 -0
  362. package/dist/unpkg/prod/serializer.js +248 -0
  363. package/dist/unpkg/prod/store.js +636 -0
  364. package/dist/unpkg/prod/util-Dul6TZts.js +35 -0
  365. package/dist/unpkg/prod/utils-Cqw9eRj5.js +23 -0
  366. package/dist/unpkg/prod-deprecated/-private-B1pSSN52.js +1210 -0
  367. package/dist/unpkg/prod-deprecated/adapter/-private.js +1 -0
  368. package/dist/unpkg/prod-deprecated/adapter/error.js +336 -0
  369. package/dist/unpkg/prod-deprecated/adapter/json-api.js +132 -0
  370. package/dist/unpkg/prod-deprecated/adapter/rest.js +1257 -0
  371. package/dist/unpkg/prod-deprecated/adapter.js +1253 -0
  372. package/dist/unpkg/prod-deprecated/compat/-private.js +1 -0
  373. package/dist/unpkg/prod-deprecated/compat/builders.js +273 -0
  374. package/dist/unpkg/prod-deprecated/compat/extensions.js +243 -0
  375. package/dist/unpkg/prod-deprecated/compat/utils.js +224 -0
  376. package/dist/unpkg/prod-deprecated/compat.js +1020 -0
  377. package/dist/unpkg/prod-deprecated/declarations/adapter/-private/build-url-mixin.d.ts +33 -0
  378. package/dist/unpkg/prod-deprecated/declarations/adapter/-private/fastboot-interface.d.ts +8 -0
  379. package/dist/unpkg/prod-deprecated/declarations/adapter/-private/utils/continue-on-reject.d.ts +1 -0
  380. package/dist/unpkg/prod-deprecated/declarations/adapter/-private/utils/determine-body-promise.d.ts +4 -0
  381. package/dist/unpkg/prod-deprecated/declarations/adapter/-private/utils/fetch.d.ts +8 -0
  382. package/dist/unpkg/prod-deprecated/declarations/adapter/-private/utils/parse-response-headers.d.ts +1 -0
  383. package/dist/unpkg/prod-deprecated/declarations/adapter/-private/utils/serialize-into-hash.d.ts +6 -0
  384. package/dist/unpkg/prod-deprecated/declarations/adapter/-private/utils/serialize-query-params.d.ts +5 -0
  385. package/dist/unpkg/prod-deprecated/declarations/adapter/-private.d.ts +5 -0
  386. package/dist/unpkg/prod-deprecated/declarations/adapter/error.d.ts +215 -0
  387. package/dist/unpkg/prod-deprecated/declarations/adapter/json-api.d.ts +231 -0
  388. package/dist/unpkg/prod-deprecated/declarations/adapter/rest.d.ts +815 -0
  389. package/dist/unpkg/prod-deprecated/declarations/adapter.d.ts +770 -0
  390. package/dist/unpkg/prod-deprecated/declarations/compat/-private.d.ts +13 -0
  391. package/dist/unpkg/prod-deprecated/declarations/compat/builders/find-all.d.ts +35 -0
  392. package/dist/unpkg/prod-deprecated/declarations/compat/builders/find-record.d.ts +56 -0
  393. package/dist/unpkg/prod-deprecated/declarations/compat/builders/query.d.ts +66 -0
  394. package/dist/unpkg/prod-deprecated/declarations/compat/builders/save-record.d.ts +34 -0
  395. package/dist/unpkg/prod-deprecated/declarations/compat/builders/utils.d.ts +3 -0
  396. package/dist/unpkg/prod-deprecated/declarations/compat/builders.d.ts +14 -0
  397. package/dist/unpkg/prod-deprecated/declarations/compat/extensions.d.ts +59 -0
  398. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/fetch-manager.d.ts +55 -0
  399. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/identifier-has-id.d.ts +2 -0
  400. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/legacy-data-fetch.d.ts +11 -0
  401. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/legacy-data-utils.d.ts +5 -0
  402. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/legacy-network-handler.d.ts +2 -0
  403. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/minimum-adapter-interface.d.ts +524 -0
  404. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/minimum-serializer-interface.d.ts +213 -0
  405. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/serializer-response.d.ts +6 -0
  406. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/snapshot-record-array.d.ts +110 -0
  407. package/dist/unpkg/prod-deprecated/declarations/compat/legacy-network-handler/snapshot.d.ts +255 -0
  408. package/dist/unpkg/prod-deprecated/declarations/compat/utils.d.ts +137 -0
  409. package/dist/unpkg/prod-deprecated/declarations/compat.d.ts +157 -0
  410. package/dist/unpkg/prod-deprecated/declarations/index.d.ts +70 -0
  411. package/dist/unpkg/prod-deprecated/declarations/model/-private/attr.d.ts +170 -0
  412. package/dist/unpkg/prod-deprecated/declarations/model/-private/belongs-to.d.ts +174 -0
  413. package/dist/unpkg/prod-deprecated/declarations/model/-private/debug/assert-polymorphic-type.d.ts +5 -0
  414. package/dist/unpkg/prod-deprecated/declarations/model/-private/errors.d.ts +289 -0
  415. package/dist/unpkg/prod-deprecated/declarations/model/-private/has-many.d.ts +162 -0
  416. package/dist/unpkg/prod-deprecated/declarations/model/-private/hooks.d.ts +10 -0
  417. package/dist/unpkg/prod-deprecated/declarations/model/-private/legacy-relationships-support.d.ts +47 -0
  418. package/dist/unpkg/prod-deprecated/declarations/model/-private/model-for-mixin.d.ts +3 -0
  419. package/dist/unpkg/prod-deprecated/declarations/model/-private/model-methods.d.ts +39 -0
  420. package/dist/unpkg/prod-deprecated/declarations/model/-private/model.d.ts +1269 -0
  421. package/dist/unpkg/prod-deprecated/declarations/model/-private/notify-changes.d.ts +4 -0
  422. package/dist/unpkg/prod-deprecated/declarations/model/-private/promise-belongs-to.d.ts +40 -0
  423. package/dist/unpkg/prod-deprecated/declarations/model/-private/promise-many-array.d.ts +124 -0
  424. package/dist/unpkg/prod-deprecated/declarations/model/-private/record-state.d.ts +58 -0
  425. package/dist/unpkg/prod-deprecated/declarations/model/-private/references/belongs-to.d.ts +498 -0
  426. package/dist/unpkg/prod-deprecated/declarations/model/-private/references/has-many.d.ts +500 -0
  427. package/dist/unpkg/prod-deprecated/declarations/model/-private/schema-provider.d.ts +56 -0
  428. package/dist/unpkg/prod-deprecated/declarations/model/-private/type-utils.d.ts +57 -0
  429. package/dist/unpkg/prod-deprecated/declarations/model/-private/util.d.ts +5 -0
  430. package/dist/unpkg/prod-deprecated/declarations/model/-private.d.ts +8 -0
  431. package/dist/unpkg/prod-deprecated/declarations/model/migration-support.d.ts +280 -0
  432. package/dist/unpkg/prod-deprecated/declarations/model-fragments/extensions/fragment-array.d.ts +16 -0
  433. package/dist/unpkg/prod-deprecated/declarations/model-fragments/extensions/fragment.d.ts +15 -0
  434. package/dist/unpkg/prod-deprecated/declarations/model-fragments/hooks/model-for.d.ts +20 -0
  435. package/dist/unpkg/prod-deprecated/declarations/model-fragments/index.d.ts +5 -0
  436. package/dist/unpkg/prod-deprecated/declarations/model-fragments/instance-initializers/fragment-extensions.d.ts +9 -0
  437. package/dist/unpkg/prod-deprecated/declarations/model-fragments/utilities/with-array-defaults.d.ts +15 -0
  438. package/dist/unpkg/prod-deprecated/declarations/model-fragments/utilities/with-fragment-array-defaults.d.ts +20 -0
  439. package/dist/unpkg/prod-deprecated/declarations/model-fragments/utilities/with-fragment-defaults.d.ts +19 -0
  440. package/dist/unpkg/prod-deprecated/declarations/model-fragments/utilities/with-legacy.d.ts +3 -0
  441. package/dist/unpkg/prod-deprecated/declarations/model-fragments.d.ts +9 -0
  442. package/dist/unpkg/prod-deprecated/declarations/model.d.ts +49 -0
  443. package/dist/unpkg/prod-deprecated/declarations/serializer/-private/embedded-records-mixin.d.ts +91 -0
  444. package/dist/unpkg/prod-deprecated/declarations/serializer/-private/transforms/boolean.d.ts +47 -0
  445. package/dist/unpkg/prod-deprecated/declarations/serializer/-private/transforms/date.d.ts +28 -0
  446. package/dist/unpkg/prod-deprecated/declarations/serializer/-private/transforms/number.d.ts +29 -0
  447. package/dist/unpkg/prod-deprecated/declarations/serializer/-private/transforms/string.d.ts +29 -0
  448. package/dist/unpkg/prod-deprecated/declarations/serializer/-private/transforms/transform.d.ts +118 -0
  449. package/dist/unpkg/prod-deprecated/declarations/serializer/-private/utils.d.ts +3 -0
  450. package/dist/unpkg/prod-deprecated/declarations/serializer/json-api.d.ts +123 -0
  451. package/dist/unpkg/prod-deprecated/declarations/serializer/json.d.ts +75 -0
  452. package/dist/unpkg/prod-deprecated/declarations/serializer/rest.d.ts +51 -0
  453. package/dist/unpkg/prod-deprecated/declarations/serializer/transform.d.ts +5 -0
  454. package/dist/unpkg/prod-deprecated/declarations/serializer.d.ts +254 -0
  455. package/dist/unpkg/prod-deprecated/declarations/store/-private.d.ts +223 -0
  456. package/dist/unpkg/prod-deprecated/declarations/store.d.ts +3 -0
  457. package/dist/unpkg/prod-deprecated/errors-CIGPcDvd.js +2595 -0
  458. package/dist/unpkg/prod-deprecated/hooks-QqRnX108.js +74 -0
  459. package/dist/unpkg/prod-deprecated/index.js +195 -0
  460. package/dist/unpkg/prod-deprecated/json-BNrV8EYG.js +1272 -0
  461. package/dist/unpkg/prod-deprecated/model/-private.js +1 -0
  462. package/dist/unpkg/prod-deprecated/model/migration-support.js +579 -0
  463. package/dist/unpkg/prod-deprecated/model-for-CqXsIKws.js +221 -0
  464. package/dist/unpkg/prod-deprecated/model-fragments.js +76 -0
  465. package/dist/unpkg/prod-deprecated/model.js +667 -0
  466. package/dist/unpkg/prod-deprecated/runtime-BPCpkOf1-BKOwiRJp.js +65 -0
  467. package/dist/unpkg/prod-deprecated/schema-provider-g5MfTj8n.js +2338 -0
  468. package/dist/unpkg/prod-deprecated/serialize-into-hash-BnYvPex3.js +261 -0
  469. package/dist/unpkg/prod-deprecated/serializer/json-api.js +527 -0
  470. package/dist/unpkg/prod-deprecated/serializer/json.js +6 -0
  471. package/dist/unpkg/prod-deprecated/serializer/rest.js +1243 -0
  472. package/dist/unpkg/prod-deprecated/serializer/transform.js +278 -0
  473. package/dist/unpkg/prod-deprecated/serializer.js +248 -0
  474. package/dist/unpkg/prod-deprecated/store.js +636 -0
  475. package/dist/unpkg/prod-deprecated/util-Dul6TZts.js +35 -0
  476. package/dist/unpkg/prod-deprecated/utils-Cqw9eRj5.js +23 -0
  477. package/package.json +6 -6
@@ -0,0 +1,213 @@
1
+ import type { Store } from "@warp-drive/core";
2
+ import type { ModelSchema } from "@warp-drive/core/types";
3
+ import type { ObjectValue } from "@warp-drive/core/types/json/raw";
4
+ import type { JsonApiDocument, SingleResourceDocument } from "@warp-drive/core/types/spec/json-api-raw";
5
+ import type { AdapterPayload } from "./minimum-adapter-interface.js";
6
+ import type { Snapshot } from "./snapshot.js";
7
+ export type SerializerOptions = {
8
+ includeId?: boolean;
9
+ };
10
+ export type RequestType = "findRecord" | "queryRecord" | "findAll" | "findBelongsTo" | "findHasMany" | "findMany" | "query" | "createRecord" | "deleteRecord" | "updateRecord";
11
+ /**
12
+ * :::danger
13
+ ⚠️ **This is LEGACY documentation** for a feature that is no longer encouraged to be used.
14
+ If starting a new app or thinking of implementing a new adapter, consider writing a
15
+ {@link Handler} instead to be used with the {@link RequestManager}
16
+ :::
17
+
18
+ The following documentation describes the methods an application
19
+ serializer should implement with descriptions around when an
20
+ application might expect these methods to be called.
21
+
22
+ Methods that are not required are marked as **optional**.
23
+
24
+ @public
25
+ */
26
+ export interface MinimumSerializerInterface {
27
+ /**
28
+ * This method is responsible for normalizing the value resolved from the promise returned
29
+ * by an Adapter request into the format expected by the `Store`.
30
+ *
31
+ * The output should be a [JSON:API Document](https://jsonapi.org/format/#document-structure)
32
+ * with the following additional restrictions:
33
+ *
34
+ * - `type` should be formatted in the `singular` `dasherized` `lowercase` form
35
+ * - `members` (the property names of attributes and relationships) should be formatted
36
+ * to match their definition in the corresponding `Model` definition. Typically this
37
+ * will be `camelCase`.
38
+ * - [`lid`](https://github.com/emberjs/rfcs/blob/main/text/0403-ember-data-identifiers.md) is
39
+ * a valid optional sibling to `id` and `type` in both [Resources](https://jsonapi.org/format/#document-resource-objects)
40
+ * and [Resource Identifier Objects](https://jsonapi.org/format/#document-resource-identifier-objects)
41
+ *
42
+ * @public
43
+ * @param store The store service that initiated the request being normalized
44
+ * @param schema An object with methods for accessing information about
45
+ * the type, attributes and relationships of the primary type associated with the request.
46
+ * @param rawPayload The raw JSON response data returned from an API request.
47
+ * This correlates to the value the promise returned by the adapter method that performed
48
+ * the request resolved to.
49
+ * @param id For a findRecord request, this is the id initially provided
50
+ * in the call to store.findRecord. Else this value is null.
51
+ * @param requestType The type of request the Adapter had been asked to perform.
52
+ *
53
+ * @return a document following the structure of a [{json:api} Document](https://jsonapi.org/format/#document-structure).
54
+ */
55
+ normalizeResponse(store: Store, schema: ModelSchema, rawPayload: AdapterPayload, id: string | null, requestType: "findRecord" | "queryRecord" | "findAll" | "findBelongsTo" | "findHasMany" | "findMany" | "query" | "createRecord" | "deleteRecord" | "updateRecord"): JsonApiDocument;
56
+ /**
57
+ * This method is responsible for serializing an individual record
58
+ * via a {@link Snapshot} into the format expected by the API.
59
+ *
60
+ * This method is called by `snapshot.serialize()`.
61
+ *
62
+ * When using `Model`, this method is called by `record.serialize()`.
63
+ *
64
+ * When using `JSONAPIAdapter` or `RESTAdapter` this method is called
65
+ * by `updateRecord` and `createRecord` if `Serializer.serializeIntoHash`
66
+ * is not implemented.
67
+ *
68
+ * @public
69
+ * @param snapshot A Snapshot for the record to serialize
70
+ */
71
+ serialize(snapshot: Snapshot, options?: SerializerOptions): ObjectValue;
72
+ /**
73
+ * This method is intended to normalize data into a [JSON:API Document](https://jsonapi.org/format/#document-structure)
74
+ * with a data member containing a single [Resource](https://jsonapi.org/format/#document-resource-objects).
75
+ *
76
+ * - `type` should be formatted in the singular, dasherized and lowercase form
77
+ * - `members` (the property names of attributes and relationships) should be formatted
78
+ * to match their definition in the corresponding `Model` definition. Typically this
79
+ * will be `camelCase`.
80
+ * - [`lid`](https://github.com/emberjs/rfcs/blob/main/text/0403-ember-data-identifiers.md) is
81
+ * a valid optional sibling to `id` and `type` in both [Resources](https://jsonapi.org/format/#document-resource-objects)
82
+ * and [Resource Identifier Objects](https://jsonapi.org/format/#document-resource-identifier-objects)
83
+ *
84
+ * This method is called by the `Store` when `store.normalize(modelName, payload)` is
85
+ * called. It is recommended to use `store.serializerFor(modelName).normalizeResponse`
86
+ * over `store.normalize`.
87
+ *
88
+ * This method may be called when also using the `RESTSerializer`
89
+ * when `serializer.pushPayload` is called by `store.pushPayload`.
90
+ * However, it is recommended to use `store.push` over `store.pushPayload` after normalizing
91
+ * the payload directly.
92
+ *
93
+ * Example:
94
+ * ```js
95
+ * function pushPayload(store, modelName, rawPayload) {
96
+ * const ModelClass = store.modelFor(modelName);
97
+ * const serializer = store.serializerFor(modelName);
98
+ * const jsonApiPayload = serializer.normalizeResponse(store, ModelClass, rawPayload, null, 'query');
99
+ *
100
+ * return store.push(jsonApiPayload);
101
+ * }
102
+ * ```
103
+ *
104
+ * This method may be called when also using the `JSONAPISerializer`
105
+ * when normalizing included records. If mixing serializer usage in this way
106
+ * we recommend implementing this method, but caution that it may lead
107
+ * to unexpected mixing of formats.
108
+ *
109
+ * This method may also be called when normalizing embedded relationships when
110
+ * using the `EmbeddedRecordsMixin`. If using this mixin in a serializer in
111
+ * your application we recommend implementing this method, but caution that
112
+ * it may lead to unexpected mixing of formats.
113
+ *
114
+ * @public
115
+ * @optional
116
+ * @param schema An object with methods for accessing information about
117
+ * the type, attributes and relationships of the primary type associated with the request.
118
+ * @param rawPayload Some raw JSON data to be normalized into a JSON:API Resource.
119
+ * @param prop When called by the EmbeddedRecordsMixin this param will be the
120
+ * property at which the object provided as rawPayload was found.
121
+ * @return A JSON:API Document containing a single JSON:API Resource as its primary data.
122
+ */
123
+ normalize?(schema: ModelSchema, rawPayload: ObjectValue, prop?: string): SingleResourceDocument;
124
+ /**
125
+ * When using `JSONAPIAdapter` or `RESTAdapter` this method is called
126
+ * by `adapter.updateRecord` and `adapter.createRecord` if `serializer.serializeIntoHash`
127
+ * is implemented. If this method is not implemented, `serializer.serialize`
128
+ * will be called in this case.
129
+ *
130
+ * You can use this method to customize the root keys serialized into the payload.
131
+ * The hash property should be modified by reference.
132
+ *
133
+ * For instance, your API may expect resources to be keyed by underscored type in the payload:
134
+ *
135
+ * ```js
136
+ * {
137
+ * _user: {
138
+ * type: 'user',
139
+ * id: '1'
140
+ * }
141
+ * }
142
+ * ```
143
+ *
144
+ * Which when using these adapters can be achieved by implementing this method similar
145
+ * to the following:
146
+ *
147
+ * ```js
148
+ * serializeIntoHash(hash, ModelClass, snapshot, options) {
149
+ * hash[`_${snapshot.modelName}`] = this.serialize(snapshot, options).data;
150
+ * }
151
+ * ```
152
+ *
153
+ * @public
154
+ * @optional
155
+ * @param hash A top most object of the request payload onto
156
+ * which to append the serialized record
157
+ * @param schema An object with methods for accessing information about
158
+ * the type, attributes and relationships of the primary type associated with the request.
159
+ * @param snapshot A Snapshot for the record to serialize
160
+ */
161
+ serializeIntoHash?(hash: object, schema: ModelSchema, snapshot: Snapshot, options?: SerializerOptions): void;
162
+ /**
163
+ * This method allows for normalization of data when `store.pushPayload` is called
164
+ * and should be implemented if you want to use that method.
165
+ *
166
+ * The method is responsible for pushing new data to the store using `store.push`
167
+ * once any necessary normalization has occurred, and no data in the store will be
168
+ * updated unless it does so.
169
+ *
170
+ * The normalized form pushed to the store should be a [JSON:API Document](https://jsonapi.org/format/#document-structure)
171
+ * with the following additional restrictions:
172
+ *
173
+ * - `type` should be formatted in the singular, dasherized and lowercase form
174
+ * - `members` (the property names of attributes and relationships) should be formatted
175
+ * to match their definition in the corresponding `Model` definition. Typically this
176
+ * will be `camelCase`.
177
+ * - [`lid`](https://github.com/emberjs/rfcs/blob/main/text/0403-ember-data-identifiers.md) is
178
+ * a valid optional sibling to `id` and `type` in both [Resources](https://jsonapi.org/format/#document-resource-objects)
179
+ * and [Resource Identifier Objects](https://jsonapi.org/format/#document-resource-identifier-objects)
180
+ *
181
+ * If you need better control over normalization or want access to the records being added or updated
182
+ * in the store, we recommended using `store.push` over `store.pushPayload` after normalizing
183
+ * the payload directly. This can even take advantage of an existing serializer for the format
184
+ * the data is in, for example:
185
+ *
186
+ * ```js
187
+ * function pushPayload(store, modelName, rawPayload) {
188
+ * const ModelClass = store.modelFor(modelName);
189
+ * const serializer = store.serializerFor(modelName);
190
+ * const jsonApiPayload = serializer.normalizeResponse(store, ModelClass, rawPayload, null, 'query');
191
+ *
192
+ * return store.push(jsonApiPayload);
193
+ * }
194
+ * ```
195
+ *
196
+ * @public
197
+ * @optional
198
+ * @param store The store service that initiated the request being normalized
199
+ * @param rawPayload The raw JSON response data returned from an API request.
200
+ * This JSON should be in the API format expected by the serializer.
201
+ */
202
+ pushPayload?(store: Store, rawPayload: ObjectValue): void;
203
+ /**
204
+ * In some situations the serializer may need to perform cleanup when destroyed,
205
+ * that cleanup can be done in `destroy`.
206
+ *
207
+ * If not implemented, the store does not inform the serializer of destruction.
208
+ *
209
+ * @public
210
+ * @optional
211
+ */
212
+ destroy?(): void;
213
+ }
@@ -0,0 +1,6 @@
1
+ import type { Store } from "@warp-drive/core";
2
+ import type { ModelSchema } from "@warp-drive/core/types";
3
+ import type { JsonApiDocument } from "@warp-drive/core/types/spec/json-api-raw";
4
+ import type { AdapterPayload } from "./minimum-adapter-interface.js";
5
+ import type { MinimumSerializerInterface, RequestType } from "./minimum-serializer-interface.js";
6
+ export declare function normalizeResponseHelper(serializer: MinimumSerializerInterface | null, store: Store, modelClass: ModelSchema, payload: AdapterPayload, id: string | null, requestType: RequestType): JsonApiDocument;
@@ -0,0 +1,110 @@
1
+ import type { Store } from "@warp-drive/core";
2
+ import type { FindAllOptions } from "@warp-drive/core/types";
3
+ import type { Snapshot } from "./snapshot.js";
4
+ /**
5
+ SnapshotRecordArray is not directly instantiable.
6
+ Instances are provided to consuming application's
7
+ adapters for certain `findAll` requests.
8
+
9
+ @hideconstructor
10
+ @public
11
+ */
12
+ export declare class SnapshotRecordArray {
13
+ /**
14
+ * The ResourceType of the underlying records for the {@link Snapshot | Snapshots} in the array
15
+ */
16
+ modelName: string;
17
+ /**
18
+ * A hash of adapter options passed into the store method for this request.
19
+
20
+ Example
21
+
22
+ ```js [app/adapters/post.js]
23
+ import MyCustomAdapter from './custom-adapter';
24
+
25
+ export default class PostAdapter extends MyCustomAdapter {
26
+ findAll(store, type, sinceToken, snapshotRecordArray) {
27
+ if (snapshotRecordArray.adapterOptions.subscribe) {
28
+ // ...
29
+ }
30
+ // ...
31
+ }
32
+ }
33
+ ```
34
+ */
35
+ adapterOptions?: Record<string, unknown>;
36
+ /**
37
+ * The relationships to include for this request.
38
+
39
+ Example
40
+
41
+ ```js [app/adapters/application.js]
42
+ import Adapter from '@ember-data/adapter';
43
+
44
+ export default class ApplicationAdapter extends Adapter {
45
+ findAll(store, type, snapshotRecordArray) {
46
+ let url = `/${type.modelName}?include=${encodeURIComponent(snapshotRecordArray.include)}`;
47
+
48
+ return fetch(url).then((response) => response.json())
49
+ }
50
+ }
51
+ ```
52
+ */
53
+ include?: string | string[];
54
+ /**
55
+ SnapshotRecordArray is not directly instantiable.
56
+ Instances are provided to consuming application's
57
+ adapters and serializers for certain requests.
58
+
59
+ @private
60
+ @constructor
61
+ @param {Store} store
62
+ @param {String} type
63
+ @param options
64
+ */
65
+ constructor(store: Store, type: string, options?: FindAllOptions);
66
+ /**
67
+ Number of records in the array
68
+
69
+ Example
70
+
71
+ ```js [app/adapters/post.js]
72
+ import JSONAPIAdapter from '@ember-data/adapter/json-api';
73
+
74
+ export default class PostAdapter extends JSONAPIAdapter {
75
+ shouldReloadAll(store, snapshotRecordArray) {
76
+ return !snapshotRecordArray.length;
77
+ }
78
+ });
79
+ ```
80
+ */
81
+ get length(): number;
82
+ /**
83
+ Get snapshots of the underlying record array
84
+
85
+ Example
86
+
87
+ ```js [app/adapters/post.js]
88
+ import JSONAPIAdapter from '@ember-data/adapter/json-api';
89
+
90
+ export default class PostAdapter extends JSONAPIAdapter {
91
+ shouldReloadAll(store, snapshotArray) {
92
+ let snapshots = snapshotArray.snapshots();
93
+
94
+ return snapshots.any(function(ticketSnapshot) {
95
+ let timeDiff = moment().diff(ticketSnapshot.attr('lastAccessedAt'), 'minutes');
96
+ if (timeDiff > 20) {
97
+ return true;
98
+ } else {
99
+ return false;
100
+ }
101
+ });
102
+ }
103
+ }
104
+ ```
105
+
106
+ @public
107
+ @return Array of snapshots
108
+ */
109
+ snapshots(): Snapshot[];
110
+ }
@@ -0,0 +1,255 @@
1
+ import type { Store } from "@warp-drive/core";
2
+ import type { FindRecordOptions } from "@warp-drive/core/types";
3
+ import type { ChangedAttributesHash } from "@warp-drive/core/types/cache";
4
+ import type { ResourceKey } from "@warp-drive/core/types/identifier";
5
+ import type { TypedRecordInstance, TypeFromInstance } from "@warp-drive/core/types/record";
6
+ import type { LegacyAttributeField, LegacyRelationshipField } from "@warp-drive/core/types/schema/fields";
7
+ import type { SerializerOptions } from "./minimum-serializer-interface.js";
8
+ type RecordId = string | null;
9
+ /**
10
+ Snapshot is not directly instantiable.
11
+ Instances are provided to a consuming application's
12
+ adapters and serializers for certain requests.
13
+
14
+ Snapshots are only available when using `@ember-data/legacy-compat`
15
+ for legacy compatibility with adapters and serializers.
16
+
17
+ For serialization of records in modern paradigms, request data from
18
+ the cache or off the record directly.
19
+
20
+ @hideconstructor
21
+ @public
22
+ */
23
+ export declare class Snapshot<R = unknown> {
24
+ /**
25
+ The unique ResourceKey associated with this Snapshot.
26
+
27
+ @public
28
+ */
29
+ identifier: ResourceKey<R extends TypedRecordInstance ? TypeFromInstance<R> : string>;
30
+ /**
31
+ The ResourceType of the underlying record for this Snapshot, as a string.
32
+
33
+ @public
34
+ */
35
+ modelName: R extends TypedRecordInstance ? TypeFromInstance<R> : string;
36
+ /**
37
+ The id of the snapshot's underlying record
38
+
39
+ Example
40
+
41
+ ```js
42
+ // store.push('post', { id: 1, author: 'Tomster', title: 'Ember.js rocks' });
43
+ postSnapshot.id; // => '1'
44
+ ```
45
+
46
+ @public
47
+ */
48
+ id: string | null;
49
+ /**
50
+ If `include` was passed to the options for the request, the value
51
+ would be available here.
52
+
53
+ @public
54
+ */
55
+ include?: string | string[];
56
+ /**
57
+ The adapterOptions passed to the request which generated this Snapshot, if any
58
+
59
+ @public
60
+ */
61
+ adapterOptions?: Record<string, unknown>;
62
+ constructor(options: FindRecordOptions, identifier: ResourceKey<R extends TypedRecordInstance ? TypeFromInstance<R> : string>, store: Store);
63
+ /**
64
+ The underlying record for this snapshot. Can be used to access methods and
65
+ properties defined on the record.
66
+
67
+ ```js
68
+ const someValue = snapshot.record.someProp;
69
+ ```
70
+
71
+ @property record
72
+ @public
73
+ */
74
+ get record(): R | null;
75
+ get isNew(): boolean;
76
+ /**
77
+ Returns the value of an attribute.
78
+
79
+ Example
80
+
81
+ ```javascript
82
+ // store.push('post', { id: 1, author: 'Tomster', title: 'Ember.js rocks' });
83
+ postSnapshot.attr('author'); // => 'Tomster'
84
+ postSnapshot.attr('title'); // => 'Ember.js rocks'
85
+ ```
86
+
87
+ Note: Values are loaded eagerly and cached when the snapshot is created.
88
+
89
+ @return The attribute value or undefined
90
+ @public
91
+ */
92
+ attr(keyName: keyof R & string): unknown;
93
+ /**
94
+ Returns all attributes and their corresponding values.
95
+
96
+ ::: warning ⚠️ WARNING
97
+ Attributes are SHALLOW copied from the cache.
98
+ Because they are NOT deep copied from the cache, mutating
99
+ any object or array fields will cause unintended side-effects
100
+ and bugs.
101
+ :::
102
+
103
+ Example
104
+
105
+ ```js
106
+ // store.push('post', { id: 1, author: 'Tomster', title: 'Ember.js rocks' });
107
+ postSnapshot.attributes(); // => { author: 'Tomster', title: 'Ember.js rocks' }
108
+ ```
109
+
110
+ @return All attributes of the current snapshot
111
+ @public
112
+ */
113
+ attributes(): Record<keyof R & string, unknown>;
114
+ /**
115
+ Returns all changed attributes and their old and new values.
116
+
117
+ Example
118
+
119
+ ```js
120
+ // store.push('post', { id: 1, author: 'Tomster', title: 'Ember.js rocks' });
121
+ postModel.set('title', 'Ember.js rocks!');
122
+ postSnapshot.changedAttributes(); // => { title: ['Ember.js rocks', 'Ember.js rocks!'] }
123
+ ```
124
+
125
+ @return All changed attributes of the current snapshot
126
+ @public
127
+ */
128
+ changedAttributes(): ChangedAttributesHash;
129
+ /**
130
+ Returns the current value of a belongsTo relationship.
131
+
132
+ `belongsTo` takes an optional hash of options as a second parameter,
133
+ currently supported options are:
134
+
135
+ - `id`: set to `true` if you only want the ID of the related record to be
136
+ returned.
137
+
138
+ Example
139
+
140
+ ```js
141
+ // store.push('post', { id: 1, title: 'Hello World' });
142
+ // store.createRecord('comment', { body: 'Lorem ipsum', post: post });
143
+ commentSnapshot.belongsTo('post'); // => Snapshot
144
+ commentSnapshot.belongsTo('post', { id: true }); // => '1'
145
+
146
+ // store.push('comment', { id: 1, body: 'Lorem ipsum' });
147
+ commentSnapshot.belongsTo('post'); // => undefined
148
+ ```
149
+
150
+ Calling `belongsTo` will return a new Snapshot as long as there's any known
151
+ data for the relationship available, such as an ID. If the relationship is
152
+ known but unset, `belongsTo` will return `null`. If the contents of the
153
+ relationship is unknown `belongsTo` will return `undefined`.
154
+
155
+ Note: Relationships are loaded lazily and cached upon first access.
156
+
157
+ @public
158
+ @return A snapshot or ID of a known relationship or null if the
159
+ relationship is known but unset. undefined will be returned if the
160
+ contents of the relationship are unknown.
161
+ */
162
+ belongsTo(keyName: string, options?: {
163
+ id?: boolean;
164
+ }): Snapshot | RecordId | undefined;
165
+ /**
166
+ Returns the current value of a hasMany relationship.
167
+
168
+ `hasMany` takes an optional hash of options as a second parameter,
169
+ currently supported options are:
170
+
171
+ - `ids`: set to `true` if you only want the IDs of the related records to be
172
+ returned.
173
+
174
+ Example
175
+
176
+ ```javascript
177
+ // store.push('post', { id: 1, title: 'Hello World', comments: [2, 3] });
178
+ postSnapshot.hasMany('comments'); // => [Snapshot, Snapshot]
179
+ postSnapshot.hasMany('comments', { ids: true }); // => ['2', '3']
180
+
181
+ // store.push('post', { id: 1, title: 'Hello World' });
182
+ postSnapshot.hasMany('comments'); // => undefined
183
+ ```
184
+
185
+ Note: Relationships are loaded lazily and cached upon first access.
186
+
187
+ @public
188
+ @return An array of snapshots or IDs of a known
189
+ relationship or an empty array if the relationship is known but unset.
190
+ undefined will be returned if the contents of the relationship is unknown.
191
+ */
192
+ hasMany(keyName: string, options?: {
193
+ ids?: boolean;
194
+ }): RecordId[] | Snapshot[] | undefined;
195
+ /**
196
+ Iterates through all the attributes of the model, calling the passed
197
+ function on each attribute.
198
+
199
+ Example
200
+
201
+ ```javascript
202
+ snapshot.eachAttribute(function(name, meta) {
203
+ // ...
204
+ });
205
+ ```
206
+
207
+ @param callback the callback to execute
208
+ @param binding the optional value to which the callback's `this` should be bound
209
+ @public
210
+ */
211
+ eachAttribute(callback: (key: string, meta: LegacyAttributeField) => void, binding?: unknown): void;
212
+ /**
213
+ Iterates through all the relationships of the model, calling the passed
214
+ function on each relationship.
215
+
216
+ Example
217
+
218
+ ```javascript
219
+ snapshot.eachRelationship(function(name, relationship) {
220
+ // ...
221
+ });
222
+ ```
223
+
224
+ @param callback the callback to execute
225
+ @param binding the optional value to which the callback's `this` should be bound
226
+ @public
227
+ */
228
+ eachRelationship(callback: (key: string, meta: LegacyRelationshipField) => void, binding?: unknown): void;
229
+ /**
230
+ Serializes the snapshot using the serializer for the model.
231
+
232
+ Example
233
+
234
+ ```js [app/adapters/application.js]
235
+ import Adapter from '@ember-data/adapter';
236
+
237
+ export default Adapter.extend({
238
+ createRecord(store, type, snapshot) {
239
+ let data = snapshot.serialize({ includeId: true });
240
+ let url = `/${type.modelName}`;
241
+
242
+ return fetch(url, {
243
+ method: 'POST',
244
+ body: data,
245
+ }).then((response) => response.json())
246
+ }
247
+ });
248
+ ```
249
+
250
+ @return an object whose values are primitive JSON values only
251
+ @public
252
+ */
253
+ serialize(options?: SerializerOptions): unknown;
254
+ }
255
+ export {};