///
///
///
///
///
class DataConverter {
convertJson(originalContentBlock:ContentBlock, cb:AjaxContentBlock):ContentBlock {
return new ContentBlock(cb.content, cb.content_path, cb.api_key, originalContentBlock.apiHost,
cb.created_at, cb.updated_at, originalContentBlock.defaultContent, cb.version);
}
extractObjectFromHash(originalContentBlock:ContentBlock, rawAjaxArray:AjaxContentBlocksHash):ContentBlock {
const rawData = rawAjaxArray[originalContentBlock.contentPath];
return rawData ? this.convertJson(originalContentBlock, rawData) : originalContentBlock;
}
convertJsonObjectToHash(rawJsonObject:AjaxContentBlocks):AjaxContentBlocksHash {
const hash:AjaxContentBlocksHash = {};
return rawJsonObject.content_blocks.reduce((map, jsonContentBlock) => {
map[jsonContentBlock.content_path] = jsonContentBlock;
return map;
}, hash);
}
convertJsonObjectToCredentials(credentials:AjaxRenuoUploadCredentials):RenuoUploadCredentials {
const cred = credentials.renuo_upload_credentials;
return new RenuoUploadCredentials(cred.api_key, cred.signing_url);
}
}