apim-developer-portal1
Version:
API management developer portal
31 lines (23 loc) • 977 B
text/typescript
import { Contract } from "@paperbits/common";
import { IModelBinder } from "@paperbits/common/editing";
import { SubscriptionsModel } from "./subscriptionsModel";
import { SubscriptionsContract } from "./subscriptionsContract";
const nodeType = "subscriptions";
const oldNodeType = "userSubscriptions";
export class SubscriptionsModelBinder implements IModelBinder<SubscriptionsModel> {
public canHandleModel(model: Object): boolean {
return model instanceof SubscriptionsModel;
}
public canHandleContract(contract: Contract): boolean {
return contract.type === nodeType || contract.type === oldNodeType;
}
public async contractToModel(contract: SubscriptionsContract): Promise<SubscriptionsModel> {
return new SubscriptionsModel();
}
public modelToContract(model: SubscriptionsModel): Contract {
const contract: SubscriptionsContract = {
type: nodeType
};
return contract;
}
}