2023-06-19 16:23:53 +00:00
|
|
|
/**
|
2026-01-28 17:09:06 -08:00
|
|
|
* Copyright IBM Corp. 2021, 2026
|
2024-05-31 11:29:24 -07:00
|
|
|
* SPDX-License-Identifier: BUSL-1.1
|
2023-06-19 16:23:53 +00:00
|
|
|
*/
|
|
|
|
|
|
2023-03-10 14:20:58 -05:00
|
|
|
import ApplicationSerializer from './application';
|
|
|
|
|
import { EmbeddedRecordsMixin } from '@ember-data/serializer/rest';
|
|
|
|
|
export default class RecordingSerializer extends ApplicationSerializer.extend(
|
2023-11-22 14:07:41 -05:00
|
|
|
EmbeddedRecordsMixin,
|
2023-03-10 14:20:58 -05:00
|
|
|
) {
|
|
|
|
|
attrs = {
|
2023-03-16 13:49:04 -04:00
|
|
|
connection_recordings: { embedded: 'always' },
|
2023-03-10 14:20:58 -05:00
|
|
|
};
|
2024-01-17 11:37:54 -08:00
|
|
|
|
|
|
|
|
serialize(snapshot) {
|
|
|
|
|
let serialized = super.serialize(...arguments);
|
|
|
|
|
// The post request for reapply-storage-policy doesn't expect a payload,
|
|
|
|
|
// so we return nothing
|
|
|
|
|
if (snapshot?.adapterOptions?.method === 'reapply-storage-policy') {
|
|
|
|
|
return {};
|
|
|
|
|
}
|
|
|
|
|
return serialized;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
normalize(typeClass, hash, ...rest) {
|
|
|
|
|
const normalizedHash = structuredClone(hash);
|
|
|
|
|
const err = normalizedHash.errors;
|
|
|
|
|
delete normalizedHash.errors;
|
|
|
|
|
const normalized = super.normalize(typeClass, normalizedHash, ...rest);
|
|
|
|
|
// we should not override the ember models errors field,
|
|
|
|
|
// so we rename the errors field from the api
|
|
|
|
|
normalized.data.attributes.errors_number = err;
|
|
|
|
|
|
|
|
|
|
return normalized;
|
|
|
|
|
}
|
2023-03-10 14:20:58 -05:00
|
|
|
}
|