in src/persistence/mapiObjectStorage.ts [60:135]
public armResourceToPaperbitsKey(resource: string): string {
if (!resource.includes("contentTypes")) {
return resource;
}
const regex = /contentTypes\/(.*)\/contentItems\/(.*)/gm;
const match = regex.exec(resource);
const mapiContentType = match[1];
const mapiContentItem = match[2];
let contentType;
let contentItem;
switch (mapiContentType) {
case "page":
contentType = "pages";
contentItem = mapiContentItem;
break;
case "layout":
contentType = "layouts";
contentItem = mapiContentItem;
break;
case "blob":
contentType = "uploads";
contentItem = mapiContentItem;
break;
case "block":
contentType = "blocks";
contentItem = mapiContentItem;
break;
case "url":
contentType = "urls";
contentItem = mapiContentItem;
break;
case "navigation":
contentType = "navigationItems";
contentItem = null;
break;
case "configuration":
contentType = "settings";
contentItem = null;
break;
case "stylesheet":
contentType = "styles";
contentItem = null;
break;
case "document":
contentType = "files";
contentItem = mapiContentItem;
break;
case "popup":
contentType = "popups";
contentItem = mapiContentItem;
break;
default:
throw new AppError(`Unknown content type: "${mapiContentType}"`);
}
let key = contentType;
if (contentItem) {
key += `/${contentItem}`;
}
return key;
}