@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
|
@@ -1,326 +1,301 @@
|
|
|
1
|
-
import EmberObject from
|
|
1
|
+
import EmberObject from "@ember/object";
|
|
2
2
|
|
|
3
|
+
//#region src/serializer/-private/transforms/transform.ts
|
|
3
4
|
/**
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
Example
|
|
11
|
-
|
|
12
|
-
```js [app/transforms/temperature.js]
|
|
13
|
-
|
|
14
|
-
// Converts centigrade in the JSON to fahrenheit in the app
|
|
15
|
-
export default class TemperatureTransform {
|
|
16
|
-
deserialize(serialized, options) {
|
|
17
|
-
return (serialized * 1.8) + 32;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
serialize(deserialized, options) {
|
|
21
|
-
return (deserialized - 32) / 1.8;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
static create() {
|
|
25
|
-
return new this();
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
Usage
|
|
31
|
-
|
|
32
|
-
```js [app/models/requirement.js]
|
|
33
|
-
import { Model, attr } from '@warp-drive/legacy/model';
|
|
34
|
-
|
|
35
|
-
export default class RequirementModel extends Model {
|
|
36
|
-
@attr('string') name;
|
|
37
|
-
@attr('temperature') temperature;
|
|
38
|
-
}
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
The options passed into the `attr` function when the attribute is
|
|
42
|
-
declared on the model is also available in the transform.
|
|
43
|
-
|
|
44
|
-
```js [app/models/post.js]
|
|
45
|
-
import { Model, attr } from '@warp-drive/legacy/model';
|
|
46
|
-
|
|
47
|
-
export default class PostModel extends Model {
|
|
48
|
-
@attr('string') title;
|
|
49
|
-
@attr('markdown', {
|
|
50
|
-
markdown: {
|
|
51
|
-
gfm: false,
|
|
52
|
-
sanitize: true
|
|
53
|
-
}
|
|
54
|
-
})
|
|
55
|
-
markdown;
|
|
56
|
-
}
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
```js [app/transforms/markdown.js]
|
|
60
|
-
export default class MarkdownTransform {
|
|
61
|
-
serialize(deserialized, options) {
|
|
62
|
-
return deserialized.raw;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
deserialize(serialized, options) {
|
|
66
|
-
let markdownOptions = options.markdown || {};
|
|
67
|
-
|
|
68
|
-
return marked(serialized, markdownOptions);
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
static create() {
|
|
72
|
-
return new this();
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
@class Transform
|
|
78
|
-
@public
|
|
79
|
-
*/
|
|
80
|
-
const Transform = EmberObject;
|
|
5
|
+
The `Transform` class is used to serialize and deserialize model
|
|
6
|
+
attributes when they are saved or loaded from an
|
|
7
|
+
adapter. Subclassing `Transform` is useful for creating custom
|
|
8
|
+
attributes. All subclasses of `Transform` must implement a
|
|
9
|
+
`serialize` and a `deserialize` method.
|
|
81
10
|
|
|
82
|
-
|
|
11
|
+
Example
|
|
83
12
|
|
|
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
|
-
return serialized;
|
|
129
|
-
} else if (typeof serialized === 'string') {
|
|
130
|
-
return /^(true|t|1)$/i.test(serialized);
|
|
131
|
-
} else if (typeof serialized === 'number') {
|
|
132
|
-
return serialized === 1;
|
|
133
|
-
} else {
|
|
134
|
-
return false;
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
/**
|
|
139
|
-
* Converts a `boolean` attribute value into its serialized (raw payload) form.
|
|
140
|
-
*/
|
|
141
|
-
serialize(deserialized, options) {
|
|
142
|
-
if ((deserialized === null || deserialized === undefined) && options?.allowNull === true) {
|
|
143
|
-
return null;
|
|
144
|
-
}
|
|
145
|
-
return Boolean(deserialized);
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
/**
|
|
149
|
-
* Creates a new instance of this transform.
|
|
150
|
-
*/
|
|
151
|
-
static create() {
|
|
152
|
-
return new this();
|
|
153
|
-
}
|
|
13
|
+
```js [app/transforms/temperature.js]
|
|
14
|
+
|
|
15
|
+
// Converts centigrade in the JSON to fahrenheit in the app
|
|
16
|
+
export default class TemperatureTransform {
|
|
17
|
+
deserialize(serialized, options) {
|
|
18
|
+
return (serialized * 1.8) + 32;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
serialize(deserialized, options) {
|
|
22
|
+
return (deserialized - 32) / 1.8;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
static create() {
|
|
26
|
+
return new this();
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Usage
|
|
32
|
+
|
|
33
|
+
```js [app/models/requirement.js]
|
|
34
|
+
import { Model, attr } from '@warp-drive/legacy/model';
|
|
35
|
+
|
|
36
|
+
export default class RequirementModel extends Model {
|
|
37
|
+
@attr('string') name;
|
|
38
|
+
@attr('temperature') temperature;
|
|
39
|
+
}
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
The options passed into the `attr` function when the attribute is
|
|
43
|
+
declared on the model is also available in the transform.
|
|
44
|
+
|
|
45
|
+
```js [app/models/post.js]
|
|
46
|
+
import { Model, attr } from '@warp-drive/legacy/model';
|
|
47
|
+
|
|
48
|
+
export default class PostModel extends Model {
|
|
49
|
+
@attr('string') title;
|
|
50
|
+
@attr('markdown', {
|
|
51
|
+
markdown: {
|
|
52
|
+
gfm: false,
|
|
53
|
+
sanitize: true
|
|
54
|
+
}
|
|
55
|
+
})
|
|
56
|
+
markdown;
|
|
154
57
|
}
|
|
58
|
+
```
|
|
155
59
|
|
|
156
|
-
|
|
60
|
+
```js [app/transforms/markdown.js]
|
|
61
|
+
export default class MarkdownTransform {
|
|
62
|
+
serialize(deserialized, options) {
|
|
63
|
+
return deserialized.raw;
|
|
64
|
+
}
|
|
157
65
|
|
|
66
|
+
deserialize(serialized, options) {
|
|
67
|
+
let markdownOptions = options.markdown || {};
|
|
68
|
+
|
|
69
|
+
return marked(serialized, markdownOptions);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
static create() {
|
|
73
|
+
return new this();
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
@class Transform
|
|
79
|
+
@public
|
|
80
|
+
*/
|
|
81
|
+
const Transform = EmberObject;
|
|
82
|
+
|
|
83
|
+
//#endregion
|
|
84
|
+
//#region src/serializer/-private/transforms/boolean.ts
|
|
158
85
|
/**
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
when `'
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
@public
|
|
176
|
-
*/
|
|
177
|
-
|
|
178
|
-
class DateTransform {
|
|
179
|
-
/**
|
|
180
|
-
* Converts a serialized (raw payload) `ISO 8601` string, epoch number,
|
|
181
|
-
* or nullish value into a `Date` (or `null`/`undefined`).
|
|
182
|
-
*/
|
|
183
|
-
deserialize(serialized, _options) {
|
|
184
|
-
if (typeof serialized === 'string') {
|
|
185
|
-
let offset = serialized.indexOf('+');
|
|
186
|
-
if (offset !== -1 && serialized.length - 5 === offset) {
|
|
187
|
-
offset += 3;
|
|
188
|
-
return new Date(serialized.slice(0, offset) + ':' + serialized.slice(offset));
|
|
189
|
-
}
|
|
190
|
-
return new Date(serialized);
|
|
191
|
-
} else if (typeof serialized === 'number') {
|
|
192
|
-
return new Date(serialized);
|
|
193
|
-
} else if (serialized === null || serialized === undefined) {
|
|
194
|
-
// if the value is null return null
|
|
195
|
-
// if the value is not present in the data return undefined
|
|
196
|
-
return serialized;
|
|
197
|
-
} else {
|
|
198
|
-
return null;
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
/**
|
|
203
|
-
* Converts a `Date` attribute value into an `ISO 8601` string, or `null`
|
|
204
|
-
* if the value is not a valid `Date`.
|
|
205
|
-
*/
|
|
206
|
-
serialize(date, _options) {
|
|
207
|
-
// @ts-expect-error isNaN accepts date as it is coercible
|
|
208
|
-
if (date instanceof Date && !isNaN(date)) {
|
|
209
|
-
return date.toISOString();
|
|
210
|
-
} else {
|
|
211
|
-
return null;
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
/**
|
|
216
|
-
* Creates a new instance of this transform.
|
|
217
|
-
*/
|
|
218
|
-
static create() {
|
|
219
|
-
return new this();
|
|
220
|
-
}
|
|
86
|
+
The `BooleanTransform` class is used to serialize and deserialize
|
|
87
|
+
boolean attributes on Ember Data record objects. This transform is
|
|
88
|
+
used when `'boolean'` is passed as the type parameter to the
|
|
89
|
+
{@link attr}function.
|
|
90
|
+
|
|
91
|
+
Usage
|
|
92
|
+
|
|
93
|
+
```js [app/models/user.js]
|
|
94
|
+
import { Model, attr } from '@warp-drive/legacy/model';
|
|
95
|
+
|
|
96
|
+
export default class UserModel extends Model {
|
|
97
|
+
@attr('boolean') isAdmin;
|
|
98
|
+
@attr('string') name;
|
|
99
|
+
@attr('string') email;
|
|
221
100
|
}
|
|
101
|
+
```
|
|
222
102
|
|
|
223
|
-
|
|
103
|
+
By default, the boolean transform only allows for values of `true` or
|
|
104
|
+
`false`. You can opt into allowing `null` values for
|
|
105
|
+
boolean attributes via `attr('boolean', { allowNull: true })`
|
|
224
106
|
|
|
225
|
-
|
|
226
|
-
|
|
107
|
+
```js [app/models/user.js]
|
|
108
|
+
import { Model, attr } from '@warp-drive/legacy/model';
|
|
109
|
+
|
|
110
|
+
export default class UserModel extends Model {
|
|
111
|
+
@attr('string') email;
|
|
112
|
+
@attr('string') username;
|
|
113
|
+
@attr('boolean', { allowNull: true }) wantsWeeklyEmail;
|
|
227
114
|
}
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
@public
|
|
118
|
+
*/
|
|
119
|
+
var BooleanTransform = class {
|
|
120
|
+
/**
|
|
121
|
+
* Converts a serialized (raw payload) value into a `boolean` (or `null`
|
|
122
|
+
* when `allowNull` is set and the value is nullish).
|
|
123
|
+
*/
|
|
124
|
+
deserialize(serialized, options) {
|
|
125
|
+
if ((serialized === null || serialized === void 0) && options?.allowNull === true) return null;
|
|
126
|
+
if (typeof serialized === "boolean") return serialized;
|
|
127
|
+
else if (typeof serialized === "string") return /^(true|t|1)$/i.test(serialized);
|
|
128
|
+
else if (typeof serialized === "number") return serialized === 1;
|
|
129
|
+
else return false;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Converts a `boolean` attribute value into its serialized (raw payload) form.
|
|
133
|
+
*/
|
|
134
|
+
serialize(deserialized, options) {
|
|
135
|
+
if ((deserialized === null || deserialized === void 0) && options?.allowNull === true) return null;
|
|
136
|
+
return Boolean(deserialized);
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Creates a new instance of this transform.
|
|
140
|
+
*/
|
|
141
|
+
static create() {
|
|
142
|
+
return new this();
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
|
|
146
|
+
//#endregion
|
|
147
|
+
//#region src/serializer/-private/transforms/date.ts
|
|
228
148
|
/**
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
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
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
149
|
+
The `DateTransform` class is used to serialize and deserialize
|
|
150
|
+
date attributes on Ember Data record objects. This transform is used
|
|
151
|
+
when `'date'` is passed as the type parameter to the
|
|
152
|
+
{@link attr} function. It uses the [`ISO 8601`](https://en.wikipedia.org/wiki/ISO_8601)
|
|
153
|
+
standard.
|
|
154
|
+
|
|
155
|
+
```js [app/models/score.js]
|
|
156
|
+
import Model, { attr, belongsTo } from '@warp-drive/legacy/model';
|
|
157
|
+
|
|
158
|
+
export default class ScoreModel extends Model {
|
|
159
|
+
@attr('number') value;
|
|
160
|
+
@belongsTo('player') player;
|
|
161
|
+
@attr('date') date;
|
|
162
|
+
}
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
@public
|
|
166
|
+
*/
|
|
167
|
+
var DateTransform = class {
|
|
168
|
+
/**
|
|
169
|
+
* Converts a serialized (raw payload) `ISO 8601` string, epoch number,
|
|
170
|
+
* or nullish value into a `Date` (or `null`/`undefined`).
|
|
171
|
+
*/
|
|
172
|
+
deserialize(serialized, _options) {
|
|
173
|
+
if (typeof serialized === "string") {
|
|
174
|
+
let offset = serialized.indexOf("+");
|
|
175
|
+
if (offset !== -1 && serialized.length - 5 === offset) {
|
|
176
|
+
offset += 3;
|
|
177
|
+
return /* @__PURE__ */ new Date(serialized.slice(0, offset) + ":" + serialized.slice(offset));
|
|
178
|
+
}
|
|
179
|
+
return new Date(serialized);
|
|
180
|
+
} else if (typeof serialized === "number") return new Date(serialized);
|
|
181
|
+
else if (serialized === null || serialized === void 0) return serialized;
|
|
182
|
+
else return null;
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Converts a `Date` attribute value into an `ISO 8601` string, or `null`
|
|
186
|
+
* if the value is not a valid `Date`.
|
|
187
|
+
*/
|
|
188
|
+
serialize(date, _options) {
|
|
189
|
+
if (date instanceof Date && !isNaN(date)) return date.toISOString();
|
|
190
|
+
else return null;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Creates a new instance of this transform.
|
|
194
|
+
*/
|
|
195
|
+
static create() {
|
|
196
|
+
return new this();
|
|
197
|
+
}
|
|
198
|
+
};
|
|
199
|
+
|
|
200
|
+
//#endregion
|
|
201
|
+
//#region src/serializer/-private/transforms/number.ts
|
|
202
|
+
function isNumber(value) {
|
|
203
|
+
return value === value && value !== Infinity && value !== -Infinity;
|
|
280
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
The `NumberTransform` class is used to serialize and deserialize
|
|
207
|
+
numeric attributes on Ember Data record objects. This transform is
|
|
208
|
+
used when `number` is passed as the type parameter to the
|
|
209
|
+
{@link attr} function.
|
|
210
|
+
|
|
211
|
+
Usage
|
|
281
212
|
|
|
282
|
-
|
|
213
|
+
```js [app/models/score.js]
|
|
214
|
+
import Model, { attr, belongsTo } from '@warp-drive/legacy/model';
|
|
283
215
|
|
|
216
|
+
export default class ScoreModel extends Model {
|
|
217
|
+
@attr('number') value;
|
|
218
|
+
@belongsTo('player') player;
|
|
219
|
+
@attr('date') date;
|
|
220
|
+
}
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
@public
|
|
224
|
+
*/
|
|
225
|
+
var NumberTransform = class {
|
|
226
|
+
/**
|
|
227
|
+
* Converts a serialized (raw payload) value into a `number`, or `null`
|
|
228
|
+
* if the value is empty, nullish, or not a valid number.
|
|
229
|
+
*/
|
|
230
|
+
deserialize(serialized, _options) {
|
|
231
|
+
if (serialized === "" || serialized === null || serialized === void 0) return null;
|
|
232
|
+
else {
|
|
233
|
+
const transformed = Number(serialized);
|
|
234
|
+
return isNumber(transformed) ? transformed : null;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Converts a `number` attribute value into its serialized (raw payload) form.
|
|
239
|
+
*/
|
|
240
|
+
serialize(deserialized, _options) {
|
|
241
|
+
if (deserialized === "" || deserialized === null || deserialized === void 0) return null;
|
|
242
|
+
else {
|
|
243
|
+
const transformed = Number(deserialized);
|
|
244
|
+
return isNumber(transformed) ? transformed : null;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Creates a new instance of this transform.
|
|
249
|
+
*/
|
|
250
|
+
static create() {
|
|
251
|
+
return new this();
|
|
252
|
+
}
|
|
253
|
+
};
|
|
254
|
+
|
|
255
|
+
//#endregion
|
|
256
|
+
//#region src/serializer/-private/transforms/string.ts
|
|
284
257
|
/**
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
}
|
|
300
|
-
```
|
|
301
|
-
|
|
302
|
-
@public
|
|
303
|
-
*/
|
|
304
|
-
class StringTransform {
|
|
305
|
-
/**
|
|
306
|
-
* Converts a serialized (raw payload) value into a `string`, or `null`
|
|
307
|
-
* if the value is falsy (and not an empty string).
|
|
308
|
-
*/
|
|
309
|
-
deserialize(serialized, _options) {
|
|
310
|
-
return !serialized && serialized !== '' ? null : String(serialized);
|
|
311
|
-
}
|
|
312
|
-
/**
|
|
313
|
-
* Converts a `string` attribute value into its serialized (raw payload) form.
|
|
314
|
-
*/
|
|
315
|
-
serialize(deserialized, _options) {
|
|
316
|
-
return !deserialized && deserialized !== '' ? null : String(deserialized);
|
|
317
|
-
}
|
|
318
|
-
|
|
319
|
-
/**
|
|
320
|
-
* Creates a new instance of this transform.
|
|
321
|
-
*/
|
|
322
|
-
static create() {
|
|
323
|
-
return new this();
|
|
324
|
-
}
|
|
258
|
+
The `StringTransform` class is used to serialize and deserialize
|
|
259
|
+
string attributes on Ember Data record objects. This transform is
|
|
260
|
+
used when `string` is passed as the type parameter to the
|
|
261
|
+
{@link attr} function.
|
|
262
|
+
|
|
263
|
+
Usage
|
|
264
|
+
|
|
265
|
+
```js [app/models/user.js]
|
|
266
|
+
import Model, { attr, belongsTo } from '@warp-drive/legacy/model';
|
|
267
|
+
|
|
268
|
+
export default class UserModel extends Model {
|
|
269
|
+
@attr('boolean') isAdmin;
|
|
270
|
+
@attr('string') name;
|
|
271
|
+
@attr('string') email;
|
|
325
272
|
}
|
|
326
|
-
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
@public
|
|
276
|
+
*/
|
|
277
|
+
var StringTransform = class {
|
|
278
|
+
/**
|
|
279
|
+
* Converts a serialized (raw payload) value into a `string`, or `null`
|
|
280
|
+
* if the value is falsy (and not an empty string).
|
|
281
|
+
*/
|
|
282
|
+
deserialize(serialized, _options) {
|
|
283
|
+
return !serialized && serialized !== "" ? null : String(serialized);
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Converts a `string` attribute value into its serialized (raw payload) form.
|
|
287
|
+
*/
|
|
288
|
+
serialize(deserialized, _options) {
|
|
289
|
+
return !deserialized && deserialized !== "" ? null : String(deserialized);
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* Creates a new instance of this transform.
|
|
293
|
+
*/
|
|
294
|
+
static create() {
|
|
295
|
+
return new this();
|
|
296
|
+
}
|
|
297
|
+
};
|
|
298
|
+
|
|
299
|
+
//#endregion
|
|
300
|
+
export { BooleanTransform, DateTransform, NumberTransform, StringTransform, Transform };
|
|
301
|
+
//# sourceMappingURL=transform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.js","names":["EmberObject","Transform","BooleanTransform","deserialize","serialized","options","undefined","allowNull","test","serialize","deserialized","Boolean","create","DateTransform","deserialize","serialized","_options","offset","indexOf","length","Date","slice","undefined","serialize","date","isNaN","toISOString","create","isNumber","value","Infinity","NumberTransform","deserialize","serialized","_options","undefined","transformed","Number","serialize","deserialized","create","StringTransform","deserialize","serialized","_options","String","serialize","deserialized","create"],"sources":["../../src/serializer/-private/transforms/transform.ts","../../src/serializer/-private/transforms/boolean.ts","../../src/serializer/-private/transforms/date.ts","../../src/serializer/-private/transforms/number.ts","../../src/serializer/-private/transforms/string.ts"],"sourcesContent":["import EmberObject from '@ember/object';\n\nimport type { LegacyAttributeField } from '@warp-drive/core/types/schema/fields';\n\nexport interface Transform {\n /**\n When given a deserialized value from a record attribute this\n method must return the serialized value.\n\n Example\n\n ```javascript\n serialize(deserialized, options) {\n return deserialized ? null : Number(deserialized);\n }\n ```\n\n @public\n @param deserialized The deserialized value\n @param options hash of options passed to `attr`\n @return The serialized value\n */\n serialize(value: unknown, options: LegacyAttributeField['options']): unknown;\n\n /**\n When given a serialized value from a JSON object this method must\n return the deserialized value for the record attribute.\n\n Example\n\n ```javascript\n deserialize(serialized, options) {\n return empty(serialized) ? null : Number(serialized);\n }\n ```\n\n @public\n @param serialized The serialized value\n @param options hash of options passed to `attr`\n @return The deserialized value\n */\n deserialize(value: unknown, options: LegacyAttributeField['options']): unknown;\n}\n\n/**\n The `Transform` class is used to serialize and deserialize model\n attributes when they are saved or loaded from an\n adapter. Subclassing `Transform` is useful for creating custom\n attributes. All subclasses of `Transform` must implement a\n `serialize` and a `deserialize` method.\n\n Example\n\n ```js [app/transforms/temperature.js]\n\n // Converts centigrade in the JSON to fahrenheit in the app\n export default class TemperatureTransform {\n deserialize(serialized, options) {\n return (serialized * 1.8) + 32;\n }\n\n serialize(deserialized, options) {\n return (deserialized - 32) / 1.8;\n }\n\n static create() {\n return new this();\n }\n }\n ```\n\n Usage\n\n ```js [app/models/requirement.js]\n import { Model, attr } from '@warp-drive/legacy/model';\n\n export default class RequirementModel extends Model {\n @attr('string') name;\n @attr('temperature') temperature;\n }\n ```\n\n The options passed into the `attr` function when the attribute is\n declared on the model is also available in the transform.\n\n ```js [app/models/post.js]\n import { Model, attr } from '@warp-drive/legacy/model';\n\n export default class PostModel extends Model {\n @attr('string') title;\n @attr('markdown', {\n markdown: {\n gfm: false,\n sanitize: true\n }\n })\n markdown;\n }\n ```\n\n ```js [app/transforms/markdown.js]\n export default class MarkdownTransform {\n serialize(deserialized, options) {\n return deserialized.raw;\n }\n\n deserialize(serialized, options) {\n let markdownOptions = options.markdown || {};\n\n return marked(serialized, markdownOptions);\n }\n\n static create() {\n return new this();\n }\n }\n ```\n\n @class Transform\n @public\n */\nexport const Transform: typeof EmberObject = EmberObject;\n","import type { TransformName } from '@warp-drive/core/types/symbols';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { attr } from '../../../model';\n\nexport interface BooleanTransform {\n /**\n * see {@link TransformName}\n */\n [TransformName]: 'boolean';\n}\n\n/**\n The `BooleanTransform` class is used to serialize and deserialize\n boolean attributes on Ember Data record objects. This transform is\n used when `'boolean'` is passed as the type parameter to the\n {@link attr}function.\n\n Usage\n\n ```js [app/models/user.js]\n import { Model, attr } from '@warp-drive/legacy/model';\n\n export default class UserModel extends Model {\n @attr('boolean') isAdmin;\n @attr('string') name;\n @attr('string') email;\n }\n ```\n\n By default, the boolean transform only allows for values of `true` or\n `false`. You can opt into allowing `null` values for\n boolean attributes via `attr('boolean', { allowNull: true })`\n\n ```js [app/models/user.js]\n import { Model, attr } from '@warp-drive/legacy/model';\n\n export default class UserModel extends Model {\n @attr('string') email;\n @attr('string') username;\n @attr('boolean', { allowNull: true }) wantsWeeklyEmail;\n }\n ```\n\n @public\n */\nexport class BooleanTransform {\n /**\n * Converts a serialized (raw payload) value into a `boolean` (or `null`\n * when `allowNull` is set and the value is nullish).\n */\n deserialize(serialized: boolean | null | number | string, options?: { allowNull?: boolean }): boolean | null {\n if ((serialized === null || serialized === undefined) && options?.allowNull === true) {\n return null;\n }\n\n if (typeof serialized === 'boolean') {\n return serialized;\n } else if (typeof serialized === 'string') {\n return /^(true|t|1)$/i.test(serialized);\n } else if (typeof serialized === 'number') {\n return serialized === 1;\n } else {\n return false;\n }\n }\n\n /**\n * Converts a `boolean` attribute value into its serialized (raw payload) form.\n */\n serialize(deserialized: boolean | null, options?: { allowNull?: boolean }): boolean | null {\n if ((deserialized === null || deserialized === undefined) && options?.allowNull === true) {\n return null;\n }\n\n return Boolean(deserialized);\n }\n\n /**\n * Creates a new instance of this transform.\n */\n static create(): BooleanTransform {\n return new this();\n }\n}\n","import type { TransformName } from '@warp-drive/core/types/symbols';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { attr } from '../../../model';\n\nexport interface DateTransform {\n /**\n * see {@link TransformName}\n */\n [TransformName]: 'date';\n}\n/**\n The `DateTransform` class is used to serialize and deserialize\n date attributes on Ember Data record objects. This transform is used\n when `'date'` is passed as the type parameter to the\n {@link attr} function. It uses the [`ISO 8601`](https://en.wikipedia.org/wiki/ISO_8601)\n standard.\n\n ```js [app/models/score.js]\n import Model, { attr, belongsTo } from '@warp-drive/legacy/model';\n\n export default class ScoreModel extends Model {\n @attr('number') value;\n @belongsTo('player') player;\n @attr('date') date;\n }\n ```\n\n @public\n */\n\nexport class DateTransform {\n /**\n * Converts a serialized (raw payload) `ISO 8601` string, epoch number,\n * or nullish value into a `Date` (or `null`/`undefined`).\n */\n deserialize(serialized: string | number | null, _options?: Record<string, unknown>): Date | null {\n if (typeof serialized === 'string') {\n let offset = serialized.indexOf('+');\n\n if (offset !== -1 && serialized.length - 5 === offset) {\n offset += 3;\n return new Date(serialized.slice(0, offset) + ':' + serialized.slice(offset));\n }\n return new Date(serialized);\n } else if (typeof serialized === 'number') {\n return new Date(serialized);\n } else if (serialized === null || serialized === undefined) {\n // if the value is null return null\n // if the value is not present in the data return undefined\n return serialized;\n } else {\n return null;\n }\n }\n\n /**\n * Converts a `Date` attribute value into an `ISO 8601` string, or `null`\n * if the value is not a valid `Date`.\n */\n serialize(date: Date, _options?: Record<string, unknown>): string | null {\n // @ts-expect-error isNaN accepts date as it is coercible\n if (date instanceof Date && !isNaN(date)) {\n return date.toISOString();\n } else {\n return null;\n }\n }\n\n /**\n * Creates a new instance of this transform.\n */\n static create(): DateTransform {\n return new this();\n }\n}\n","import type { TransformName } from '@warp-drive/core/types/symbols';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { attr } from '../../../model';\n\nfunction isNumber(value: number) {\n return value === value && value !== Infinity && value !== -Infinity;\n}\n\nexport interface NumberTransform {\n /**\n * see {@link TransformName}\n */\n [TransformName]: 'number';\n}\n\n/**\n The `NumberTransform` class is used to serialize and deserialize\n numeric attributes on Ember Data record objects. This transform is\n used when `number` is passed as the type parameter to the\n {@link attr} function.\n\n Usage\n\n ```js [app/models/score.js]\n import Model, { attr, belongsTo } from '@warp-drive/legacy/model';\n\n export default class ScoreModel extends Model {\n @attr('number') value;\n @belongsTo('player') player;\n @attr('date') date;\n }\n ```\n\n @public\n */\nexport class NumberTransform {\n /**\n * Converts a serialized (raw payload) value into a `number`, or `null`\n * if the value is empty, nullish, or not a valid number.\n */\n deserialize(serialized: string | number | null | undefined, _options?: Record<string, unknown>): number | null {\n if (serialized === '' || serialized === null || serialized === undefined) {\n return null;\n } else {\n const transformed = Number(serialized);\n\n return isNumber(transformed) ? transformed : null;\n }\n }\n\n /**\n * Converts a `number` attribute value into its serialized (raw payload) form.\n */\n serialize(deserialized: string | number | null | undefined, _options?: Record<string, unknown>): number | null {\n if (deserialized === '' || deserialized === null || deserialized === undefined) {\n return null;\n } else {\n const transformed = Number(deserialized);\n\n return isNumber(transformed) ? transformed : null;\n }\n }\n\n /**\n * Creates a new instance of this transform.\n */\n static create(): NumberTransform {\n return new this();\n }\n}\n","import type { TransformName } from '@warp-drive/core/types/symbols';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { attr } from '../../../model';\n\nexport interface StringTransform {\n /**\n * see {@link TransformName}\n */\n [TransformName]: 'string';\n}\n/**\n The `StringTransform` class is used to serialize and deserialize\n string attributes on Ember Data record objects. This transform is\n used when `string` is passed as the type parameter to the\n {@link attr} function.\n\n Usage\n\n ```js [app/models/user.js]\n import Model, { attr, belongsTo } from '@warp-drive/legacy/model';\n\n export default class UserModel extends Model {\n @attr('boolean') isAdmin;\n @attr('string') name;\n @attr('string') email;\n }\n ```\n\n @public\n */\nexport class StringTransform {\n /**\n * Converts a serialized (raw payload) value into a `string`, or `null`\n * if the value is falsy (and not an empty string).\n */\n deserialize(serialized: unknown, _options?: Record<string, unknown>): string | null {\n return !serialized && serialized !== '' ? null : String(serialized);\n }\n /**\n * Converts a `string` attribute value into its serialized (raw payload) form.\n */\n serialize(deserialized: unknown, _options?: Record<string, unknown>): string | null {\n return !deserialized && deserialized !== '' ? null : String(deserialized);\n }\n\n /**\n * Creates a new instance of this transform.\n */\n static create(): StringTransform {\n return new this();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyHA,MAAaC,YAAgCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC3E7C,IAAaE,mBAAb,MAA8B;;;;;CAK5BC,YAAYC,YAA8CC,SAAmD;EAC3G,KAAKD,eAAe,QAAQA,eAAeE,WAAcD,SAASE,cAAc,MAC9E,OAAO;EAGT,IAAI,OAAOH,eAAe,WACxB,OAAOA;OACF,IAAI,OAAOA,eAAe,UAC/B,OAAO,gBAAgBI,KAAKJ,UAAU;OACjC,IAAI,OAAOA,eAAe,UAC/B,OAAOA,eAAe;OAEtB,OAAO;CAEX;;;;CAKAK,UAAUC,cAA8BL,SAAmD;EACzF,KAAKK,iBAAiB,QAAQA,iBAAiBJ,WAAcD,SAASE,cAAc,MAClF,OAAO;EAGT,OAAOI,QAAQD,YAAY;CAC7B;;;;CAKA,OAAOE,SAA2B;EAChC,OAAO,IAAI,KAAK;CAClB;AACF;;;;;;;;;;;;;;;;;;;;;;;ACrDA,IAAaC,gBAAb,MAA2B;;;;;CAKzBC,YAAYC,YAAoCC,UAAiD;EAC/F,IAAI,OAAOD,eAAe,UAAU;GAClC,IAAIE,SAASF,WAAWG,QAAQ,GAAG;GAEnC,IAAID,WAAW,MAAMF,WAAWI,SAAS,MAAMF,QAAQ;IACrDA,UAAU;IACV,uBAAO,IAAIG,KAAKL,WAAWM,MAAM,GAAGJ,MAAM,IAAI,MAAMF,WAAWM,MAAMJ,MAAM,CAAC;GAC9E;GACA,OAAO,IAAIG,KAAKL,UAAU;EAC5B,OAAO,IAAI,OAAOA,eAAe,UAC/B,OAAO,IAAIK,KAAKL,UAAU;OACrB,IAAIA,eAAe,QAAQA,eAAeO,QAG/C,OAAOP;OAEP,OAAO;CAEX;;;;;CAMAQ,UAAUC,MAAYR,UAAmD;EAEvE,IAAIQ,gBAAgBJ,QAAQ,CAACK,MAAMD,IAAI,GACrC,OAAOA,KAAKE,YAAY;OAExB,OAAO;CAEX;;;;CAKA,OAAOC,SAAwB;EAC7B,OAAO,IAAI,KAAK;CAClB;AACF;;;;ACtEA,SAASC,SAASC,OAAe;CAC/B,OAAOA,UAAUA,SAASA,UAAUC,YAAYD,UAAU;AAC5D;;;;;;;;;;;;;;;;;;;;;AA6BA,IAAaE,kBAAb,MAA6B;;;;;CAK3BC,YAAYC,YAAgDC,UAAmD;EAC7G,IAAID,eAAe,MAAMA,eAAe,QAAQA,eAAeE,QAC7D,OAAO;OACF;GACL,MAAMC,cAAcC,OAAOJ,UAAU;GAErC,OAAOL,SAASQ,WAAW,IAAIA,cAAc;EAC/C;CACF;;;;CAKAE,UAAUC,cAAkDL,UAAmD;EAC7G,IAAIK,iBAAiB,MAAMA,iBAAiB,QAAQA,iBAAiBJ,QACnE,OAAO;OACF;GACL,MAAMC,cAAcC,OAAOE,YAAY;GAEvC,OAAOX,SAASQ,WAAW,IAAIA,cAAc;EAC/C;CACF;;;;CAKA,OAAOI,SAA0B;EAC/B,OAAO,IAAI,KAAK;CAClB;AACF;;;;;;;;;;;;;;;;;;;;;;;;ACvCA,IAAaC,kBAAb,MAA6B;;;;;CAK3BC,YAAYC,YAAqBC,UAAmD;EAClF,OAAO,CAACD,cAAcA,eAAe,KAAK,OAAOE,OAAOF,UAAU;CACpE;;;;CAIAG,UAAUC,cAAuBH,UAAmD;EAClF,OAAO,CAACG,gBAAgBA,iBAAiB,KAAK,OAAOF,OAAOE,YAAY;CAC1E;;;;CAKA,OAAOC,SAA0B;EAC/B,OAAO,IAAI,KAAK;CAClB;AACF"}
|