@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.
- package/dist/-private-DQ6Iap2t.js +193 -0
- package/dist/-private-DQ6Iap2t.js.map +1 -0
- package/dist/-private-DccRZQsm.js +904 -0
- package/dist/-private-DccRZQsm.js.map +1 -0
- package/dist/adapter/-private.d.ts +33 -0
- package/dist/adapter/-private.d.ts.map +1 -0
- package/dist/adapter/-private.js +3 -1
- package/dist/adapter/error.d.ts +2 -0
- package/dist/adapter/error.js +422 -453
- package/dist/adapter/error.js.map +1 -0
- package/{declarations → dist}/adapter/json-api.d.ts +30 -29
- package/dist/adapter/json-api.d.ts.map +1 -0
- package/dist/adapter/json-api.js +265 -143
- package/dist/adapter/json-api.js.map +1 -0
- package/dist/adapter/rest.d.ts +2 -0
- package/dist/adapter/rest.js +937 -1136
- package/dist/adapter/rest.js.map +1 -0
- package/dist/adapter-CARrK3-8.d.ts +784 -0
- package/dist/adapter-CARrK3-8.d.ts.map +1 -0
- package/dist/adapter-XgLAkYVs.js +1130 -0
- package/dist/adapter-XgLAkYVs.js.map +1 -0
- package/dist/adapter.d.ts +2 -0
- package/dist/adapter.js +1 -1248
- package/dist/compat/-private.d.ts +2 -0
- package/dist/compat/-private.js +3 -1
- package/dist/compat/builders.d.ts +169 -0
- package/dist/compat/builders.d.ts.map +1 -0
- package/dist/compat/builders.js +205 -245
- package/dist/compat/builders.js.map +1 -0
- package/dist/compat/extensions.d.ts +2 -0
- package/dist/compat/extensions.js +265 -304
- package/dist/compat/extensions.js.map +1 -0
- package/dist/compat/utils.d.ts +151 -0
- package/dist/compat/utils.d.ts.map +1 -0
- package/dist/compat/utils.js +187 -206
- package/dist/compat/utils.js.map +1 -0
- package/dist/compat-BbNNmTM-.d.ts +1386 -0
- package/dist/compat-BbNNmTM-.d.ts.map +1 -0
- package/dist/compat-g__Pfy2S.js +734 -0
- package/dist/compat-g__Pfy2S.js.map +1 -0
- package/dist/compat.d.ts +2 -0
- package/dist/compat.js +1 -1036
- package/dist/error-CzkyXr1Q.d.ts +435 -0
- package/dist/error-CzkyXr1Q.d.ts.map +1 -0
- package/dist/errors-LQhmDVdd.js +2134 -0
- package/dist/errors-LQhmDVdd.js.map +1 -0
- package/dist/extensions-DumNm4dA.d.ts +102 -0
- package/dist/extensions-DumNm4dA.d.ts.map +1 -0
- package/dist/index.d.ts +243 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +267 -339
- package/dist/index.js.map +1 -0
- package/dist/json-BXNPTlcH.js +1106 -0
- package/dist/json-BXNPTlcH.js.map +1 -0
- package/dist/model/-private.d.ts +3 -0
- package/dist/model/-private.js +3 -1
- package/dist/model/migration-support.d.ts +335 -0
- package/dist/model/migration-support.d.ts.map +1 -0
- package/dist/model/migration-support.js +504 -575
- package/dist/model/migration-support.js.map +1 -0
- package/dist/model-62hn5_PD.d.ts +3107 -0
- package/dist/model-62hn5_PD.d.ts.map +1 -0
- package/dist/model-BtIEHqYZ.js +683 -0
- package/dist/model-BtIEHqYZ.js.map +1 -0
- package/dist/model-fragments-Dpn9285r.js +334 -0
- package/dist/model-fragments-Dpn9285r.js.map +1 -0
- package/dist/model-fragments.d.ts +294 -0
- package/dist/model-fragments.d.ts.map +1 -0
- package/dist/model-fragments.js +2 -94
- package/dist/model.d.ts +404 -0
- package/dist/model.d.ts.map +1 -0
- package/dist/model.js +3 -670
- package/{declarations/adapter/rest.d.ts → dist/rest-0NhtexIq.d.ts} +183 -173
- package/dist/rest-0NhtexIq.d.ts.map +1 -0
- package/dist/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
- package/dist/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
- package/dist/schema-provider-DsKuB5Wb.js +1929 -0
- package/dist/schema-provider-DsKuB5Wb.js.map +1 -0
- package/{declarations → dist}/serializer/json-api.d.ts +3 -0
- package/dist/serializer/json-api.d.ts.map +1 -0
- package/dist/serializer/json-api.js +527 -519
- package/dist/serializer/json-api.js.map +1 -0
- package/{declarations → dist}/serializer/json.d.ts +3 -0
- package/dist/serializer/json.d.ts.map +1 -0
- package/dist/serializer/json.js +3 -6
- package/{declarations/serializer/-private/embedded-records-mixin.d.ts → dist/serializer/rest.d.ts} +56 -1
- package/dist/serializer/rest.d.ts.map +1 -0
- package/dist/serializer/rest.js +958 -1199
- package/dist/serializer/rest.js.map +1 -0
- package/dist/serializer/transform.d.ts +313 -0
- package/dist/serializer/transform.d.ts.map +1 -0
- package/dist/serializer/transform.js +283 -308
- package/dist/serializer/transform.js.map +1 -0
- package/dist/serializer.d.ts +151 -0
- package/dist/serializer.d.ts.map +1 -0
- package/dist/serializer.js +205 -205
- package/dist/serializer.js.map +1 -0
- package/dist/store-C4qYzXei.js +473 -0
- package/dist/store-C4qYzXei.js.map +1 -0
- package/dist/store.d.ts +13 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/store.js +1 -641
- package/dist/unpkg/dev/-private-CrEyBE-B.js +189 -0
- package/dist/unpkg/dev/-private-CrEyBE-B.js.map +1 -0
- package/dist/unpkg/dev/-private-vOhxVExH.js +896 -0
- package/dist/unpkg/dev/-private-vOhxVExH.js.map +1 -0
- package/dist/unpkg/dev/adapter/-private.js +3 -1
- package/dist/unpkg/dev/adapter/error.js +421 -452
- package/dist/unpkg/dev/adapter/error.js.map +1 -0
- package/dist/unpkg/dev/adapter/json-api.js +239 -257
- package/dist/unpkg/dev/adapter/json-api.js.map +1 -0
- package/dist/unpkg/dev/adapter/rest.js +935 -1134
- package/dist/unpkg/dev/adapter/rest.js.map +1 -0
- package/dist/unpkg/dev/adapter-Cw0uSl8d.js +1129 -0
- package/dist/unpkg/dev/adapter-Cw0uSl8d.js.map +1 -0
- package/dist/unpkg/dev/adapter.js +1 -1247
- package/dist/unpkg/dev/compat/-private.js +3 -1
- package/dist/unpkg/dev/compat/builders.js +204 -247
- package/dist/unpkg/dev/compat/builders.js.map +1 -0
- package/dist/unpkg/dev/compat/extensions.js +264 -303
- package/dist/unpkg/dev/compat/extensions.js.map +1 -0
- package/dist/unpkg/dev/compat/utils.js +186 -205
- package/dist/unpkg/dev/compat/utils.js.map +1 -0
- package/dist/unpkg/dev/compat-CeyxXB7K.js +825 -0
- package/dist/unpkg/dev/compat-CeyxXB7K.js.map +1 -0
- package/dist/unpkg/dev/compat.js +1 -1178
- package/dist/unpkg/dev/errors-1javxsPo.js +2127 -0
- package/dist/unpkg/dev/errors-1javxsPo.js.map +1 -0
- package/dist/unpkg/dev/index.js +266 -344
- package/dist/unpkg/dev/index.js.map +1 -0
- package/dist/unpkg/dev/json-DDJji3V3.js +1104 -0
- package/dist/unpkg/dev/json-DDJji3V3.js.map +1 -0
- package/dist/unpkg/dev/model/-private.js +3 -1
- package/dist/unpkg/dev/model/migration-support.js +481 -549
- package/dist/unpkg/dev/model/migration-support.js.map +1 -0
- package/dist/unpkg/dev/model-C9Xb1R1x.js +655 -0
- package/dist/unpkg/dev/model-C9Xb1R1x.js.map +1 -0
- package/dist/unpkg/dev/model-fragments-Dpn9285r.js +334 -0
- package/dist/unpkg/dev/model-fragments-Dpn9285r.js.map +1 -0
- package/dist/unpkg/dev/model-fragments.js +2 -94
- package/dist/unpkg/dev/model.js +3 -681
- package/dist/unpkg/dev/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
- package/dist/unpkg/dev/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
- package/dist/unpkg/dev/schema-provider-Dy6c1J5f.js +1834 -0
- package/dist/unpkg/dev/schema-provider-Dy6c1J5f.js.map +1 -0
- package/dist/unpkg/dev/serializer/json-api.js +514 -634
- package/dist/unpkg/dev/serializer/json-api.js.map +1 -0
- package/dist/unpkg/dev/serializer/json.js +3 -4
- package/dist/unpkg/dev/serializer/rest.js +954 -1196
- package/dist/unpkg/dev/serializer/rest.js.map +1 -0
- package/dist/unpkg/dev/serializer/transform.js +283 -308
- package/dist/unpkg/dev/serializer/transform.js.map +1 -0
- package/dist/unpkg/dev/serializer.js +205 -205
- package/dist/unpkg/dev/serializer.js.map +1 -0
- package/dist/unpkg/dev/store-D_V8-HQl.js +472 -0
- package/dist/unpkg/dev/store-D_V8-HQl.js.map +1 -0
- package/dist/unpkg/dev/store.js +1 -649
- package/dist/unpkg/dev/util-dSKEgQDp.js +12 -0
- package/dist/unpkg/dev/util-dSKEgQDp.js.map +1 -0
- package/dist/unpkg/dev/utils-DYC9utVJ.js +11 -0
- package/dist/unpkg/dev/utils-DYC9utVJ.js.map +1 -0
- package/dist/unpkg/dev-deprecated/-private-CrEyBE-B.js +189 -0
- package/dist/unpkg/dev-deprecated/-private-CrEyBE-B.js.map +1 -0
- package/dist/unpkg/dev-deprecated/-private-vOhxVExH.js +896 -0
- package/dist/unpkg/dev-deprecated/-private-vOhxVExH.js.map +1 -0
- package/dist/unpkg/dev-deprecated/adapter/-private.js +3 -1
- package/dist/unpkg/dev-deprecated/adapter/error.js +421 -452
- package/dist/unpkg/dev-deprecated/adapter/error.js.map +1 -0
- package/dist/unpkg/dev-deprecated/adapter/json-api.js +239 -257
- package/dist/unpkg/dev-deprecated/adapter/json-api.js.map +1 -0
- package/dist/unpkg/dev-deprecated/adapter/rest.js +935 -1134
- package/dist/unpkg/dev-deprecated/adapter/rest.js.map +1 -0
- package/dist/unpkg/dev-deprecated/adapter-Cw0uSl8d.js +1129 -0
- package/dist/unpkg/dev-deprecated/adapter-Cw0uSl8d.js.map +1 -0
- package/dist/unpkg/dev-deprecated/adapter.js +1 -1247
- package/dist/unpkg/dev-deprecated/compat/-private.js +3 -1
- package/dist/unpkg/dev-deprecated/compat/builders.js +204 -247
- package/dist/unpkg/dev-deprecated/compat/builders.js.map +1 -0
- package/dist/unpkg/dev-deprecated/compat/extensions.js +264 -303
- package/dist/unpkg/dev-deprecated/compat/extensions.js.map +1 -0
- package/dist/unpkg/dev-deprecated/compat/utils.js +186 -205
- package/dist/unpkg/dev-deprecated/compat/utils.js.map +1 -0
- package/dist/unpkg/dev-deprecated/compat-DmAgB2NS.js +825 -0
- package/dist/unpkg/dev-deprecated/compat-DmAgB2NS.js.map +1 -0
- package/dist/unpkg/dev-deprecated/compat.js +1 -1178
- package/dist/unpkg/dev-deprecated/errors-C4_aOhY5.js +2128 -0
- package/dist/unpkg/dev-deprecated/errors-C4_aOhY5.js.map +1 -0
- package/dist/unpkg/dev-deprecated/index.js +266 -343
- package/dist/unpkg/dev-deprecated/index.js.map +1 -0
- package/dist/unpkg/dev-deprecated/json-DDJji3V3.js +1104 -0
- package/dist/unpkg/dev-deprecated/json-DDJji3V3.js.map +1 -0
- package/dist/unpkg/dev-deprecated/model/-private.js +3 -1
- package/dist/unpkg/dev-deprecated/model/migration-support.js +492 -566
- package/dist/unpkg/dev-deprecated/model/migration-support.js.map +1 -0
- package/dist/unpkg/dev-deprecated/model-CvSMYkgs.js +660 -0
- package/dist/unpkg/dev-deprecated/model-CvSMYkgs.js.map +1 -0
- package/dist/unpkg/dev-deprecated/model-fragments-Dpn9285r.js +334 -0
- package/dist/unpkg/dev-deprecated/model-fragments-Dpn9285r.js.map +1 -0
- package/dist/unpkg/dev-deprecated/model-fragments.js +2 -94
- package/dist/unpkg/dev-deprecated/model.js +3 -685
- package/dist/unpkg/dev-deprecated/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
- package/dist/unpkg/dev-deprecated/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
- package/dist/unpkg/dev-deprecated/schema-provider-Cqttza94.js +1835 -0
- package/dist/unpkg/dev-deprecated/schema-provider-Cqttza94.js.map +1 -0
- package/dist/unpkg/dev-deprecated/serializer/json-api.js +514 -634
- package/dist/unpkg/dev-deprecated/serializer/json-api.js.map +1 -0
- package/dist/unpkg/dev-deprecated/serializer/json.js +3 -4
- package/dist/unpkg/dev-deprecated/serializer/rest.js +954 -1196
- package/dist/unpkg/dev-deprecated/serializer/rest.js.map +1 -0
- package/dist/unpkg/dev-deprecated/serializer/transform.js +283 -308
- package/dist/unpkg/dev-deprecated/serializer/transform.js.map +1 -0
- package/dist/unpkg/dev-deprecated/serializer.js +205 -205
- package/dist/unpkg/dev-deprecated/serializer.js.map +1 -0
- package/dist/unpkg/dev-deprecated/store-BX7GvXC_.js +472 -0
- package/dist/unpkg/dev-deprecated/store-BX7GvXC_.js.map +1 -0
- package/dist/unpkg/dev-deprecated/store.js +1 -649
- package/dist/unpkg/dev-deprecated/util-9mgEBJ3W.js +18 -0
- package/dist/unpkg/dev-deprecated/util-9mgEBJ3W.js.map +1 -0
- package/dist/unpkg/dev-deprecated/utils-Cl86-e7F.js +17 -0
- package/dist/unpkg/dev-deprecated/utils-Cl86-e7F.js.map +1 -0
- package/dist/unpkg/prod/-private-B4bxoTuK.js +160 -0
- package/dist/unpkg/prod/-private-B4bxoTuK.js.map +1 -0
- package/dist/unpkg/prod/-private-SfXkkHKd.js +745 -0
- package/dist/unpkg/prod/-private-SfXkkHKd.js.map +1 -0
- package/dist/unpkg/prod/adapter/-private.js +3 -1
- package/dist/unpkg/prod/adapter/error.js +418 -447
- package/dist/unpkg/prod/adapter/error.js.map +1 -0
- package/dist/unpkg/prod/adapter/json-api.js +236 -252
- package/dist/unpkg/prod/adapter/json-api.js.map +1 -0
- package/dist/unpkg/prod/adapter/rest.js +911 -1097
- package/dist/unpkg/prod/adapter/rest.js.map +1 -0
- package/dist/unpkg/prod/adapter-Wnk7jizX.js +1111 -0
- package/dist/unpkg/prod/adapter-Wnk7jizX.js.map +1 -0
- package/dist/unpkg/prod/adapter.js +1 -1214
- package/dist/unpkg/prod/compat/-private.js +3 -1
- package/dist/unpkg/prod/compat/builders.js +165 -182
- package/dist/unpkg/prod/compat/builders.js.map +1 -0
- package/dist/unpkg/prod/compat/extensions.js +252 -283
- package/dist/unpkg/prod/compat/extensions.js.map +1 -0
- package/dist/unpkg/prod/compat/utils.js +183 -200
- package/dist/unpkg/prod/compat/utils.js.map +1 -0
- package/dist/unpkg/prod/compat-CJ87MzDn.js +547 -0
- package/dist/unpkg/prod/compat-CJ87MzDn.js.map +1 -0
- package/dist/unpkg/prod/compat.js +1 -742
- package/dist/unpkg/prod/errors-Co7YWHoA.js +1977 -0
- package/dist/unpkg/prod/errors-Co7YWHoA.js.map +1 -0
- package/dist/unpkg/prod/index.js +245 -308
- package/dist/unpkg/prod/index.js.map +1 -0
- package/dist/unpkg/prod/json-BD1kRTfB.js +1080 -0
- package/dist/unpkg/prod/json-BD1kRTfB.js.map +1 -0
- package/dist/unpkg/prod/model/-private.js +3 -1
- package/dist/unpkg/prod/model/migration-support.js +477 -542
- package/dist/unpkg/prod/model/migration-support.js.map +1 -0
- package/dist/unpkg/prod/model-BzoOmtka.js +603 -0
- package/dist/unpkg/prod/model-BzoOmtka.js.map +1 -0
- package/dist/unpkg/prod/model-fragments-Dpn9285r.js +334 -0
- package/dist/unpkg/prod/model-fragments-Dpn9285r.js.map +1 -0
- package/dist/unpkg/prod/model-fragments.js +2 -94
- package/dist/unpkg/prod/model.js +3 -596
- package/dist/unpkg/prod/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
- package/dist/unpkg/prod/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
- package/dist/unpkg/prod/schema-provider-CKZcqWyP.js +1622 -0
- package/dist/unpkg/prod/schema-provider-CKZcqWyP.js.map +1 -0
- package/dist/unpkg/prod/serializer/json-api.js +497 -592
- package/dist/unpkg/prod/serializer/json-api.js.map +1 -0
- package/dist/unpkg/prod/serializer/json.js +3 -4
- package/dist/unpkg/prod/serializer/rest.js +938 -1166
- package/dist/unpkg/prod/serializer/rest.js.map +1 -0
- package/dist/unpkg/prod/serializer/transform.js +283 -308
- package/dist/unpkg/prod/serializer/transform.js.map +1 -0
- package/dist/unpkg/prod/serializer.js +205 -205
- package/dist/unpkg/prod/serializer.js.map +1 -0
- package/dist/unpkg/prod/store-RGGc1ilN.js +392 -0
- package/dist/unpkg/prod/store-RGGc1ilN.js.map +1 -0
- package/dist/unpkg/prod/store.js +1 -517
- package/dist/unpkg/prod/util-dSKEgQDp.js +12 -0
- package/dist/unpkg/prod/util-dSKEgQDp.js.map +1 -0
- package/dist/unpkg/prod/utils-DYC9utVJ.js +11 -0
- package/dist/unpkg/prod/utils-DYC9utVJ.js.map +1 -0
- package/dist/unpkg/prod-deprecated/-private-B4bxoTuK.js +160 -0
- package/dist/unpkg/prod-deprecated/-private-B4bxoTuK.js.map +1 -0
- package/dist/unpkg/prod-deprecated/-private-SfXkkHKd.js +745 -0
- package/dist/unpkg/prod-deprecated/-private-SfXkkHKd.js.map +1 -0
- package/dist/unpkg/prod-deprecated/adapter/-private.js +3 -1
- package/dist/unpkg/prod-deprecated/adapter/error.js +418 -447
- package/dist/unpkg/prod-deprecated/adapter/error.js.map +1 -0
- package/dist/unpkg/prod-deprecated/adapter/json-api.js +236 -252
- package/dist/unpkg/prod-deprecated/adapter/json-api.js.map +1 -0
- package/dist/unpkg/prod-deprecated/adapter/rest.js +911 -1097
- package/dist/unpkg/prod-deprecated/adapter/rest.js.map +1 -0
- package/{declarations/adapter.d.ts → dist/unpkg/prod-deprecated/adapter-Wnk7jizX.js} +445 -110
- package/dist/unpkg/prod-deprecated/adapter-Wnk7jizX.js.map +1 -0
- package/dist/unpkg/prod-deprecated/adapter.js +1 -1214
- package/dist/unpkg/prod-deprecated/compat/-private.js +3 -1
- package/dist/unpkg/prod-deprecated/compat/builders.js +165 -182
- package/dist/unpkg/prod-deprecated/compat/builders.js.map +1 -0
- package/dist/unpkg/prod-deprecated/compat/extensions.js +252 -283
- package/dist/unpkg/prod-deprecated/compat/extensions.js.map +1 -0
- package/dist/unpkg/prod-deprecated/compat/utils.js +183 -200
- package/dist/unpkg/prod-deprecated/compat/utils.js.map +1 -0
- package/dist/unpkg/prod-deprecated/compat-CJ87MzDn.js +547 -0
- package/dist/unpkg/prod-deprecated/compat-CJ87MzDn.js.map +1 -0
- package/dist/unpkg/prod-deprecated/compat.js +1 -742
- package/dist/unpkg/prod-deprecated/errors-C-opde61.js +1978 -0
- package/dist/unpkg/prod-deprecated/errors-C-opde61.js.map +1 -0
- package/dist/unpkg/prod-deprecated/index.js +245 -307
- package/dist/unpkg/prod-deprecated/index.js.map +1 -0
- package/dist/unpkg/prod-deprecated/json-BD1kRTfB.js +1080 -0
- package/dist/unpkg/prod-deprecated/json-BD1kRTfB.js.map +1 -0
- package/dist/unpkg/prod-deprecated/model/-private.js +3 -1
- package/dist/unpkg/prod-deprecated/model/migration-support.js +488 -559
- package/dist/unpkg/prod-deprecated/model/migration-support.js.map +1 -0
- package/dist/unpkg/prod-deprecated/model-C0bTXzGn.js +604 -0
- package/dist/unpkg/prod-deprecated/model-C0bTXzGn.js.map +1 -0
- package/dist/unpkg/prod-deprecated/model-fragments-Dpn9285r.js +334 -0
- package/dist/unpkg/prod-deprecated/model-fragments-Dpn9285r.js.map +1 -0
- package/dist/unpkg/prod-deprecated/model-fragments.js +2 -94
- package/dist/unpkg/prod-deprecated/model.js +3 -599
- package/dist/unpkg/prod-deprecated/runtime-BPCpkOf1-BgO3Lyjx.js +53 -0
- package/dist/unpkg/prod-deprecated/runtime-BPCpkOf1-BgO3Lyjx.js.map +1 -0
- package/dist/unpkg/prod-deprecated/schema-provider-lH3qP5tw.js +1635 -0
- package/dist/unpkg/prod-deprecated/schema-provider-lH3qP5tw.js.map +1 -0
- package/dist/unpkg/prod-deprecated/serializer/json-api.js +497 -592
- package/dist/unpkg/prod-deprecated/serializer/json-api.js.map +1 -0
- package/dist/unpkg/prod-deprecated/serializer/json.js +3 -4
- package/dist/unpkg/prod-deprecated/serializer/rest.js +938 -1166
- package/dist/unpkg/prod-deprecated/serializer/rest.js.map +1 -0
- package/dist/unpkg/prod-deprecated/serializer/transform.js +283 -308
- package/dist/unpkg/prod-deprecated/serializer/transform.js.map +1 -0
- package/dist/unpkg/prod-deprecated/serializer.js +205 -205
- package/dist/unpkg/prod-deprecated/serializer.js.map +1 -0
- package/dist/unpkg/prod-deprecated/store-0L2CkYzh.js +392 -0
- package/dist/unpkg/prod-deprecated/store-0L2CkYzh.js.map +1 -0
- package/dist/unpkg/prod-deprecated/store.js +1 -517
- package/dist/unpkg/prod-deprecated/util-CQQdHX3n.js +14 -0
- package/dist/unpkg/prod-deprecated/util-CQQdHX3n.js.map +1 -0
- package/dist/unpkg/prod-deprecated/utils-BMI_JwFP.js +13 -0
- package/dist/unpkg/prod-deprecated/utils-BMI_JwFP.js.map +1 -0
- package/dist/util-Bnx8nm-D.js +29 -0
- package/dist/util-Bnx8nm-D.js.map +1 -0
- package/dist/utils-ZAytYep8.js +28 -0
- package/dist/utils-ZAytYep8.js.map +1 -0
- package/package.json +13 -13
- package/declarations/adapter/-private/build-url-mixin.d.ts +0 -189
- package/declarations/adapter/-private/fastboot-interface.d.ts +0 -8
- package/declarations/adapter/-private/utils/continue-on-reject.d.ts +0 -1
- package/declarations/adapter/-private/utils/determine-body-promise.d.ts +0 -4
- package/declarations/adapter/-private/utils/fetch.d.ts +0 -8
- package/declarations/adapter/-private/utils/parse-response-headers.d.ts +0 -1
- package/declarations/adapter/-private/utils/serialize-into-hash.d.ts +0 -6
- package/declarations/adapter/-private/utils/serialize-query-params.d.ts +0 -5
- package/declarations/adapter/-private.d.ts +0 -5
- package/declarations/adapter/error.d.ts +0 -431
- package/declarations/compat/-private.d.ts +0 -13
- package/declarations/compat/builders/find-all.d.ts +0 -34
- package/declarations/compat/builders/find-record.d.ts +0 -56
- package/declarations/compat/builders/query.d.ts +0 -66
- package/declarations/compat/builders/save-record.d.ts +0 -34
- package/declarations/compat/builders/utils.d.ts +0 -3
- package/declarations/compat/builders.d.ts +0 -14
- package/declarations/compat/extensions.d.ts +0 -99
- package/declarations/compat/legacy-network-handler/fetch-manager.d.ts +0 -55
- package/declarations/compat/legacy-network-handler/identifier-has-id.d.ts +0 -2
- package/declarations/compat/legacy-network-handler/legacy-data-fetch.d.ts +0 -11
- package/declarations/compat/legacy-network-handler/legacy-data-utils.d.ts +0 -5
- package/declarations/compat/legacy-network-handler/legacy-network-handler.d.ts +0 -9
- package/declarations/compat/legacy-network-handler/minimum-adapter-interface.d.ts +0 -528
- package/declarations/compat/legacy-network-handler/minimum-serializer-interface.d.ts +0 -220
- package/declarations/compat/legacy-network-handler/serializer-response.d.ts +0 -6
- package/declarations/compat/legacy-network-handler/snapshot-record-array.d.ts +0 -110
- package/declarations/compat/legacy-network-handler/snapshot.d.ts +0 -255
- package/declarations/compat/utils.d.ts +0 -148
- package/declarations/compat.d.ts +0 -189
- package/declarations/index.d.ts +0 -244
- package/declarations/model/-private/attr.d.ts +0 -191
- package/declarations/model/-private/belongs-to.d.ts +0 -195
- package/declarations/model/-private/debug/assert-polymorphic-type.d.ts +0 -5
- package/declarations/model/-private/errors.d.ts +0 -289
- package/declarations/model/-private/has-many.d.ts +0 -162
- package/declarations/model/-private/hooks.d.ts +0 -36
- package/declarations/model/-private/legacy-relationships-support.d.ts +0 -47
- package/declarations/model/-private/model-for-mixin.d.ts +0 -3
- package/declarations/model/-private/model-methods.d.ts +0 -39
- package/declarations/model/-private/model.d.ts +0 -1279
- package/declarations/model/-private/notify-changes.d.ts +0 -4
- package/declarations/model/-private/promise-belongs-to.d.ts +0 -40
- package/declarations/model/-private/promise-many-array.d.ts +0 -130
- package/declarations/model/-private/record-state.d.ts +0 -58
- package/declarations/model/-private/references/belongs-to.d.ts +0 -488
- package/declarations/model/-private/references/has-many.d.ts +0 -498
- package/declarations/model/-private/schema-provider.d.ts +0 -66
- package/declarations/model/-private/type-utils.d.ts +0 -57
- package/declarations/model/-private/util.d.ts +0 -5
- package/declarations/model/-private.d.ts +0 -8
- package/declarations/model/migration-support.d.ts +0 -306
- package/declarations/model-fragments/extensions/fragment-array.d.ts +0 -54
- package/declarations/model-fragments/extensions/fragment.d.ts +0 -50
- package/declarations/model-fragments/hooks/model-for.d.ts +0 -27
- package/declarations/model-fragments/index.d.ts +0 -13
- package/declarations/model-fragments/instance-initializers/fragment-extensions.d.ts +0 -15
- package/declarations/model-fragments/utilities/with-array-defaults.d.ts +0 -56
- package/declarations/model-fragments/utilities/with-fragment-array-defaults.d.ts +0 -38
- package/declarations/model-fragments/utilities/with-fragment-defaults.d.ts +0 -34
- package/declarations/model-fragments/utilities/with-legacy.d.ts +0 -11
- package/declarations/model-fragments.d.ts +0 -9
- package/declarations/model.d.ts +0 -49
- package/declarations/serializer/-private/transforms/boolean.d.ts +0 -60
- package/declarations/serializer/-private/transforms/date.d.ts +0 -42
- package/declarations/serializer/-private/transforms/number.d.ts +0 -42
- package/declarations/serializer/-private/transforms/string.d.ts +0 -42
- package/declarations/serializer/-private/transforms/transform.d.ts +0 -118
- package/declarations/serializer/-private/utils.d.ts +0 -27
- package/declarations/serializer/rest.d.ts +0 -51
- package/declarations/serializer/transform.d.ts +0 -5
- package/declarations/serializer.d.ts +0 -252
- package/declarations/store/-private.d.ts +0 -223
- package/declarations/store.d.ts +0 -10
- package/dist/-private-BG3bMiKp.js +0 -1211
- package/dist/errors-DZKA206g.js +0 -2589
- package/dist/hooks-BvOqJBei.js +0 -105
- package/dist/json-DU8m1pGf.js +0 -1336
- package/dist/model-for-CXkJw59V.js +0 -297
- package/dist/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
- package/dist/schema-provider-DtPOp0d7.js +0 -2382
- package/dist/serialize-into-hash-DPZYoF-i.js +0 -261
- package/dist/unpkg/dev/-private-DtjBbEgy.js +0 -1206
- package/dist/unpkg/dev/errors-DngRU-If.js +0 -2585
- package/dist/unpkg/dev/hooks-UuiLxWxS.js +0 -104
- package/dist/unpkg/dev/json-K2Y9z6MN.js +0 -1333
- package/dist/unpkg/dev/model-for-CXkJw59V.js +0 -297
- package/dist/unpkg/dev/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
- package/dist/unpkg/dev/schema-provider-0D7f-QOn.js +0 -2272
- package/dist/unpkg/dev/serialize-into-hash-B2xDbuo5.js +0 -259
- package/dist/unpkg/dev/util-DvanW33H.js +0 -20
- package/dist/unpkg/dev/utils-BhvS1iTS.js +0 -8
- package/dist/unpkg/dev-deprecated/-private-DtjBbEgy.js +0 -1206
- package/dist/unpkg/dev-deprecated/errors-Bzidntpi.js +0 -2588
- package/dist/unpkg/dev-deprecated/hooks-DVXhMW14.js +0 -104
- package/dist/unpkg/dev-deprecated/json-K2Y9z6MN.js +0 -1333
- package/dist/unpkg/dev-deprecated/model-for-CXkJw59V.js +0 -297
- package/dist/unpkg/dev-deprecated/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
- package/dist/unpkg/dev-deprecated/schema-provider-ZwO5_fZw.js +0 -2292
- package/dist/unpkg/dev-deprecated/serialize-into-hash-B2xDbuo5.js +0 -259
- package/dist/unpkg/dev-deprecated/util-CWr5WQOT.js +0 -24
- package/dist/unpkg/dev-deprecated/utils-C9PJehtL.js +0 -12
- package/dist/unpkg/prod/-private-BdyZaGEh.js +0 -971
- package/dist/unpkg/prod/errors-B-PWeYlW.js +0 -2337
- package/dist/unpkg/prod/hooks-Bx-zBziU.js +0 -72
- package/dist/unpkg/prod/json-Qewu-UN9.js +0 -1300
- package/dist/unpkg/prod/model-for-CXkJw59V.js +0 -297
- package/dist/unpkg/prod/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
- package/dist/unpkg/prod/schema-provider-BgRqk8i9.js +0 -1951
- package/dist/unpkg/prod/serialize-into-hash-DGlzQteF.js +0 -215
- package/dist/unpkg/prod/util-DvanW33H.js +0 -20
- package/dist/unpkg/prod/utils-BhvS1iTS.js +0 -8
- package/dist/unpkg/prod-deprecated/-private-BdyZaGEh.js +0 -971
- package/dist/unpkg/prod-deprecated/errors-Dl2J9d1D.js +0 -2340
- package/dist/unpkg/prod-deprecated/hooks-Cm60wWTf.js +0 -72
- package/dist/unpkg/prod-deprecated/json-Qewu-UN9.js +0 -1300
- package/dist/unpkg/prod-deprecated/model-for-CXkJw59V.js +0 -297
- package/dist/unpkg/prod-deprecated/runtime-BPCpkOf1-BKOwiRJp.js +0 -65
- package/dist/unpkg/prod-deprecated/schema-provider-Dh6tRqVI.js +0 -1980
- package/dist/unpkg/prod-deprecated/serialize-into-hash-DGlzQteF.js +0 -215
- package/dist/unpkg/prod-deprecated/util-B6cn-i93.js +0 -23
- package/dist/unpkg/prod-deprecated/utils-BUWwQwCh.js +0 -11
- package/dist/util-Dul6TZts.js +0 -35
- package/dist/utils-Cqw9eRj5.js +0 -23
package/dist/adapter/error.js
CHANGED
|
@@ -1,481 +1,450 @@
|
|
|
1
|
-
import { getOrSetGlobal } from
|
|
2
|
-
import {
|
|
1
|
+
import { getOrSetGlobal } from "@warp-drive/core/types/-private";
|
|
2
|
+
import { getGlobalConfig, macroCondition } from "@embroider/macros";
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
// @ts-expect-error untyped
|
|
22
|
-
this.number = error.number;
|
|
23
|
-
}
|
|
24
|
-
this.errors = errors || [{
|
|
25
|
-
title: 'Adapter Error',
|
|
26
|
-
detail: message
|
|
27
|
-
}];
|
|
4
|
+
//#region src/adapter/error.ts
|
|
5
|
+
function _AdapterError(errors, message = "Adapter operation failed") {
|
|
6
|
+
this.isAdapterError = true;
|
|
7
|
+
const error = Error.call(this, message);
|
|
8
|
+
if (error) {
|
|
9
|
+
this.stack = error.stack;
|
|
10
|
+
this.description = error.description;
|
|
11
|
+
this.fileName = error.fileName;
|
|
12
|
+
this.lineNumber = error.lineNumber;
|
|
13
|
+
this.message = error.message;
|
|
14
|
+
this.name = error.name;
|
|
15
|
+
this.number = error.number;
|
|
16
|
+
}
|
|
17
|
+
this.errors = errors || [{
|
|
18
|
+
title: "Adapter Error",
|
|
19
|
+
detail: message
|
|
20
|
+
}];
|
|
28
21
|
}
|
|
29
|
-
|
|
30
22
|
/**
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
23
|
+
* The shape of the errors thrown/returned by {@link AdapterError} and its subclasses.
|
|
24
|
+
*/
|
|
34
25
|
/**
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
26
|
+
* The static interface shared by {@link AdapterError} and its subclasses,
|
|
27
|
+
* allowing further subclassing via {@link AdapterRequestErrorConstructor.extend | extend}.
|
|
28
|
+
*/
|
|
39
29
|
_AdapterError.prototype = Object.create(Error.prototype);
|
|
40
|
-
_AdapterError.prototype.code =
|
|
30
|
+
_AdapterError.prototype.code = "AdapterError";
|
|
41
31
|
_AdapterError.extend = extendFn(_AdapterError);
|
|
42
|
-
|
|
43
32
|
/**
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
33
|
+
* The {@link AdapterRequestError} shape thrown by the {@link AdapterError} constructor.
|
|
34
|
+
*/
|
|
47
35
|
/**
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
const AdapterError = getOrSetGlobal(
|
|
36
|
+
* :::danger
|
|
37
|
+
* ⚠️ **This is LEGACY documentation** for a feature that is no longer encouraged to be used.
|
|
38
|
+
* If starting a new app or thinking of implementing a new adapter, consider writing a
|
|
39
|
+
* {@link Handler} instead to be used with the {@link RequestManager}
|
|
40
|
+
* :::
|
|
41
|
+
*
|
|
42
|
+
* An `AdapterError` is used by an adapter to signal that an error occurred
|
|
43
|
+
* during a request to an external API. It indicates a generic error, and
|
|
44
|
+
* subclasses are used to indicate specific error states.
|
|
45
|
+
*
|
|
46
|
+
* To create a custom error to signal a specific error state in communicating
|
|
47
|
+
* with an external API, extend the `AdapterError`. For example, if the
|
|
48
|
+
* external API exclusively used HTTP `503 Service Unavailable` to indicate
|
|
49
|
+
* it was closed for maintenance:
|
|
50
|
+
*
|
|
51
|
+
* ```js [app/adapters/maintenance-error.js]
|
|
52
|
+
* import AdapterError from '@warp-drive/legacy/adapter/error';
|
|
53
|
+
*
|
|
54
|
+
* export default AdapterError.extend({ message: "Down for maintenance." });
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* This error would then be returned by an adapter's `handleResponse` method:
|
|
58
|
+
*
|
|
59
|
+
* ```js [app/adapters/application.js]
|
|
60
|
+
* import JSONAPIAdapter from '@warp-drive/legacy/adapter/json-api';
|
|
61
|
+
* import MaintenanceError from './maintenance-error';
|
|
62
|
+
*
|
|
63
|
+
* export default class ApplicationAdapter extends JSONAPIAdapter {
|
|
64
|
+
* handleResponse(status) {
|
|
65
|
+
* if (503 === status) {
|
|
66
|
+
* return new MaintenanceError();
|
|
67
|
+
* }
|
|
68
|
+
*
|
|
69
|
+
* return super.handleResponse(...arguments);
|
|
70
|
+
* }
|
|
71
|
+
* }
|
|
72
|
+
* ```
|
|
73
|
+
*
|
|
74
|
+
* And can then be detected in an application and used to send the user to an
|
|
75
|
+
* `under-maintenance` route:
|
|
76
|
+
*
|
|
77
|
+
* ```js [app/routes/application.js]
|
|
78
|
+
* import MaintenanceError from '../adapters/maintenance-error';
|
|
79
|
+
*
|
|
80
|
+
* export default class ApplicationRoute extends Route {
|
|
81
|
+
* actions: {
|
|
82
|
+
* error(error, transition) {
|
|
83
|
+
* if (error instanceof MaintenanceError) {
|
|
84
|
+
* this.transitionTo('under-maintenance');
|
|
85
|
+
* return;
|
|
86
|
+
* }
|
|
87
|
+
*
|
|
88
|
+
* // ...other error handling logic
|
|
89
|
+
* }
|
|
90
|
+
* }
|
|
91
|
+
* }
|
|
92
|
+
* ```
|
|
93
|
+
*
|
|
94
|
+
* ### Signaling an Error Without Extending `AdapterError`
|
|
95
|
+
*
|
|
96
|
+
* Extending `AdapterError` (or one of its subclasses) is a convenience, not
|
|
97
|
+
* a requirement. WarpDrive only inspects an error for the {@link AdapterRequestError}
|
|
98
|
+
* shape: an `isAdapterError` flag, a `code`, and an {json:api}-formatted
|
|
99
|
+
* `errors` array. Any object satisfying that shape — including a plain
|
|
100
|
+
* `Error` with those properties attached — will be handled identically to
|
|
101
|
+
* an instance created via `new AdapterError()` or one of its subclasses.
|
|
102
|
+
*
|
|
103
|
+
* This is useful when you'd rather not introduce a class hierarchy, or
|
|
104
|
+
* when the error needs to be constructed from data you don't control
|
|
105
|
+
* (for example, re-throwing an error surfaced by a third-party library):
|
|
106
|
+
*
|
|
107
|
+
* ```js [app/adapters/application.js]
|
|
108
|
+
* import JSONAPIAdapter from '@warp-drive/legacy/adapter/json-api';
|
|
109
|
+
*
|
|
110
|
+
* export default class ApplicationAdapter extends JSONAPIAdapter {
|
|
111
|
+
* handleResponse(status, headers, payload) {
|
|
112
|
+
* if (status === 503) {
|
|
113
|
+
* const error = new Error('Down for maintenance.');
|
|
114
|
+
* error.isAdapterError = true;
|
|
115
|
+
* error.code = 'MaintenanceError';
|
|
116
|
+
* error.errors = [{ title: 'Service Unavailable', detail: 'Down for maintenance.' }];
|
|
117
|
+
* return error;
|
|
118
|
+
* }
|
|
119
|
+
*
|
|
120
|
+
* return super.handleResponse(status, headers, payload);
|
|
121
|
+
* }
|
|
122
|
+
* }
|
|
123
|
+
* ```
|
|
124
|
+
*
|
|
125
|
+
* Because `code` is just a string you control, `error instanceof AdapterError`
|
|
126
|
+
* checks won't match a plain object built this way — consumers should
|
|
127
|
+
* instead branch on `error.isAdapterError && error.code === 'MaintenanceError'`,
|
|
128
|
+
* or on whichever of the {@link AdapterError} subclasses' `code` values
|
|
129
|
+
* (e.g. `'InvalidError'`, `'NotFoundError'`) the error's `code` matches.
|
|
130
|
+
*
|
|
131
|
+
* @public
|
|
132
|
+
*/
|
|
133
|
+
const AdapterError = getOrSetGlobal("AdapterError", _AdapterError);
|
|
146
134
|
function extendFn(ErrorClass) {
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
return extend(ErrorClass, defaultMessage);
|
|
151
|
-
};
|
|
135
|
+
return function({ message: defaultMessage } = {}) {
|
|
136
|
+
return extend(ErrorClass, defaultMessage);
|
|
137
|
+
};
|
|
152
138
|
}
|
|
153
139
|
function extend(ParentErrorClass, defaultMessage) {
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
ErrorClass.prototype = Object.create(ParentErrorClass.prototype);
|
|
164
|
-
ErrorClass.extend = extendFn(ErrorClass);
|
|
165
|
-
return ErrorClass;
|
|
140
|
+
const ErrorClass = function(errors, message) {
|
|
141
|
+
macroCondition(getGlobalConfig().WarpDrive.env.DEBUG) && ((test) => {
|
|
142
|
+
if (!test) throw new Error("`AdapterError` expects json-api formatted errors array.");
|
|
143
|
+
})(Array.isArray(errors || []));
|
|
144
|
+
ParentErrorClass.call(this, errors, message || defaultMessage);
|
|
145
|
+
};
|
|
146
|
+
ErrorClass.prototype = Object.create(ParentErrorClass.prototype);
|
|
147
|
+
ErrorClass.extend = extendFn(ErrorClass);
|
|
148
|
+
return ErrorClass;
|
|
166
149
|
}
|
|
167
|
-
|
|
168
150
|
/**
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
// TODO @deprecate extractError documentation
|
|
172
|
-
|
|
151
|
+
* The {@link AdapterRequestError} shape thrown by the {@link InvalidError} constructor.
|
|
152
|
+
*/
|
|
173
153
|
/**
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
const InvalidError = getOrSetGlobal(
|
|
231
|
-
InvalidError.prototype.code =
|
|
232
|
-
|
|
154
|
+
* An `InvalidError` is used by an adapter to signal that the external API
|
|
155
|
+
* was unable to process a request because the content was not semantically
|
|
156
|
+
* correct or meaningful per the API. Usually, this means a record failed
|
|
157
|
+
* some form of server-side validation. When a promise from an adapter is
|
|
158
|
+
* rejected with an `InvalidError` the record will transition to the
|
|
159
|
+
* `invalid` state and the errors will be set to the `errors` property on
|
|
160
|
+
* the record.
|
|
161
|
+
*
|
|
162
|
+
* For WarpDrive to correctly map errors to their corresponding properties
|
|
163
|
+
* on the model, WarpDrive expects each error to be a valid {json:api} error
|
|
164
|
+
* object with a `source.pointer` that matches the property name. For
|
|
165
|
+
* example, if you had a `Post` model that looked like this:
|
|
166
|
+
*
|
|
167
|
+
* ```js [app/models/post.js]
|
|
168
|
+
* import { Model, attr } from '@warp-drive/legacy/model';
|
|
169
|
+
*
|
|
170
|
+
* export default class PostModel extends Model {
|
|
171
|
+
* @attr('string') title;
|
|
172
|
+
* @attr('string') content;
|
|
173
|
+
* }
|
|
174
|
+
* ```
|
|
175
|
+
*
|
|
176
|
+
* To show an error from the server related to the `title` and `content`
|
|
177
|
+
* properties your adapter could return a promise that rejects with an
|
|
178
|
+
* `InvalidError` that looks like this:
|
|
179
|
+
*
|
|
180
|
+
* ```js [app/adapters/post.js]
|
|
181
|
+
* import RSVP from 'RSVP';
|
|
182
|
+
* import RESTAdapter from '@warp-drive/legacy/adapter/rest';
|
|
183
|
+
* import { InvalidError } from '@warp-drive/legacy/adapter/error';
|
|
184
|
+
*
|
|
185
|
+
* export default class ApplicationAdapter extends RESTAdapter {
|
|
186
|
+
* updateRecord() {
|
|
187
|
+
* // Fictional adapter that always rejects
|
|
188
|
+
* return RSVP.reject(new InvalidError([
|
|
189
|
+
* {
|
|
190
|
+
* detail: 'Must be unique',
|
|
191
|
+
* source: { pointer: '/data/attributes/title' }
|
|
192
|
+
* },
|
|
193
|
+
* {
|
|
194
|
+
* detail: 'Must not be blank',
|
|
195
|
+
* source: { pointer: '/data/attributes/content' }
|
|
196
|
+
* }
|
|
197
|
+
* ]));
|
|
198
|
+
* }
|
|
199
|
+
* }
|
|
200
|
+
* ```
|
|
201
|
+
*
|
|
202
|
+
* Your backend may use different property names for your records; the
|
|
203
|
+
* store will attempt to extract and normalize the errors using the
|
|
204
|
+
* serializer's `extractErrors` method before the errors get added to the
|
|
205
|
+
* model. As a result, it is safe for the `InvalidError` to wrap the error
|
|
206
|
+
* payload unaltered.
|
|
207
|
+
*
|
|
208
|
+
* @public
|
|
209
|
+
*/
|
|
210
|
+
const InvalidError = getOrSetGlobal("InvalidError", extend(AdapterError, "The adapter rejected the commit because it was invalid"));
|
|
211
|
+
InvalidError.prototype.code = "InvalidError";
|
|
233
212
|
/**
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
213
|
+
* The {@link AdapterRequestError} shape thrown by the {@link TimeoutError} constructor.
|
|
214
|
+
*/
|
|
237
215
|
/**
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
const TimeoutError = getOrSetGlobal(
|
|
265
|
-
TimeoutError.prototype.code =
|
|
266
|
-
|
|
216
|
+
* A `TimeoutError` is used by an adapter to signal that a request to the
|
|
217
|
+
* external API has timed out, i.e. no response was received from the
|
|
218
|
+
* external API within an allowed time period.
|
|
219
|
+
*
|
|
220
|
+
* An example use case would be to warn the user to check their internet
|
|
221
|
+
* connection if an adapter operation has timed out:
|
|
222
|
+
*
|
|
223
|
+
* ```js [app/routes/application.js]
|
|
224
|
+
* import { TimeoutError } from '@warp-drive/legacy/adapter/error';
|
|
225
|
+
*
|
|
226
|
+
* export default class ApplicationRoute extends Route {
|
|
227
|
+
* @action
|
|
228
|
+
* error(error, transition) {
|
|
229
|
+
* if (error instanceof TimeoutError) {
|
|
230
|
+
* // alert the user
|
|
231
|
+
* alert('Are you still connected to the Internet?');
|
|
232
|
+
* return;
|
|
233
|
+
* }
|
|
234
|
+
*
|
|
235
|
+
* // ...other error handling logic
|
|
236
|
+
* }
|
|
237
|
+
* }
|
|
238
|
+
* ```
|
|
239
|
+
*
|
|
240
|
+
* @public
|
|
241
|
+
*/
|
|
242
|
+
const TimeoutError = getOrSetGlobal("TimeoutError", extend(AdapterError, "The adapter operation timed out"));
|
|
243
|
+
TimeoutError.prototype.code = "TimeoutError";
|
|
267
244
|
/**
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
245
|
+
* The {@link AdapterRequestError} shape thrown by the {@link AbortError} constructor.
|
|
246
|
+
*/
|
|
271
247
|
/**
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
const AbortError = getOrSetGlobal(
|
|
301
|
-
AbortError.prototype.code =
|
|
302
|
-
|
|
248
|
+
* An `AbortError` is used by an adapter to signal that a request to the
|
|
249
|
+
* external API was aborted. For example, this can occur if the user
|
|
250
|
+
* navigates away from the current page after a request to the external API
|
|
251
|
+
* has been initiated but before a response has been received.
|
|
252
|
+
*
|
|
253
|
+
* Because an aborted request is typically expected (the user chose to
|
|
254
|
+
* navigate away, or a newer request superseded this one) rather than
|
|
255
|
+
* exceptional, an example use case would be to silently ignore it instead
|
|
256
|
+
* of surfacing an error to the user:
|
|
257
|
+
*
|
|
258
|
+
* ```js [app/routes/application.js]
|
|
259
|
+
* import { AbortError } from '@warp-drive/legacy/adapter/error';
|
|
260
|
+
*
|
|
261
|
+
* export default class ApplicationRoute extends Route {
|
|
262
|
+
* @action
|
|
263
|
+
* error(error, transition) {
|
|
264
|
+
* if (error instanceof AbortError) {
|
|
265
|
+
* // the request was aborted, nothing to report
|
|
266
|
+
* return;
|
|
267
|
+
* }
|
|
268
|
+
*
|
|
269
|
+
* // ...other error handling logic
|
|
270
|
+
* }
|
|
271
|
+
* }
|
|
272
|
+
* ```
|
|
273
|
+
*
|
|
274
|
+
* @public
|
|
275
|
+
*/
|
|
276
|
+
const AbortError = getOrSetGlobal("AbortError", extend(AdapterError, "The adapter operation was aborted"));
|
|
277
|
+
AbortError.prototype.code = "AbortError";
|
|
303
278
|
/**
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
279
|
+
* The {@link AdapterRequestError} shape thrown by the {@link UnauthorizedError} constructor.
|
|
280
|
+
*/
|
|
307
281
|
/**
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
const UnauthorizedError = getOrSetGlobal(
|
|
336
|
-
UnauthorizedError.prototype.code =
|
|
337
|
-
|
|
282
|
+
* A `UnauthorizedError` equates to an HTTP `401 Unauthorized` response
|
|
283
|
+
* status. It is used by an adapter to signal that a request to the external
|
|
284
|
+
* API was rejected because authorization is required and has failed or has
|
|
285
|
+
* not yet been provided.
|
|
286
|
+
*
|
|
287
|
+
* An example use case would be to redirect the user to a login route if a
|
|
288
|
+
* request is unauthorized:
|
|
289
|
+
*
|
|
290
|
+
* ```js [app/routes/application.js]
|
|
291
|
+
* import { UnauthorizedError } from '@warp-drive/legacy/adapter/error';
|
|
292
|
+
*
|
|
293
|
+
* export default class ApplicationRoute extends Route {
|
|
294
|
+
* @action
|
|
295
|
+
* error(error, transition) {
|
|
296
|
+
* if (error instanceof UnauthorizedError) {
|
|
297
|
+
* // go to the login route
|
|
298
|
+
* this.transitionTo('login');
|
|
299
|
+
* return;
|
|
300
|
+
* }
|
|
301
|
+
*
|
|
302
|
+
* // ...other error handling logic
|
|
303
|
+
* }
|
|
304
|
+
* }
|
|
305
|
+
* ```
|
|
306
|
+
*
|
|
307
|
+
* @public
|
|
308
|
+
*/
|
|
309
|
+
const UnauthorizedError = getOrSetGlobal("UnauthorizedError", extend(AdapterError, "The adapter operation is unauthorized"));
|
|
310
|
+
UnauthorizedError.prototype.code = "UnauthorizedError";
|
|
338
311
|
/**
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
312
|
+
* The {@link AdapterRequestError} shape thrown by the {@link ForbiddenError} constructor.
|
|
313
|
+
*/
|
|
342
314
|
/**
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
const ForbiddenError = getOrSetGlobal(
|
|
373
|
-
ForbiddenError.prototype.code =
|
|
374
|
-
|
|
315
|
+
* A `ForbiddenError` equates to an HTTP `403 Forbidden` response status.
|
|
316
|
+
* It is used by an adapter to signal that a request to the external API was
|
|
317
|
+
* valid but the server is refusing to respond to it. If authorization was
|
|
318
|
+
* provided and is valid, then the authenticated user does not have the
|
|
319
|
+
* necessary permissions for the request.
|
|
320
|
+
*
|
|
321
|
+
* Unlike an {@link UnauthorizedError}, retrying the request with different
|
|
322
|
+
* credentials will not help; the currently authenticated user simply lacks
|
|
323
|
+
* permission. An example use case would be to show the user a "you don't
|
|
324
|
+
* have access to this" message rather than redirecting them to log in:
|
|
325
|
+
*
|
|
326
|
+
* ```js [app/routes/application.js]
|
|
327
|
+
* import { ForbiddenError } from '@warp-drive/legacy/adapter/error';
|
|
328
|
+
*
|
|
329
|
+
* export default class ApplicationRoute extends Route {
|
|
330
|
+
* @action
|
|
331
|
+
* error(error, transition) {
|
|
332
|
+
* if (error instanceof ForbiddenError) {
|
|
333
|
+
* this.transitionTo('forbidden');
|
|
334
|
+
* return;
|
|
335
|
+
* }
|
|
336
|
+
*
|
|
337
|
+
* // ...other error handling logic
|
|
338
|
+
* }
|
|
339
|
+
* }
|
|
340
|
+
* ```
|
|
341
|
+
*
|
|
342
|
+
* @public
|
|
343
|
+
*/
|
|
344
|
+
const ForbiddenError = getOrSetGlobal("ForbiddenError", extend(AdapterError, "The adapter operation is forbidden"));
|
|
345
|
+
ForbiddenError.prototype.code = "ForbiddenError";
|
|
375
346
|
/**
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
347
|
+
* The {@link AdapterRequestError} shape thrown by the {@link NotFoundError} constructor.
|
|
348
|
+
*/
|
|
379
349
|
/**
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
const NotFoundError = getOrSetGlobal(
|
|
411
|
-
NotFoundError.prototype.code =
|
|
412
|
-
|
|
350
|
+
* A `NotFoundError` equates to an HTTP `404 Not Found` response status.
|
|
351
|
+
* It is used by an adapter to signal that a request to the external API
|
|
352
|
+
* was rejected because the resource could not be found on the API.
|
|
353
|
+
*
|
|
354
|
+
* An example use case would be to detect if the user has entered a route
|
|
355
|
+
* for a specific model that does not exist. For example:
|
|
356
|
+
*
|
|
357
|
+
* ```js [app/routes/post.js]
|
|
358
|
+
* import { NotFoundError } from '@warp-drive/legacy/adapter/error';
|
|
359
|
+
*
|
|
360
|
+
* export default class PostRoute extends Route {
|
|
361
|
+
* @service store;
|
|
362
|
+
* model(params) {
|
|
363
|
+
* return this.store.findRecord('post', params.post_id);
|
|
364
|
+
* }
|
|
365
|
+
* @action
|
|
366
|
+
* error(error, transition) {
|
|
367
|
+
* if (error instanceof NotFoundError) {
|
|
368
|
+
* // redirect to a list of all posts instead
|
|
369
|
+
* this.transitionTo('posts');
|
|
370
|
+
* } else {
|
|
371
|
+
* // otherwise let the error bubble
|
|
372
|
+
* return true;
|
|
373
|
+
* }
|
|
374
|
+
* }
|
|
375
|
+
* }
|
|
376
|
+
* ```
|
|
377
|
+
*
|
|
378
|
+
* @public
|
|
379
|
+
*/
|
|
380
|
+
const NotFoundError = getOrSetGlobal("NotFoundError", extend(AdapterError, "The adapter could not find the resource"));
|
|
381
|
+
NotFoundError.prototype.code = "NotFoundError";
|
|
413
382
|
/**
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
383
|
+
* The {@link AdapterRequestError} shape thrown by the {@link ConflictError} constructor.
|
|
384
|
+
*/
|
|
417
385
|
/**
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
const ConflictError = getOrSetGlobal(
|
|
446
|
-
ConflictError.prototype.code =
|
|
447
|
-
|
|
386
|
+
* A `ConflictError` equates to an HTTP `409 Conflict` response status.
|
|
387
|
+
* It is used by an adapter to indicate that the request could not be
|
|
388
|
+
* processed because of a conflict in the request. An example scenario
|
|
389
|
+
* would be when creating a record with a client-generated ID but that ID
|
|
390
|
+
* is already known to the external API.
|
|
391
|
+
*
|
|
392
|
+
* An example use case would be to surface a conflict-specific message so
|
|
393
|
+
* the user can retry with different input:
|
|
394
|
+
*
|
|
395
|
+
* ```js [app/routes/application.js]
|
|
396
|
+
* import { ConflictError } from '@warp-drive/legacy/adapter/error';
|
|
397
|
+
*
|
|
398
|
+
* export default class ApplicationRoute extends Route {
|
|
399
|
+
* @action
|
|
400
|
+
* error(error, transition) {
|
|
401
|
+
* if (error instanceof ConflictError) {
|
|
402
|
+
* alert('That identifier is already in use, please choose another.');
|
|
403
|
+
* return;
|
|
404
|
+
* }
|
|
405
|
+
*
|
|
406
|
+
* // ...other error handling logic
|
|
407
|
+
* }
|
|
408
|
+
* }
|
|
409
|
+
* ```
|
|
410
|
+
*
|
|
411
|
+
* @public
|
|
412
|
+
*/
|
|
413
|
+
const ConflictError = getOrSetGlobal("ConflictError", extend(AdapterError, "The adapter operation failed due to a conflict"));
|
|
414
|
+
ConflictError.prototype.code = "ConflictError";
|
|
448
415
|
/**
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
416
|
+
* The {@link AdapterRequestError} shape thrown by the {@link ServerError} constructor.
|
|
417
|
+
*/
|
|
452
418
|
/**
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
const ServerError = getOrSetGlobal(
|
|
480
|
-
ServerError.prototype.code =
|
|
481
|
-
|
|
419
|
+
* A `ServerError` equates to an HTTP `500 Internal Server Error` response
|
|
420
|
+
* status. It is used by the adapter to indicate that a request has failed
|
|
421
|
+
* because of an error in the external API, and is unlikely to succeed if
|
|
422
|
+
* retried immediately.
|
|
423
|
+
*
|
|
424
|
+
* An example use case would be to show a generic "something went wrong on
|
|
425
|
+
* our end" message rather than one implying the user made a mistake:
|
|
426
|
+
*
|
|
427
|
+
* ```js [app/routes/application.js]
|
|
428
|
+
* import { ServerError } from '@warp-drive/legacy/adapter/error';
|
|
429
|
+
*
|
|
430
|
+
* export default class ApplicationRoute extends Route {
|
|
431
|
+
* @action
|
|
432
|
+
* error(error, transition) {
|
|
433
|
+
* if (error instanceof ServerError) {
|
|
434
|
+
* alert('Something went wrong on our end. Please try again later.');
|
|
435
|
+
* return;
|
|
436
|
+
* }
|
|
437
|
+
*
|
|
438
|
+
* // ...other error handling logic
|
|
439
|
+
* }
|
|
440
|
+
* }
|
|
441
|
+
* ```
|
|
442
|
+
*
|
|
443
|
+
* @public
|
|
444
|
+
*/
|
|
445
|
+
const ServerError = getOrSetGlobal("ServerError", extend(AdapterError, "The adapter operation failed due to a server error"));
|
|
446
|
+
ServerError.prototype.code = "ServerError";
|
|
447
|
+
|
|
448
|
+
//#endregion
|
|
449
|
+
export { AbortError, AdapterError, ConflictError, ForbiddenError, InvalidError, NotFoundError, ServerError, TimeoutError, UnauthorizedError };
|
|
450
|
+
//# sourceMappingURL=error.js.map
|