@ironsoftware/ironpdf
Version:
IronPDF for Node
113 lines • 5.15 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.convertPermissionsInterfaceToEnum = exports.convertPermissionsEnumToInterface = exports.StringDictionaryToProto = exports.StringDictionaryFromProto = exports.pdfPermissionFromProto = exports.PageRotationToProto = exports.PageRotationFromProto = exports.PageInfoFromProto = void 0;
function PageInfoFromProto(proto) {
var _a, _b, _c, _d, _e;
return {
pageRotation: (_a = PageRotationFromProto(proto === null || proto === void 0 ? void 0 : proto.pageRotation)) !== null && _a !== void 0 ? _a : 0,
millimeterHeight: (_b = proto.height) !== null && _b !== void 0 ? _b : 0,
millimeterWidth: (_c = proto.width) !== null && _c !== void 0 ? _c : 0,
printerPointHeight: (_d = proto.printHeight) !== null && _d !== void 0 ? _d : 0,
printerPointWidth: (_e = proto.printWidth) !== null && _e !== void 0 ? _e : 0,
};
}
exports.PageInfoFromProto = PageInfoFromProto;
function PageRotationFromProto(proto) {
switch (proto === null || proto === void 0 ? void 0 : proto.enumValue) {
case 0:
return 0;
case 1:
return 90;
case 2:
return 180;
case 3:
return 270;
default:
return 0;
}
}
exports.PageRotationFromProto = PageRotationFromProto;
function PageRotationToProto(value) {
switch (value) {
case 0:
return { enumValue: 0 };
case 90:
return { enumValue: 1 };
case 180:
return { enumValue: 2 };
case 270:
return { enumValue: 3 };
default:
return { enumValue: 4 };
}
}
exports.PageRotationToProto = PageRotationToProto;
var PdfDocumentPermissionsEnum;
(function (PdfDocumentPermissionsEnum) {
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["None"] = -3904] = "None";
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["AllowAccessibilityExtractContent"] = 512] = "AllowAccessibilityExtractContent";
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["AllowAnnotations"] = 32] = "AllowAnnotations";
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["AllowAssembleDocument"] = 1024] = "AllowAssembleDocument";
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["AllowExtractContent"] = 16] = "AllowExtractContent";
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["AllowFillForms"] = 256] = "AllowFillForms";
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["AllowPrintFullQuality"] = 2048] = "AllowPrintFullQuality";
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["AllowModify"] = 8] = "AllowModify";
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["AllowPrint"] = 4] = "AllowPrint";
PdfDocumentPermissionsEnum[PdfDocumentPermissionsEnum["AllowAll"] = -4] = "AllowAll";
})(PdfDocumentPermissionsEnum || (PdfDocumentPermissionsEnum = {}));
function pdfPermissionFromProto(pdfPermissionP) {
const permissionsEnum = pdfPermissionP.enumValue == undefined
? PdfDocumentPermissionsEnum.None
: pdfPermissionP.enumValue;
return convertPermissionsEnumToInterface(permissionsEnum);
}
exports.pdfPermissionFromProto = pdfPermissionFromProto;
function StringDictionaryFromProto(stringDictionaryP) {
if (stringDictionaryP === null || stringDictionaryP === void 0 ? void 0 : stringDictionaryP.items) {
return new Map(stringDictionaryP.items
.filter((x) => x.key !== undefined && x.value !== undefined)
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
.map((x) => [x.key, x.value]));
}
return new Map();
}
exports.StringDictionaryFromProto = StringDictionaryFromProto;
function StringDictionaryToProto(map) {
return {
items: Array.from(map).map(([key, value]) => ({
key,
value,
})),
};
}
exports.StringDictionaryToProto = StringDictionaryToProto;
function convertPermissionsEnumToInterface(inputEnum) {
const interfaceObject = {};
const enumKeys = Object.keys(PdfDocumentPermissionsEnum);
for (const key of enumKeys) {
if (!isNaN(Number(key))) {
const enumKey = PdfDocumentPermissionsEnum[key];
interfaceObject[enumKey] =
(inputEnum &
PdfDocumentPermissionsEnum[enumKey]) !==
0;
}
}
return interfaceObject;
}
exports.convertPermissionsEnumToInterface = convertPermissionsEnumToInterface;
function convertPermissionsInterfaceToEnum(inputInterface) {
let enumObject = PdfDocumentPermissionsEnum.AllowAll;
for (const key in PdfDocumentPermissionsEnum) {
const enumValue = PdfDocumentPermissionsEnum[key];
if (typeof enumValue === "number") {
if (inputInterface[key] === false) {
enumObject =
enumObject & ~enumValue; // Remove this permission
}
}
}
return enumObject;
}
exports.convertPermissionsInterfaceToEnum = convertPermissionsInterfaceToEnum;
//# sourceMappingURL=converter.js.map