@warp-drive/legacy 5.9.0-alpha.21 → 5.9.0-alpha.22

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 (467) hide show
  1. package/dist/-private-DQ6Iap2t.js +193 -0
  2. package/dist/-private-DQ6Iap2t.js.map +1 -0
  3. package/dist/-private-DccRZQsm.js +904 -0
  4. package/dist/-private-DccRZQsm.js.map +1 -0
  5. package/dist/adapter/-private.d.ts +33 -0
  6. package/dist/adapter/-private.d.ts.map +1 -0
  7. package/dist/adapter/-private.js +3 -1
  8. package/dist/adapter/error.d.ts +2 -0
  9. package/dist/adapter/error.js +422 -453
  10. package/dist/adapter/error.js.map +1 -0
  11. package/{declarations → dist}/adapter/json-api.d.ts +30 -29
  12. package/dist/adapter/json-api.d.ts.map +1 -0
  13. package/dist/adapter/json-api.js +265 -143
  14. package/dist/adapter/json-api.js.map +1 -0
  15. package/dist/adapter/rest.d.ts +2 -0
  16. package/dist/adapter/rest.js +937 -1136
  17. package/dist/adapter/rest.js.map +1 -0
  18. package/dist/adapter-CARrK3-8.d.ts +784 -0
  19. package/dist/adapter-CARrK3-8.d.ts.map +1 -0
  20. package/dist/adapter-XgLAkYVs.js +1130 -0
  21. package/dist/adapter-XgLAkYVs.js.map +1 -0
  22. package/dist/adapter.d.ts +2 -0
  23. package/dist/adapter.js +1 -1248
  24. package/dist/compat/-private.d.ts +2 -0
  25. package/dist/compat/-private.js +3 -1
  26. package/dist/compat/builders.d.ts +169 -0
  27. package/dist/compat/builders.d.ts.map +1 -0
  28. package/dist/compat/builders.js +205 -245
  29. package/dist/compat/builders.js.map +1 -0
  30. package/dist/compat/extensions.d.ts +2 -0
  31. package/dist/compat/extensions.js +265 -304
  32. package/dist/compat/extensions.js.map +1 -0
  33. package/dist/compat/utils.d.ts +151 -0
  34. package/dist/compat/utils.d.ts.map +1 -0
  35. package/dist/compat/utils.js +187 -206
  36. package/dist/compat/utils.js.map +1 -0
  37. package/dist/compat-BbNNmTM-.d.ts +1386 -0
  38. package/dist/compat-BbNNmTM-.d.ts.map +1 -0
  39. package/dist/compat-g__Pfy2S.js +734 -0
  40. package/dist/compat-g__Pfy2S.js.map +1 -0
  41. package/dist/compat.d.ts +2 -0
  42. package/dist/compat.js +1 -1036
  43. package/dist/error-CzkyXr1Q.d.ts +435 -0
  44. package/dist/error-CzkyXr1Q.d.ts.map +1 -0
  45. package/dist/errors-LQhmDVdd.js +2134 -0
  46. package/dist/errors-LQhmDVdd.js.map +1 -0
  47. package/dist/extensions-DumNm4dA.d.ts +102 -0
  48. package/dist/extensions-DumNm4dA.d.ts.map +1 -0
  49. package/dist/index.d.ts +243 -0
  50. package/dist/index.d.ts.map +1 -0
  51. package/dist/index.js +267 -339
  52. package/dist/index.js.map +1 -0
  53. package/dist/json-BXNPTlcH.js +1106 -0
  54. package/dist/json-BXNPTlcH.js.map +1 -0
  55. package/dist/model/-private.d.ts +3 -0
  56. package/dist/model/-private.js +3 -1
  57. package/dist/model/migration-support.d.ts +335 -0
  58. package/dist/model/migration-support.d.ts.map +1 -0
  59. package/dist/model/migration-support.js +504 -575
  60. package/dist/model/migration-support.js.map +1 -0
  61. package/dist/model-62hn5_PD.d.ts +3107 -0
  62. package/dist/model-62hn5_PD.d.ts.map +1 -0
  63. package/dist/model-BtIEHqYZ.js +683 -0
  64. package/dist/model-BtIEHqYZ.js.map +1 -0
  65. package/dist/model-fragments-Dpn9285r.js +334 -0
  66. package/dist/model-fragments-Dpn9285r.js.map +1 -0
  67. package/dist/model-fragments.d.ts +294 -0
  68. package/dist/model-fragments.d.ts.map +1 -0
  69. package/dist/model-fragments.js +2 -94
  70. package/dist/model.d.ts +404 -0
  71. package/dist/model.d.ts.map +1 -0
  72. package/dist/model.js +3 -670
  73. package/{declarations/adapter/rest.d.ts → dist/rest-0NhtexIq.d.ts} +183 -173
  74. package/dist/rest-0NhtexIq.d.ts.map +1 -0
  75. package/dist/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
  76. package/dist/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
  77. package/dist/schema-provider-DsKuB5Wb.js +1929 -0
  78. package/dist/schema-provider-DsKuB5Wb.js.map +1 -0
  79. package/{declarations → dist}/serializer/json-api.d.ts +3 -0
  80. package/dist/serializer/json-api.d.ts.map +1 -0
  81. package/dist/serializer/json-api.js +527 -519
  82. package/dist/serializer/json-api.js.map +1 -0
  83. package/{declarations → dist}/serializer/json.d.ts +3 -0
  84. package/dist/serializer/json.d.ts.map +1 -0
  85. package/dist/serializer/json.js +3 -6
  86. package/{declarations/serializer/-private/embedded-records-mixin.d.ts → dist/serializer/rest.d.ts} +56 -1
  87. package/dist/serializer/rest.d.ts.map +1 -0
  88. package/dist/serializer/rest.js +958 -1199
  89. package/dist/serializer/rest.js.map +1 -0
  90. package/dist/serializer/transform.d.ts +313 -0
  91. package/dist/serializer/transform.d.ts.map +1 -0
  92. package/dist/serializer/transform.js +283 -308
  93. package/dist/serializer/transform.js.map +1 -0
  94. package/dist/serializer.d.ts +151 -0
  95. package/dist/serializer.d.ts.map +1 -0
  96. package/dist/serializer.js +205 -205
  97. package/dist/serializer.js.map +1 -0
  98. package/dist/store-C4qYzXei.js +473 -0
  99. package/dist/store-C4qYzXei.js.map +1 -0
  100. package/dist/store.d.ts +13 -0
  101. package/dist/store.d.ts.map +1 -0
  102. package/dist/store.js +1 -641
  103. package/dist/unpkg/dev/-private-CrEyBE-B.js +189 -0
  104. package/dist/unpkg/dev/-private-CrEyBE-B.js.map +1 -0
  105. package/dist/unpkg/dev/-private-vOhxVExH.js +896 -0
  106. package/dist/unpkg/dev/-private-vOhxVExH.js.map +1 -0
  107. package/dist/unpkg/dev/adapter/-private.js +3 -1
  108. package/dist/unpkg/dev/adapter/error.js +421 -452
  109. package/dist/unpkg/dev/adapter/error.js.map +1 -0
  110. package/dist/unpkg/dev/adapter/json-api.js +239 -257
  111. package/dist/unpkg/dev/adapter/json-api.js.map +1 -0
  112. package/dist/unpkg/dev/adapter/rest.js +935 -1134
  113. package/dist/unpkg/dev/adapter/rest.js.map +1 -0
  114. package/dist/unpkg/dev/adapter-Cw0uSl8d.js +1129 -0
  115. package/dist/unpkg/dev/adapter-Cw0uSl8d.js.map +1 -0
  116. package/dist/unpkg/dev/adapter.js +1 -1247
  117. package/dist/unpkg/dev/compat/-private.js +3 -1
  118. package/dist/unpkg/dev/compat/builders.js +204 -247
  119. package/dist/unpkg/dev/compat/builders.js.map +1 -0
  120. package/dist/unpkg/dev/compat/extensions.js +264 -303
  121. package/dist/unpkg/dev/compat/extensions.js.map +1 -0
  122. package/dist/unpkg/dev/compat/utils.js +186 -205
  123. package/dist/unpkg/dev/compat/utils.js.map +1 -0
  124. package/dist/unpkg/dev/compat-CeyxXB7K.js +825 -0
  125. package/dist/unpkg/dev/compat-CeyxXB7K.js.map +1 -0
  126. package/dist/unpkg/dev/compat.js +1 -1178
  127. package/dist/unpkg/dev/errors-1javxsPo.js +2127 -0
  128. package/dist/unpkg/dev/errors-1javxsPo.js.map +1 -0
  129. package/dist/unpkg/dev/index.js +266 -344
  130. package/dist/unpkg/dev/index.js.map +1 -0
  131. package/dist/unpkg/dev/json-DDJji3V3.js +1104 -0
  132. package/dist/unpkg/dev/json-DDJji3V3.js.map +1 -0
  133. package/dist/unpkg/dev/model/-private.js +3 -1
  134. package/dist/unpkg/dev/model/migration-support.js +481 -549
  135. package/dist/unpkg/dev/model/migration-support.js.map +1 -0
  136. package/dist/unpkg/dev/model-C9Xb1R1x.js +655 -0
  137. package/dist/unpkg/dev/model-C9Xb1R1x.js.map +1 -0
  138. package/dist/unpkg/dev/model-fragments-Dpn9285r.js +334 -0
  139. package/dist/unpkg/dev/model-fragments-Dpn9285r.js.map +1 -0
  140. package/dist/unpkg/dev/model-fragments.js +2 -94
  141. package/dist/unpkg/dev/model.js +3 -681
  142. package/dist/unpkg/dev/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
  143. package/dist/unpkg/dev/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
  144. package/dist/unpkg/dev/schema-provider-Dy6c1J5f.js +1834 -0
  145. package/dist/unpkg/dev/schema-provider-Dy6c1J5f.js.map +1 -0
  146. package/dist/unpkg/dev/serializer/json-api.js +514 -634
  147. package/dist/unpkg/dev/serializer/json-api.js.map +1 -0
  148. package/dist/unpkg/dev/serializer/json.js +3 -4
  149. package/dist/unpkg/dev/serializer/rest.js +954 -1196
  150. package/dist/unpkg/dev/serializer/rest.js.map +1 -0
  151. package/dist/unpkg/dev/serializer/transform.js +283 -308
  152. package/dist/unpkg/dev/serializer/transform.js.map +1 -0
  153. package/dist/unpkg/dev/serializer.js +205 -205
  154. package/dist/unpkg/dev/serializer.js.map +1 -0
  155. package/dist/unpkg/dev/store-D_V8-HQl.js +472 -0
  156. package/dist/unpkg/dev/store-D_V8-HQl.js.map +1 -0
  157. package/dist/unpkg/dev/store.js +1 -649
  158. package/dist/unpkg/dev/util-dSKEgQDp.js +12 -0
  159. package/dist/unpkg/dev/util-dSKEgQDp.js.map +1 -0
  160. package/dist/unpkg/dev/utils-DYC9utVJ.js +11 -0
  161. package/dist/unpkg/dev/utils-DYC9utVJ.js.map +1 -0
  162. package/dist/unpkg/dev-deprecated/-private-CrEyBE-B.js +189 -0
  163. package/dist/unpkg/dev-deprecated/-private-CrEyBE-B.js.map +1 -0
  164. package/dist/unpkg/dev-deprecated/-private-vOhxVExH.js +896 -0
  165. package/dist/unpkg/dev-deprecated/-private-vOhxVExH.js.map +1 -0
  166. package/dist/unpkg/dev-deprecated/adapter/-private.js +3 -1
  167. package/dist/unpkg/dev-deprecated/adapter/error.js +421 -452
  168. package/dist/unpkg/dev-deprecated/adapter/error.js.map +1 -0
  169. package/dist/unpkg/dev-deprecated/adapter/json-api.js +239 -257
  170. package/dist/unpkg/dev-deprecated/adapter/json-api.js.map +1 -0
  171. package/dist/unpkg/dev-deprecated/adapter/rest.js +935 -1134
  172. package/dist/unpkg/dev-deprecated/adapter/rest.js.map +1 -0
  173. package/dist/unpkg/dev-deprecated/adapter-Cw0uSl8d.js +1129 -0
  174. package/dist/unpkg/dev-deprecated/adapter-Cw0uSl8d.js.map +1 -0
  175. package/dist/unpkg/dev-deprecated/adapter.js +1 -1247
  176. package/dist/unpkg/dev-deprecated/compat/-private.js +3 -1
  177. package/dist/unpkg/dev-deprecated/compat/builders.js +204 -247
  178. package/dist/unpkg/dev-deprecated/compat/builders.js.map +1 -0
  179. package/dist/unpkg/dev-deprecated/compat/extensions.js +264 -303
  180. package/dist/unpkg/dev-deprecated/compat/extensions.js.map +1 -0
  181. package/dist/unpkg/dev-deprecated/compat/utils.js +186 -205
  182. package/dist/unpkg/dev-deprecated/compat/utils.js.map +1 -0
  183. package/dist/unpkg/dev-deprecated/compat-DmAgB2NS.js +825 -0
  184. package/dist/unpkg/dev-deprecated/compat-DmAgB2NS.js.map +1 -0
  185. package/dist/unpkg/dev-deprecated/compat.js +1 -1178
  186. package/dist/unpkg/dev-deprecated/errors-C4_aOhY5.js +2128 -0
  187. package/dist/unpkg/dev-deprecated/errors-C4_aOhY5.js.map +1 -0
  188. package/dist/unpkg/dev-deprecated/index.js +266 -343
  189. package/dist/unpkg/dev-deprecated/index.js.map +1 -0
  190. package/dist/unpkg/dev-deprecated/json-DDJji3V3.js +1104 -0
  191. package/dist/unpkg/dev-deprecated/json-DDJji3V3.js.map +1 -0
  192. package/dist/unpkg/dev-deprecated/model/-private.js +3 -1
  193. package/dist/unpkg/dev-deprecated/model/migration-support.js +492 -566
  194. package/dist/unpkg/dev-deprecated/model/migration-support.js.map +1 -0
  195. package/dist/unpkg/dev-deprecated/model-CvSMYkgs.js +660 -0
  196. package/dist/unpkg/dev-deprecated/model-CvSMYkgs.js.map +1 -0
  197. package/dist/unpkg/dev-deprecated/model-fragments-Dpn9285r.js +334 -0
  198. package/dist/unpkg/dev-deprecated/model-fragments-Dpn9285r.js.map +1 -0
  199. package/dist/unpkg/dev-deprecated/model-fragments.js +2 -94
  200. package/dist/unpkg/dev-deprecated/model.js +3 -685
  201. package/dist/unpkg/dev-deprecated/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
  202. package/dist/unpkg/dev-deprecated/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
  203. package/dist/unpkg/dev-deprecated/schema-provider-Cqttza94.js +1835 -0
  204. package/dist/unpkg/dev-deprecated/schema-provider-Cqttza94.js.map +1 -0
  205. package/dist/unpkg/dev-deprecated/serializer/json-api.js +514 -634
  206. package/dist/unpkg/dev-deprecated/serializer/json-api.js.map +1 -0
  207. package/dist/unpkg/dev-deprecated/serializer/json.js +3 -4
  208. package/dist/unpkg/dev-deprecated/serializer/rest.js +954 -1196
  209. package/dist/unpkg/dev-deprecated/serializer/rest.js.map +1 -0
  210. package/dist/unpkg/dev-deprecated/serializer/transform.js +283 -308
  211. package/dist/unpkg/dev-deprecated/serializer/transform.js.map +1 -0
  212. package/dist/unpkg/dev-deprecated/serializer.js +205 -205
  213. package/dist/unpkg/dev-deprecated/serializer.js.map +1 -0
  214. package/dist/unpkg/dev-deprecated/store-BX7GvXC_.js +472 -0
  215. package/dist/unpkg/dev-deprecated/store-BX7GvXC_.js.map +1 -0
  216. package/dist/unpkg/dev-deprecated/store.js +1 -649
  217. package/dist/unpkg/dev-deprecated/util-9mgEBJ3W.js +18 -0
  218. package/dist/unpkg/dev-deprecated/util-9mgEBJ3W.js.map +1 -0
  219. package/dist/unpkg/dev-deprecated/utils-Cl86-e7F.js +17 -0
  220. package/dist/unpkg/dev-deprecated/utils-Cl86-e7F.js.map +1 -0
  221. package/dist/unpkg/prod/-private-B4bxoTuK.js +160 -0
  222. package/dist/unpkg/prod/-private-B4bxoTuK.js.map +1 -0
  223. package/dist/unpkg/prod/-private-SfXkkHKd.js +745 -0
  224. package/dist/unpkg/prod/-private-SfXkkHKd.js.map +1 -0
  225. package/dist/unpkg/prod/adapter/-private.js +3 -1
  226. package/dist/unpkg/prod/adapter/error.js +418 -447
  227. package/dist/unpkg/prod/adapter/error.js.map +1 -0
  228. package/dist/unpkg/prod/adapter/json-api.js +236 -252
  229. package/dist/unpkg/prod/adapter/json-api.js.map +1 -0
  230. package/dist/unpkg/prod/adapter/rest.js +911 -1097
  231. package/dist/unpkg/prod/adapter/rest.js.map +1 -0
  232. package/dist/unpkg/prod/adapter-Wnk7jizX.js +1111 -0
  233. package/dist/unpkg/prod/adapter-Wnk7jizX.js.map +1 -0
  234. package/dist/unpkg/prod/adapter.js +1 -1214
  235. package/dist/unpkg/prod/compat/-private.js +3 -1
  236. package/dist/unpkg/prod/compat/builders.js +165 -182
  237. package/dist/unpkg/prod/compat/builders.js.map +1 -0
  238. package/dist/unpkg/prod/compat/extensions.js +252 -283
  239. package/dist/unpkg/prod/compat/extensions.js.map +1 -0
  240. package/dist/unpkg/prod/compat/utils.js +183 -200
  241. package/dist/unpkg/prod/compat/utils.js.map +1 -0
  242. package/dist/unpkg/prod/compat-CJ87MzDn.js +547 -0
  243. package/dist/unpkg/prod/compat-CJ87MzDn.js.map +1 -0
  244. package/dist/unpkg/prod/compat.js +1 -742
  245. package/dist/unpkg/prod/errors-Co7YWHoA.js +1977 -0
  246. package/dist/unpkg/prod/errors-Co7YWHoA.js.map +1 -0
  247. package/dist/unpkg/prod/index.js +245 -308
  248. package/dist/unpkg/prod/index.js.map +1 -0
  249. package/dist/unpkg/prod/json-BD1kRTfB.js +1080 -0
  250. package/dist/unpkg/prod/json-BD1kRTfB.js.map +1 -0
  251. package/dist/unpkg/prod/model/-private.js +3 -1
  252. package/dist/unpkg/prod/model/migration-support.js +477 -542
  253. package/dist/unpkg/prod/model/migration-support.js.map +1 -0
  254. package/dist/unpkg/prod/model-BzoOmtka.js +603 -0
  255. package/dist/unpkg/prod/model-BzoOmtka.js.map +1 -0
  256. package/dist/unpkg/prod/model-fragments-Dpn9285r.js +334 -0
  257. package/dist/unpkg/prod/model-fragments-Dpn9285r.js.map +1 -0
  258. package/dist/unpkg/prod/model-fragments.js +2 -94
  259. package/dist/unpkg/prod/model.js +3 -596
  260. package/dist/unpkg/prod/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
  261. package/dist/unpkg/prod/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
  262. package/dist/unpkg/prod/schema-provider-CKZcqWyP.js +1622 -0
  263. package/dist/unpkg/prod/schema-provider-CKZcqWyP.js.map +1 -0
  264. package/dist/unpkg/prod/serializer/json-api.js +497 -592
  265. package/dist/unpkg/prod/serializer/json-api.js.map +1 -0
  266. package/dist/unpkg/prod/serializer/json.js +3 -4
  267. package/dist/unpkg/prod/serializer/rest.js +938 -1166
  268. package/dist/unpkg/prod/serializer/rest.js.map +1 -0
  269. package/dist/unpkg/prod/serializer/transform.js +283 -308
  270. package/dist/unpkg/prod/serializer/transform.js.map +1 -0
  271. package/dist/unpkg/prod/serializer.js +205 -205
  272. package/dist/unpkg/prod/serializer.js.map +1 -0
  273. package/dist/unpkg/prod/store-RGGc1ilN.js +392 -0
  274. package/dist/unpkg/prod/store-RGGc1ilN.js.map +1 -0
  275. package/dist/unpkg/prod/store.js +1 -517
  276. package/dist/unpkg/prod/util-dSKEgQDp.js +12 -0
  277. package/dist/unpkg/prod/util-dSKEgQDp.js.map +1 -0
  278. package/dist/unpkg/prod/utils-DYC9utVJ.js +11 -0
  279. package/dist/unpkg/prod/utils-DYC9utVJ.js.map +1 -0
  280. package/dist/unpkg/prod-deprecated/-private-B4bxoTuK.js +160 -0
  281. package/dist/unpkg/prod-deprecated/-private-B4bxoTuK.js.map +1 -0
  282. package/dist/unpkg/prod-deprecated/-private-SfXkkHKd.js +745 -0
  283. package/dist/unpkg/prod-deprecated/-private-SfXkkHKd.js.map +1 -0
  284. package/dist/unpkg/prod-deprecated/adapter/-private.js +3 -1
  285. package/dist/unpkg/prod-deprecated/adapter/error.js +418 -447
  286. package/dist/unpkg/prod-deprecated/adapter/error.js.map +1 -0
  287. package/dist/unpkg/prod-deprecated/adapter/json-api.js +236 -252
  288. package/dist/unpkg/prod-deprecated/adapter/json-api.js.map +1 -0
  289. package/dist/unpkg/prod-deprecated/adapter/rest.js +911 -1097
  290. package/dist/unpkg/prod-deprecated/adapter/rest.js.map +1 -0
  291. package/{declarations/adapter.d.ts → dist/unpkg/prod-deprecated/adapter-Wnk7jizX.js} +445 -110
  292. package/dist/unpkg/prod-deprecated/adapter-Wnk7jizX.js.map +1 -0
  293. package/dist/unpkg/prod-deprecated/adapter.js +1 -1214
  294. package/dist/unpkg/prod-deprecated/compat/-private.js +3 -1
  295. package/dist/unpkg/prod-deprecated/compat/builders.js +165 -182
  296. package/dist/unpkg/prod-deprecated/compat/builders.js.map +1 -0
  297. package/dist/unpkg/prod-deprecated/compat/extensions.js +252 -283
  298. package/dist/unpkg/prod-deprecated/compat/extensions.js.map +1 -0
  299. package/dist/unpkg/prod-deprecated/compat/utils.js +183 -200
  300. package/dist/unpkg/prod-deprecated/compat/utils.js.map +1 -0
  301. package/dist/unpkg/prod-deprecated/compat-CJ87MzDn.js +547 -0
  302. package/dist/unpkg/prod-deprecated/compat-CJ87MzDn.js.map +1 -0
  303. package/dist/unpkg/prod-deprecated/compat.js +1 -742
  304. package/dist/unpkg/prod-deprecated/errors-C-opde61.js +1978 -0
  305. package/dist/unpkg/prod-deprecated/errors-C-opde61.js.map +1 -0
  306. package/dist/unpkg/prod-deprecated/index.js +245 -307
  307. package/dist/unpkg/prod-deprecated/index.js.map +1 -0
  308. package/dist/unpkg/prod-deprecated/json-BD1kRTfB.js +1080 -0
  309. package/dist/unpkg/prod-deprecated/json-BD1kRTfB.js.map +1 -0
  310. package/dist/unpkg/prod-deprecated/model/-private.js +3 -1
  311. package/dist/unpkg/prod-deprecated/model/migration-support.js +488 -559
  312. package/dist/unpkg/prod-deprecated/model/migration-support.js.map +1 -0
  313. package/dist/unpkg/prod-deprecated/model-C0bTXzGn.js +604 -0
  314. package/dist/unpkg/prod-deprecated/model-C0bTXzGn.js.map +1 -0
  315. package/dist/unpkg/prod-deprecated/model-fragments-Dpn9285r.js +334 -0
  316. package/dist/unpkg/prod-deprecated/model-fragments-Dpn9285r.js.map +1 -0
  317. package/dist/unpkg/prod-deprecated/model-fragments.js +2 -94
  318. package/dist/unpkg/prod-deprecated/model.js +3 -599
  319. package/dist/unpkg/prod-deprecated/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
  320. package/dist/unpkg/prod-deprecated/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
  321. package/dist/unpkg/prod-deprecated/schema-provider-lH3qP5tw.js +1635 -0
  322. package/dist/unpkg/prod-deprecated/schema-provider-lH3qP5tw.js.map +1 -0
  323. package/dist/unpkg/prod-deprecated/serializer/json-api.js +497 -592
  324. package/dist/unpkg/prod-deprecated/serializer/json-api.js.map +1 -0
  325. package/dist/unpkg/prod-deprecated/serializer/json.js +3 -4
  326. package/dist/unpkg/prod-deprecated/serializer/rest.js +938 -1166
  327. package/dist/unpkg/prod-deprecated/serializer/rest.js.map +1 -0
  328. package/dist/unpkg/prod-deprecated/serializer/transform.js +283 -308
  329. package/dist/unpkg/prod-deprecated/serializer/transform.js.map +1 -0
  330. package/dist/unpkg/prod-deprecated/serializer.js +205 -205
  331. package/dist/unpkg/prod-deprecated/serializer.js.map +1 -0
  332. package/dist/unpkg/prod-deprecated/store-0L2CkYzh.js +392 -0
  333. package/dist/unpkg/prod-deprecated/store-0L2CkYzh.js.map +1 -0
  334. package/dist/unpkg/prod-deprecated/store.js +1 -517
  335. package/dist/unpkg/prod-deprecated/util-CQQdHX3n.js +14 -0
  336. package/dist/unpkg/prod-deprecated/util-CQQdHX3n.js.map +1 -0
  337. package/dist/unpkg/prod-deprecated/utils-BMI_JwFP.js +13 -0
  338. package/dist/unpkg/prod-deprecated/utils-BMI_JwFP.js.map +1 -0
  339. package/dist/util-Bnx8nm-D.js +29 -0
  340. package/dist/util-Bnx8nm-D.js.map +1 -0
  341. package/dist/utils-ZAytYep8.js +28 -0
  342. package/dist/utils-ZAytYep8.js.map +1 -0
  343. package/package.json +13 -13
  344. package/declarations/adapter/-private/build-url-mixin.d.ts +0 -189
  345. package/declarations/adapter/-private/fastboot-interface.d.ts +0 -8
  346. package/declarations/adapter/-private/utils/continue-on-reject.d.ts +0 -1
  347. package/declarations/adapter/-private/utils/determine-body-promise.d.ts +0 -4
  348. package/declarations/adapter/-private/utils/fetch.d.ts +0 -8
  349. package/declarations/adapter/-private/utils/parse-response-headers.d.ts +0 -1
  350. package/declarations/adapter/-private/utils/serialize-into-hash.d.ts +0 -6
  351. package/declarations/adapter/-private/utils/serialize-query-params.d.ts +0 -5
  352. package/declarations/adapter/-private.d.ts +0 -5
  353. package/declarations/adapter/error.d.ts +0 -431
  354. package/declarations/compat/-private.d.ts +0 -13
  355. package/declarations/compat/builders/find-all.d.ts +0 -34
  356. package/declarations/compat/builders/find-record.d.ts +0 -56
  357. package/declarations/compat/builders/query.d.ts +0 -66
  358. package/declarations/compat/builders/save-record.d.ts +0 -34
  359. package/declarations/compat/builders/utils.d.ts +0 -3
  360. package/declarations/compat/builders.d.ts +0 -14
  361. package/declarations/compat/extensions.d.ts +0 -99
  362. package/declarations/compat/legacy-network-handler/fetch-manager.d.ts +0 -55
  363. package/declarations/compat/legacy-network-handler/identifier-has-id.d.ts +0 -2
  364. package/declarations/compat/legacy-network-handler/legacy-data-fetch.d.ts +0 -11
  365. package/declarations/compat/legacy-network-handler/legacy-data-utils.d.ts +0 -5
  366. package/declarations/compat/legacy-network-handler/legacy-network-handler.d.ts +0 -9
  367. package/declarations/compat/legacy-network-handler/minimum-adapter-interface.d.ts +0 -528
  368. package/declarations/compat/legacy-network-handler/minimum-serializer-interface.d.ts +0 -220
  369. package/declarations/compat/legacy-network-handler/serializer-response.d.ts +0 -6
  370. package/declarations/compat/legacy-network-handler/snapshot-record-array.d.ts +0 -110
  371. package/declarations/compat/legacy-network-handler/snapshot.d.ts +0 -255
  372. package/declarations/compat/utils.d.ts +0 -148
  373. package/declarations/compat.d.ts +0 -189
  374. package/declarations/index.d.ts +0 -244
  375. package/declarations/model/-private/attr.d.ts +0 -191
  376. package/declarations/model/-private/belongs-to.d.ts +0 -195
  377. package/declarations/model/-private/debug/assert-polymorphic-type.d.ts +0 -5
  378. package/declarations/model/-private/errors.d.ts +0 -289
  379. package/declarations/model/-private/has-many.d.ts +0 -162
  380. package/declarations/model/-private/hooks.d.ts +0 -36
  381. package/declarations/model/-private/legacy-relationships-support.d.ts +0 -47
  382. package/declarations/model/-private/model-for-mixin.d.ts +0 -3
  383. package/declarations/model/-private/model-methods.d.ts +0 -39
  384. package/declarations/model/-private/model.d.ts +0 -1279
  385. package/declarations/model/-private/notify-changes.d.ts +0 -4
  386. package/declarations/model/-private/promise-belongs-to.d.ts +0 -40
  387. package/declarations/model/-private/promise-many-array.d.ts +0 -130
  388. package/declarations/model/-private/record-state.d.ts +0 -58
  389. package/declarations/model/-private/references/belongs-to.d.ts +0 -488
  390. package/declarations/model/-private/references/has-many.d.ts +0 -498
  391. package/declarations/model/-private/schema-provider.d.ts +0 -66
  392. package/declarations/model/-private/type-utils.d.ts +0 -57
  393. package/declarations/model/-private/util.d.ts +0 -5
  394. package/declarations/model/-private.d.ts +0 -8
  395. package/declarations/model/migration-support.d.ts +0 -306
  396. package/declarations/model-fragments/extensions/fragment-array.d.ts +0 -54
  397. package/declarations/model-fragments/extensions/fragment.d.ts +0 -50
  398. package/declarations/model-fragments/hooks/model-for.d.ts +0 -27
  399. package/declarations/model-fragments/index.d.ts +0 -13
  400. package/declarations/model-fragments/instance-initializers/fragment-extensions.d.ts +0 -15
  401. package/declarations/model-fragments/utilities/with-array-defaults.d.ts +0 -56
  402. package/declarations/model-fragments/utilities/with-fragment-array-defaults.d.ts +0 -38
  403. package/declarations/model-fragments/utilities/with-fragment-defaults.d.ts +0 -34
  404. package/declarations/model-fragments/utilities/with-legacy.d.ts +0 -11
  405. package/declarations/model-fragments.d.ts +0 -9
  406. package/declarations/model.d.ts +0 -49
  407. package/declarations/serializer/-private/transforms/boolean.d.ts +0 -60
  408. package/declarations/serializer/-private/transforms/date.d.ts +0 -42
  409. package/declarations/serializer/-private/transforms/number.d.ts +0 -42
  410. package/declarations/serializer/-private/transforms/string.d.ts +0 -42
  411. package/declarations/serializer/-private/transforms/transform.d.ts +0 -118
  412. package/declarations/serializer/-private/utils.d.ts +0 -27
  413. package/declarations/serializer/rest.d.ts +0 -51
  414. package/declarations/serializer/transform.d.ts +0 -5
  415. package/declarations/serializer.d.ts +0 -252
  416. package/declarations/store/-private.d.ts +0 -223
  417. package/declarations/store.d.ts +0 -10
  418. package/dist/-private-BG3bMiKp.js +0 -1211
  419. package/dist/errors-DZKA206g.js +0 -2589
  420. package/dist/hooks-BvOqJBei.js +0 -105
  421. package/dist/json-DU8m1pGf.js +0 -1336
  422. package/dist/model-for-CXkJw59V.js +0 -297
  423. package/dist/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
  424. package/dist/schema-provider-DtPOp0d7.js +0 -2382
  425. package/dist/serialize-into-hash-DPZYoF-i.js +0 -261
  426. package/dist/unpkg/dev/-private-DtjBbEgy.js +0 -1206
  427. package/dist/unpkg/dev/errors-DngRU-If.js +0 -2585
  428. package/dist/unpkg/dev/hooks-UuiLxWxS.js +0 -104
  429. package/dist/unpkg/dev/json-K2Y9z6MN.js +0 -1333
  430. package/dist/unpkg/dev/model-for-CXkJw59V.js +0 -297
  431. package/dist/unpkg/dev/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
  432. package/dist/unpkg/dev/schema-provider-0D7f-QOn.js +0 -2272
  433. package/dist/unpkg/dev/serialize-into-hash-B2xDbuo5.js +0 -259
  434. package/dist/unpkg/dev/util-DvanW33H.js +0 -20
  435. package/dist/unpkg/dev/utils-BhvS1iTS.js +0 -8
  436. package/dist/unpkg/dev-deprecated/-private-DtjBbEgy.js +0 -1206
  437. package/dist/unpkg/dev-deprecated/errors-Bzidntpi.js +0 -2588
  438. package/dist/unpkg/dev-deprecated/hooks-DVXhMW14.js +0 -104
  439. package/dist/unpkg/dev-deprecated/json-K2Y9z6MN.js +0 -1333
  440. package/dist/unpkg/dev-deprecated/model-for-CXkJw59V.js +0 -297
  441. package/dist/unpkg/dev-deprecated/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
  442. package/dist/unpkg/dev-deprecated/schema-provider-ZwO5_fZw.js +0 -2292
  443. package/dist/unpkg/dev-deprecated/serialize-into-hash-B2xDbuo5.js +0 -259
  444. package/dist/unpkg/dev-deprecated/util-CWr5WQOT.js +0 -24
  445. package/dist/unpkg/dev-deprecated/utils-C9PJehtL.js +0 -12
  446. package/dist/unpkg/prod/-private-BdyZaGEh.js +0 -971
  447. package/dist/unpkg/prod/errors-B-PWeYlW.js +0 -2337
  448. package/dist/unpkg/prod/hooks-Bx-zBziU.js +0 -72
  449. package/dist/unpkg/prod/json-Qewu-UN9.js +0 -1300
  450. package/dist/unpkg/prod/model-for-CXkJw59V.js +0 -297
  451. package/dist/unpkg/prod/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
  452. package/dist/unpkg/prod/schema-provider-BgRqk8i9.js +0 -1951
  453. package/dist/unpkg/prod/serialize-into-hash-DGlzQteF.js +0 -215
  454. package/dist/unpkg/prod/util-DvanW33H.js +0 -20
  455. package/dist/unpkg/prod/utils-BhvS1iTS.js +0 -8
  456. package/dist/unpkg/prod-deprecated/-private-BdyZaGEh.js +0 -971
  457. package/dist/unpkg/prod-deprecated/errors-Dl2J9d1D.js +0 -2340
  458. package/dist/unpkg/prod-deprecated/hooks-Cm60wWTf.js +0 -72
  459. package/dist/unpkg/prod-deprecated/json-Qewu-UN9.js +0 -1300
  460. package/dist/unpkg/prod-deprecated/model-for-CXkJw59V.js +0 -297
  461. package/dist/unpkg/prod-deprecated/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
  462. package/dist/unpkg/prod-deprecated/schema-provider-Dh6tRqVI.js +0 -1980
  463. package/dist/unpkg/prod-deprecated/serialize-into-hash-DGlzQteF.js +0 -215
  464. package/dist/unpkg/prod-deprecated/util-B6cn-i93.js +0 -23
  465. package/dist/unpkg/prod-deprecated/utils-BUWwQwCh.js +0 -11
  466. package/dist/util-Dul6TZts.js +0 -35
  467. package/dist/utils-Cqw9eRj5.js +0 -23
@@ -0,0 +1,784 @@
1
+ import { _ as AdapterPayload, g as SerializerOptions, m as Snapshot, p as SnapshotRecordArray, v as MinimumAdapterInterface } from "./compat-BbNNmTM-.js";
2
+ import { Store } from "@warp-drive/core";
3
+ import EmberObject from "@ember/object";
4
+ import Mixin from "@ember/object/mixin";
5
+ import { ModelSchema } from "@warp-drive/core/types";
6
+ //#region src/adapter/-private/build-url-mixin.d.ts
7
+ /**
8
+ * The methods provided by the `BuildURLMixin` mixin (see the exported
9
+ * `BuildURLMixin` {@link Mixin} below).
10
+ *
11
+ * See also {@link MixtBuildURLMixin}, the interface used to type `this`
12
+ * within these methods.
13
+ */
14
+ interface BuildURLMixin {
15
+ /**
16
+ * Builds a URL for a given type and optional ID.
17
+ *
18
+ * By default, it pluralizes the type's name (for example, 'post'
19
+ * becomes 'posts' and 'person' becomes 'people'). To override the
20
+ * pluralization see {@link BuildURLMixin.pathForType | pathForType}.
21
+ *
22
+ * If an ID is specified, it adds the ID to the path generated
23
+ * for the type, separated by a `/`.
24
+ *
25
+ * This overload builds the URL for a `store.findRecord(type, id)` call.
26
+ *
27
+ * @public
28
+ */
29
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: string, snapshot: Snapshot, requestType: "findRecord"): string;
30
+ /**
31
+ * Builds the URL for a `store.findAll(type)` call.
32
+ *
33
+ * @public
34
+ */
35
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: null, snapshot: SnapshotRecordArray, requestType: "findAll"): string;
36
+ /**
37
+ * Builds the URL for a `store.query(type, query)` call.
38
+ *
39
+ * @public
40
+ */
41
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: null, snapshot: null, requestType: "query", query: Record<string, unknown>): string;
42
+ /**
43
+ * Builds the URL for a `store.queryRecord(type, query)` call.
44
+ *
45
+ * @public
46
+ */
47
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: null, snapshot: null, requestType: "queryRecord", query: Record<string, unknown>): string;
48
+ /**
49
+ * Builds the URL for coalescing multiple `store.findRecord(type, id)`
50
+ * records into 1 request when the adapter's `coalesceFindRequests`
51
+ * property is `true`. The `id` and `snapshot` parameters will be
52
+ * arrays of ids and snapshots.
53
+ *
54
+ * @public
55
+ */
56
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: string[], snapshot: Snapshot[], requestType: "findMany"): string;
57
+ /**
58
+ * Builds the URL for fetching an async `hasMany` relationship when a
59
+ * URL is not provided by the server.
60
+ *
61
+ * @public
62
+ */
63
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: string, snapshot: Snapshot, requestType: "findHasMany"): string;
64
+ /**
65
+ * Builds the URL for fetching an async `belongsTo` relationship when a
66
+ * URL is not provided by the server.
67
+ *
68
+ * @public
69
+ */
70
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: string, snapshot: Snapshot, requestType: "findBelongsTo"): string;
71
+ /**
72
+ * Builds the URL for a `record.save()` call when the record was
73
+ * created locally using `store.createRecord()`.
74
+ *
75
+ * @public
76
+ */
77
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: string | null, snapshot: Snapshot, requestType: "createRecord"): string;
78
+ /**
79
+ * Builds the URL for a `record.save()` call when the record has been
80
+ * updated locally.
81
+ *
82
+ * @public
83
+ */
84
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: string, snapshot: Snapshot, requestType: "updateRecord"): string;
85
+ /**
86
+ * Builds the URL for a `record.save()` call when the record has been
87
+ * deleted locally.
88
+ *
89
+ * @public
90
+ */
91
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: string, snapshot: Snapshot, requestType: "deleteRecord"): string;
92
+ /**
93
+ * Builds a URL for a given type and ID without a specific request type.
94
+ *
95
+ * @public
96
+ */
97
+ buildURL(this: MixtBuildURLMixin, modelName: string, id: string, snapshot: Snapshot): string;
98
+ /**
99
+ * @private
100
+ */
101
+ _buildURL(this: MixtBuildURLMixin, modelName: string | null | undefined, id?: string | null): string;
102
+ /**
103
+ * Builds a URL for a `store.findRecord(type, id)` call.
104
+ *
105
+ * @public
106
+ */
107
+ urlForFindRecord(this: MixtBuildURLMixin, id: string, modelName: string, snapshot: Snapshot): string;
108
+ /**
109
+ * Builds a URL for a `store.findAll(type)` call.
110
+ *
111
+ * @public
112
+ */
113
+ urlForFindAll(this: MixtBuildURLMixin, modelName: string, snapshots: SnapshotRecordArray): string;
114
+ /**
115
+ * Builds a URL for a `store.queryRecord(type, query)` call.
116
+ *
117
+ * @public
118
+ */
119
+ urlForQueryRecord(this: MixtBuildURLMixin, query: Record<string, unknown>, modelName: string): string;
120
+ /**
121
+ * Builds a URL for a `store.query(type, query)` call.
122
+ *
123
+ * @public
124
+ */
125
+ urlForQuery(this: MixtBuildURLMixin, query: Record<string, unknown>, modelName: string): string;
126
+ /**
127
+ * Builds a URL for coalescing multiple `store.findRecord(type, id)`
128
+ * records into 1 request when the adapter's `coalesceFindRequests`
129
+ * property is `true`.
130
+ *
131
+ * @public
132
+ */
133
+ urlForFindMany(this: MixtBuildURLMixin, ids: string[], modelName: string, snapshots: Snapshot[]): string;
134
+ /**
135
+ * Builds a URL for fetching an async `hasMany` relationship when a
136
+ * URL is not provided by the server.
137
+ *
138
+ * @public
139
+ */
140
+ urlForFindHasMany(this: MixtBuildURLMixin, id: string, modelName: string, snapshot: Snapshot): string;
141
+ /**
142
+ * Builds a URL for fetching an async `belongsTo` relationship when a
143
+ * URL is not provided by the server.
144
+ *
145
+ * @public
146
+ */
147
+ urlForFindBelongsTo(this: MixtBuildURLMixin, id: string, modelName: string, snapshot: Snapshot): string;
148
+ /**
149
+ * Builds a URL for a `record.save()` call when the record was created
150
+ * locally using `store.createRecord()`.
151
+ *
152
+ * @public
153
+ */
154
+ urlForCreateRecord(this: MixtBuildURLMixin, modelName: string, snapshot: Snapshot): string;
155
+ /**
156
+ * Builds a URL for a `record.save()` call when the record has been
157
+ * updated locally.
158
+ *
159
+ * @public
160
+ */
161
+ urlForUpdateRecord(this: MixtBuildURLMixin, id: string, modelName: string, snapshot: Snapshot): string;
162
+ /**
163
+ * Builds a URL for a `record.save()` call when the record has been
164
+ * deleted locally.
165
+ *
166
+ * @public
167
+ */
168
+ urlForDeleteRecord(this: MixtBuildURLMixin, id: string, modelName: string, snapshot: Snapshot): string;
169
+ /**
170
+ * @private
171
+ */
172
+ urlPrefix(this: MixtBuildURLMixin, path?: string | null, parentURL?: string): string;
173
+ /**
174
+ * Determines the pathname for a given type.
175
+ *
176
+ * By default, it pluralizes the type's name (for example, 'post'
177
+ * becomes 'posts' and 'person' becomes 'people').
178
+ *
179
+ * @public
180
+ */
181
+ pathForType(this: MixtBuildURLMixin, modelName: string): string;
182
+ }
183
+ interface MixtBuildURLMixin extends BuildURLMixin {
184
+ host: string | null;
185
+ namespace: string | null;
186
+ }
187
+ /**
188
+ * The `Mixin` implementation of {@link BuildURLMixin}, ready to be applied
189
+ * to an `EmberObject` subclass such as an `Adapter`.
190
+ *
191
+ * @public
192
+ */
193
+ declare const BuildURLMixin: Mixin;
194
+ //#endregion
195
+ //#region src/adapter.d.ts
196
+ /**
197
+ An adapter is an object that receives requests from a store and
198
+ translates them into the appropriate action to take against your
199
+ persistence layer. The persistence layer is usually an HTTP API but
200
+ may be anything, such as the browser's local storage. Typically the
201
+ adapter is not invoked directly instead its functionality is accessed
202
+ through the `store`.
203
+
204
+ > ⚠️ CAUTION you likely want the docs for {@link MinimumAdapterInterface}
205
+ > as extending this abstract class is unnecessary.
206
+
207
+ ### Creating an Adapter
208
+
209
+ Create a new subclass of `Adapter` in the `app/adapters` folder:
210
+
211
+ ```js [app/adapters/application.js]
212
+ import { Adapter } from '@warp-drive/legacy/adapter';
213
+
214
+ export default class extends Adapter {
215
+ // ...your code here
216
+ }
217
+ ```
218
+
219
+ Model-specific adapters can be created by putting your adapter
220
+ class in an `app/adapters/` + `model-name` + `.js` file of the application.
221
+
222
+ ```js [app/adapters/post.js]
223
+ import { Adapter } from '@warp-drive/legacy/adapter';
224
+
225
+ export default class extends Adapter {
226
+ // ...Post-specific adapter code goes here
227
+ }
228
+ ```
229
+
230
+ `Adapter` is an abstract base class that you should override in your
231
+ application to customize it for your backend. The minimum set of methods
232
+ that you should implement is:
233
+
234
+ * `findRecord()`
235
+ * `createRecord()`
236
+ * `updateRecord()`
237
+ * `deleteRecord()`
238
+ * `findAll()`
239
+ * `query()`
240
+
241
+ To improve the network performance of your application, you can optimize
242
+ your adapter by overriding these lower-level methods:
243
+
244
+ * `findMany()`
245
+
246
+
247
+ For an example of the implementation, see `RESTAdapter`, the
248
+ included REST adapter.
249
+
250
+ @public
251
+ */
252
+ declare class Adapter extends EmberObject implements MinimumAdapterInterface {
253
+ /**
254
+ * The Store service instance that owns this Adapter.
255
+ */
256
+ store: Store;
257
+ /**
258
+ * @private
259
+ */
260
+ _coalesceFindRequests: boolean;
261
+ /**
262
+ The `findRecord()` method is invoked when the store is asked for a record that
263
+ has not previously been loaded. In response to `findRecord()` being called, you
264
+ should query your persistence layer for a record with the given ID. The `findRecord`
265
+ method should return a promise that will resolve to a JavaScript object that will be
266
+ normalized by the serializer.
267
+
268
+ Here is an example of the `findRecord` implementation:
269
+
270
+ ```js [app/adapters/application.js]
271
+ import { Adapter } from '@warp-drive/legacy/adapter';
272
+ import RSVP from 'RSVP';
273
+ import $ from 'jquery';
274
+
275
+ export default class ApplicationAdapter extends Adapter {
276
+ findRecord(store, type, id, snapshot) {
277
+ return new RSVP.Promise(function(resolve, reject) {
278
+ $.getJSON(`/${type.modelName}/${id}`).then(function(data) {
279
+ resolve(data);
280
+ }, function(jqXHR) {
281
+ reject(jqXHR);
282
+ });
283
+ });
284
+ }
285
+ }
286
+ ```
287
+
288
+ @public
289
+ */
290
+ findRecord(store: Store, type: ModelSchema, id: string, snapshot: Snapshot): Promise<AdapterPayload>;
291
+ /**
292
+ The `findAll()` method is used to retrieve all records for a given type.
293
+
294
+ Example
295
+
296
+ ```js [app/adapters/application.js]
297
+ import { Adapter } from '@warp-drive/legacy/adapter';
298
+ import RSVP from 'RSVP';
299
+ import $ from 'jquery';
300
+
301
+ export default class ApplicationAdapter extends Adapter {
302
+ findAll(store, type) {
303
+ return new RSVP.Promise(function(resolve, reject) {
304
+ $.getJSON(`/${type.modelName}`).then(function(data) {
305
+ resolve(data);
306
+ }, function(jqXHR) {
307
+ reject(jqXHR);
308
+ });
309
+ });
310
+ }
311
+ }
312
+ ```
313
+
314
+ @param neverSet a value is never provided to this argument
315
+ @public
316
+ */
317
+ findAll(store: Store, type: ModelSchema, neverSet: null, snapshotRecordArray: SnapshotRecordArray): Promise<AdapterPayload>;
318
+ /**
319
+ This method is called when you call `query` on the store.
320
+
321
+ Example
322
+
323
+ ```js [app/adapters/application.js]
324
+ import { Adapter } from '@warp-drive/legacy/adapter';
325
+ import RSVP from 'RSVP';
326
+ import $ from 'jquery';
327
+
328
+ export default class ApplicationAdapter extends Adapter {
329
+ query(store, type, query) {
330
+ return new RSVP.Promise(function(resolve, reject) {
331
+ $.getJSON(`/${type.modelName}`, query).then(function(data) {
332
+ resolve(data);
333
+ }, function(jqXHR) {
334
+ reject(jqXHR);
335
+ });
336
+ });
337
+ }
338
+ }
339
+ ```
340
+
341
+ @public
342
+ */
343
+ query(store: Store, type: ModelSchema, query: Record<string, unknown>): Promise<AdapterPayload>;
344
+ /**
345
+ The `queryRecord()` method is invoked when the store is asked for a single
346
+ record through a query object.
347
+
348
+ In response to `queryRecord()` being called, you should always fetch fresh
349
+ data. Once found, you can asynchronously call the store's `push()` method
350
+ to push the record into the store.
351
+
352
+ Here is an example `queryRecord` implementation:
353
+
354
+ Example
355
+
356
+ ```js [app/adapters/application.js]
357
+ import { Adapter, BuildURLMixin } from '@warp-drive/legacy/adapter';
358
+
359
+ export default class ApplicationAdapter extends Adapter.extend(BuildURLMixin) {
360
+ queryRecord(store, type, query) {
361
+ return fetch(`/${type.modelName}`, { body: JSON.stringify(query) })
362
+ .then((response) => response.json());
363
+ }
364
+ }
365
+ ```
366
+
367
+ @public
368
+ */
369
+ queryRecord(store: Store, type: ModelSchema, query: Record<string, unknown>, adapterOptions: object): Promise<AdapterPayload>;
370
+ /**
371
+ If the globally unique IDs for your records should be generated on the client,
372
+ implement the `generateIdForRecord()` method. This method will be invoked
373
+ each time you create a new record, and the value returned from it will be
374
+ assigned to the record's `primaryKey`.
375
+
376
+ Most traditional REST-like HTTP APIs will not use this method. Instead, the ID
377
+ of the record will be set by the server, and your adapter will update the store
378
+ with the new ID when it calls `didCreateRecord()`. Only implement this method if
379
+ you intend to generate record IDs on the client-side.
380
+
381
+ The `generateIdForRecord()` method will be invoked with the requesting store as
382
+ the first parameter and the newly created record as the second parameter:
383
+
384
+ ```javascript
385
+ import { Adapter } from '@warp-drive/legacy/adapter';
386
+ import { v4 } from 'uuid';
387
+
388
+ export default class ApplicationAdapter extends Adapter {
389
+ generateIdForRecord(store, type, inputProperties) {
390
+ return v4();
391
+ }
392
+ }
393
+ ```
394
+
395
+ @param {Store} store
396
+ @param {Model} type the Model class of the record
397
+ @param {Object} inputProperties a hash of properties to set on the
398
+ newly created record.
399
+ @return {(String|Number)} id
400
+ @public
401
+ */
402
+ /**
403
+ Proxies to the serializer's `serialize` method.
404
+
405
+ Example
406
+
407
+ ```js [app/adapters/application.js]
408
+ import { Adapter } from '@warp-drive/legacy/adapter';
409
+
410
+ export default class ApplicationAdapter extends Adapter {
411
+ createRecord(store, type, snapshot) {
412
+ let data = this.serialize(snapshot, { includeId: true });
413
+ let url = `/${type.modelName}`;
414
+
415
+ // ...
416
+ }
417
+ }
418
+ ```
419
+
420
+ @public
421
+ */
422
+ serialize(snapshot: Snapshot, options: SerializerOptions): Record<string, unknown>;
423
+ /**
424
+ Implement this method in a subclass to handle the creation of
425
+ new records.
426
+
427
+ Serializes the record and sends it to the server.
428
+
429
+ Example
430
+
431
+ ```js [app/adapters/application.js]
432
+ import { Adapter } from '@warp-drive/legacy/adapter';
433
+ import RSVP from 'RSVP';
434
+ import $ from 'jquery';
435
+
436
+ export default class ApplicationAdapter extends Adapter {
437
+ createRecord(store, type, snapshot) {
438
+ let data = this.serialize(snapshot, { includeId: true });
439
+
440
+ return new RSVP.Promise(function (resolve, reject) {
441
+ $.ajax({
442
+ type: 'POST',
443
+ url: `/${type.modelName}`,
444
+ dataType: 'json',
445
+ data: data
446
+ }).then(function (data) {
447
+ resolve(data);
448
+ }, function (jqXHR) {
449
+ jqXHR.then = null; // tame jQuery's ill mannered promises
450
+ reject(jqXHR);
451
+ });
452
+ });
453
+ }
454
+ }
455
+ ```
456
+
457
+ @public
458
+ */
459
+ createRecord(store: Store, type: ModelSchema, snapshot: Snapshot): Promise<AdapterPayload>;
460
+ /**
461
+ Implement this method in a subclass to handle the updating of
462
+ a record.
463
+
464
+ Serializes the record update and sends it to the server.
465
+
466
+ The updateRecord method is expected to return a promise that will
467
+ resolve with the serialized record. This allows the backend to
468
+ inform the WarpDrive store the current state of this record after
469
+ the update. If it is not possible to return a serialized record
470
+ the updateRecord promise can also resolve with `undefined` and the
471
+ WarpDrive store will assume all of the updates were successfully
472
+ applied on the backend.
473
+
474
+ Example
475
+
476
+ ```js [app/adapters/application.js]
477
+ import { Adapter } from '@warp-drive/legacy/adapter';
478
+ import RSVP from 'RSVP';
479
+ import $ from 'jquery';
480
+
481
+ export default class ApplicationAdapter extends Adapter {
482
+ updateRecord(store, type, snapshot) {
483
+ let data = this.serialize(snapshot, { includeId: true });
484
+ let id = snapshot.id;
485
+
486
+ return new RSVP.Promise(function(resolve, reject) {
487
+ $.ajax({
488
+ type: 'PUT',
489
+ url: `/${type.modelName}/${id}`,
490
+ dataType: 'json',
491
+ data: data
492
+ }).then(function(data) {
493
+ resolve(data);
494
+ }, function(jqXHR) {
495
+ jqXHR.then = null; // tame jQuery's ill mannered promises
496
+ reject(jqXHR);
497
+ });
498
+ });
499
+ }
500
+ }
501
+ ```
502
+
503
+ @param {Store} store
504
+ @param {Model} type the Model class of the record
505
+ @param {Snapshot} snapshot
506
+ @return {Promise} promise
507
+ @public
508
+ */
509
+ updateRecord(store: Store, type: ModelSchema, snapshot: Snapshot): Promise<AdapterPayload>;
510
+ /**
511
+ Implement this method in a subclass to handle the deletion of
512
+ a record.
513
+
514
+ Sends a delete request for the record to the server.
515
+
516
+ Example
517
+
518
+ ```js [app/adapters/application.js]
519
+ import { Adapter } from '@warp-drive/legacy/adapter';
520
+ import RSVP from 'RSVP';
521
+ import $ from 'jquery';
522
+
523
+ export default class ApplicationAdapter extends Adapter {
524
+ deleteRecord(store, type, snapshot) {
525
+ let data = this.serialize(snapshot, { includeId: true });
526
+ let id = snapshot.id;
527
+
528
+ return new RSVP.Promise(function(resolve, reject) {
529
+ $.ajax({
530
+ type: 'DELETE',
531
+ url: `/${type.modelName}/${id}`,
532
+ dataType: 'json',
533
+ data: data
534
+ }).then(function(data) {
535
+ resolve(data)
536
+ }, function(jqXHR) {
537
+ jqXHR.then = null; // tame jQuery's ill mannered promises
538
+ reject(jqXHR);
539
+ });
540
+ });
541
+ }
542
+ }
543
+ ```
544
+
545
+ @param {Store} store
546
+ @param {Model} type the Model class of the record
547
+ @param {Snapshot} snapshot
548
+ @return {Promise} promise
549
+ @public
550
+ */
551
+ deleteRecord(store: Store, type: ModelSchema, snapshot: Snapshot): Promise<AdapterPayload>;
552
+ /**
553
+ By default the store will try to coalesce all `findRecord` calls within the same runloop
554
+ into as few requests as possible by calling groupRecordsForFindMany and passing it into a findMany call.
555
+ You can opt out of this behaviour by either not implementing the findMany hook or by setting
556
+ coalesceFindRequests to false.
557
+
558
+ @property coalesceFindRequests
559
+ @public
560
+ @type {Boolean}
561
+ */
562
+ get coalesceFindRequests(): boolean;
563
+ set coalesceFindRequests(value: boolean);
564
+ /**
565
+ The store will call `findMany` instead of multiple `findRecord`
566
+ requests to find multiple records at once if coalesceFindRequests
567
+ is true.
568
+
569
+ ```js [app/adapters/application.js]
570
+ import { Adapter } from '@warp-drive/legacy/adapter';
571
+ import RSVP from 'RSVP';
572
+ import $ from 'jquery';
573
+
574
+ export default class ApplicationAdapter extends Adapter {
575
+ findMany(store, type, ids, snapshots) {
576
+ return new RSVP.Promise(function(resolve, reject) {
577
+ $.ajax({
578
+ type: 'GET',
579
+ url: `/${type.modelName}/`,
580
+ dataType: 'json',
581
+ data: { filter: { id: ids.join(',') } }
582
+ }).then(function(data) {
583
+ resolve(data);
584
+ }, function(jqXHR) {
585
+ jqXHR.then = null; // tame jQuery's ill mannered promises
586
+ reject(jqXHR);
587
+ });
588
+ });
589
+ }
590
+ }
591
+ ```
592
+
593
+ @param {Store} store
594
+ @param {Model} type the Model class of the records
595
+ @param {Array} ids
596
+ @param {Array} snapshots
597
+ @return {Promise} promise
598
+ @public
599
+ */
600
+ /**
601
+ Organize records into groups, each of which is to be passed to separate
602
+ calls to `findMany`.
603
+
604
+ For example, if your API has nested URLs that depend on the parent, you will
605
+ want to group records by their parent.
606
+
607
+ The default implementation returns the records as a single group.
608
+
609
+ @public
610
+ @param {Store} store
611
+ @param {Array} snapshots
612
+ @return {Array} an array of arrays of records, each of which is to be
613
+ loaded separately by `findMany`.
614
+ */
615
+ groupRecordsForFindMany(store: Store, snapshots: Snapshot[]): Snapshot[][];
616
+ /**
617
+ This method is used by the store to determine if the store should
618
+ reload a record from the adapter when a record is requested by
619
+ `store.findRecord`.
620
+
621
+ If this method returns `true`, the store will re-fetch a record from
622
+ the adapter. If this method returns `false`, the store will resolve
623
+ immediately using the cached record.
624
+
625
+ For example, if you are building an events ticketing system, in which users
626
+ can only reserve tickets for 20 minutes at a time, and want to ensure that
627
+ in each route you have data that is no more than 20 minutes old you could
628
+ write:
629
+
630
+ ```javascript
631
+ shouldReloadRecord(store, ticketSnapshot) {
632
+ let lastAccessedAt = ticketSnapshot.attr('lastAccessedAt');
633
+ let timeDiff = moment().diff(lastAccessedAt, 'minutes');
634
+
635
+ if (timeDiff > 20) {
636
+ return true;
637
+ } else {
638
+ return false;
639
+ }
640
+ }
641
+ ```
642
+
643
+ This method would ensure that whenever you do `store.findRecord('ticket',
644
+ id)` you will always get a ticket that is no more than 20 minutes old. In
645
+ case the cached version is more than 20 minutes old, `findRecord` will not
646
+ resolve until you fetched the latest version.
647
+
648
+ By default this hook returns `false`, as most UIs should not block user
649
+ interactions while waiting on data update.
650
+
651
+ Note that, with default settings, `shouldBackgroundReloadRecord` will always
652
+ re-fetch the records in the background even if `shouldReloadRecord` returns
653
+ `false`. You can override `shouldBackgroundReloadRecord` if this does not
654
+ suit your use case.
655
+
656
+ @since 1.13.0
657
+ @param {Store} store
658
+ @param {Snapshot} snapshot
659
+ @return {Boolean}
660
+ @public
661
+ */
662
+ shouldReloadRecord(store: Store, snapshot: Snapshot): boolean;
663
+ /**
664
+ This method is used by the store to determine if the store should
665
+ reload all records from the adapter when records are requested by
666
+ `store.findAll`.
667
+
668
+ If this method returns `true`, the store will re-fetch all records from
669
+ the adapter. If this method returns `false`, the store will resolve
670
+ immediately using the cached records.
671
+
672
+ For example, if you are building an events ticketing system, in which users
673
+ can only reserve tickets for 20 minutes at a time, and want to ensure that
674
+ in each route you have data that is no more than 20 minutes old you could
675
+ write:
676
+
677
+ ```javascript
678
+ shouldReloadAll(store, snapshotArray) {
679
+ let snapshots = snapshotArray.snapshots();
680
+
681
+ return snapshots.any((ticketSnapshot) => {
682
+ let lastAccessedAt = ticketSnapshot.attr('lastAccessedAt');
683
+ let timeDiff = moment().diff(lastAccessedAt, 'minutes');
684
+
685
+ if (timeDiff > 20) {
686
+ return true;
687
+ } else {
688
+ return false;
689
+ }
690
+ });
691
+ }
692
+ ```
693
+
694
+ This method would ensure that whenever you do `store.findAll('ticket')` you
695
+ will always get a list of tickets that are no more than 20 minutes old. In
696
+ case a cached version is more than 20 minutes old, `findAll` will not
697
+ resolve until you fetched the latest versions.
698
+
699
+ By default, this method returns `true` if the passed `snapshotRecordArray`
700
+ is empty (meaning that there are no records locally available yet),
701
+ otherwise, it returns `false`.
702
+
703
+ Note that, with default settings, `shouldBackgroundReloadAll` will always
704
+ re-fetch all the records in the background even if `shouldReloadAll` returns
705
+ `false`. You can override `shouldBackgroundReloadAll` if this does not suit
706
+ your use case.
707
+
708
+ @since 1.13.0
709
+ @param {Store} store
710
+ @param {SnapshotRecordArray} snapshotRecordArray
711
+ @return {Boolean}
712
+ @public
713
+ */
714
+ shouldReloadAll(store: Store, snapshotRecordArray: SnapshotRecordArray): boolean;
715
+ /**
716
+ This method is used by the store to determine if the store should
717
+ reload a record after the `store.findRecord` method resolves a
718
+ cached record.
719
+
720
+ This method is *only* checked by the store when the store is
721
+ returning a cached record.
722
+
723
+ If this method returns `true` the store will re-fetch a record from
724
+ the adapter.
725
+
726
+ For example, if you do not want to fetch complex data over a mobile
727
+ connection, or if the network is down, you can implement
728
+ `shouldBackgroundReloadRecord` as follows:
729
+
730
+ ```javascript
731
+ shouldBackgroundReloadRecord(store, snapshot) {
732
+ let { downlink, effectiveType } = navigator.connection;
733
+
734
+ return downlink > 0 && effectiveType === '4g';
735
+ }
736
+ ```
737
+
738
+ By default, this hook returns `true` so the data for the record is updated
739
+ in the background.
740
+
741
+ @since 1.13.0
742
+ @param {Store} store
743
+ @param {Snapshot} snapshot
744
+ @return {Boolean}
745
+ @public
746
+ */
747
+ shouldBackgroundReloadRecord(store: Store, snapshot: Snapshot): boolean;
748
+ /**
749
+ This method is used by the store to determine if the store should
750
+ reload a record array after the `store.findAll` method resolves
751
+ with a cached record array.
752
+
753
+ This method is *only* checked by the store when the store is
754
+ returning a cached record array.
755
+
756
+ If this method returns `true` the store will re-fetch all records
757
+ from the adapter.
758
+
759
+ For example, if you do not want to fetch complex data over a mobile
760
+ connection, or if the network is down, you can implement
761
+ `shouldBackgroundReloadAll` as follows:
762
+
763
+ ```javascript
764
+ shouldBackgroundReloadAll(store, snapshotArray) {
765
+ let { downlink, effectiveType } = navigator.connection;
766
+
767
+ return downlink > 0 && effectiveType === '4g';
768
+ }
769
+ ```
770
+
771
+ By default this method returns `true`, indicating that a background reload
772
+ should always be triggered.
773
+
774
+ @since 1.13.0
775
+ @param {Store} store
776
+ @param {SnapshotRecordArray} snapshotRecordArray
777
+ @return {Boolean}
778
+ @public
779
+ */
780
+ shouldBackgroundReloadAll(store: Store, snapshotRecordArray: SnapshotRecordArray): boolean;
781
+ }
782
+ //#endregion
783
+ export { BuildURLMixin as n, MixtBuildURLMixin as r, Adapter as t };
784
+ //# sourceMappingURL=adapter-CARrK3-8.d.ts.map