1
0
Fork 0
mirror of https://github.com/TryGhost/Ghost-Admin.git synced 2023-12-14 02:33:04 +01:00
Ghost-Admin/app/transforms/member-subscription.js
Rish 45abd231c4 Updated member model to use new subscriptions structure
no issue

Members API was updated to have new subscription structure, this updates model and its transformation to match it.
2019-10-03 23:10:42 +05:30

38 lines
1.2 KiB
JavaScript

import MemberSubscription from 'ghost-admin/models/member-subscription';
import Transform from 'ember-data/transform';
import {A as emberA, isArray as isEmberArray} from '@ember/array';
export default Transform.extend({
deserialize(serialized) {
let subscriptions, subscriptionArray;
subscriptionArray = serialized.subscriptions || [];
subscriptions = subscriptionArray.map(itemDetails => MemberSubscription.create(itemDetails));
return emberA(subscriptions);
},
serialize(deserialized) {
let subscriptionArray;
if (isEmberArray(deserialized)) {
subscriptionArray = deserialized.map((item) => {
let adapter = item.get('adapter').trim();
let amount = item.get('amount');
let plan = item.get('plan').trim();
let status = item.get('status').trim();
let validUntil = item.get('validUntil');
return {adapter, amount, plan, status, validUntil};
}).compact();
} else {
subscriptionArray = [];
}
return {
subscriptions: subscriptionArray
};
}
});