@sitecore/sc-contenthub-webclient-sdk
Version:
Sitecore Content Hub WebClient SDK.
38 lines • 1.26 kB
JavaScript
import { Rendition } from "../contracts/base/rendition";
import Guard from "../guard";
import Link from "../link";
export class RenditionMapper {
constructor(client) {
Guard.notNullOrUndefined(client);
this._client = client;
}
mapRenditions(id, extensionData) {
if (extensionData == null)
return [];
const renditions = extensionData["renditions"];
if (!renditions || Object.keys(renditions).length === 0)
return [];
const list = [];
for (const renditionName in renditions) {
const values = renditions[renditionName];
if (!values || values.length === 0)
continue;
const rendition = Rendition.createRendition(renditionName, values.map((value) => {
return Link.copyFrom(value);
}));
list.push(rendition);
}
return list;
}
mapToResource(renditions) {
const links = {};
if (renditions == null) {
return links;
}
for (const rendition of renditions) {
links[rendition.name] = rendition.items.map(i => new Link(i.href));
}
return links;
}
}
//# sourceMappingURL=rendition-mapper.js.map