@sphereon/ssi-sdk.data-store
Version:
52 lines • 2.28 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.presentationDefinitionEntityItemFrom = exports.presentationDefinitionItemFrom = void 0;
exports.isPresentationDefinitionEqual = isPresentationDefinitionEqual;
const PresentationDefinitionItemEntity_1 = require("../../entities/presentationDefinition/PresentationDefinitionItemEntity");
const blakejs_1 = require("blakejs");
const FormattingUtils_1 = require("../FormattingUtils");
const presentationDefinitionItemFrom = (entity) => {
const result = {
id: entity.id,
tenantId: entity.tenantId,
definitionId: entity.definitionId,
version: entity.version,
name: entity.name,
purpose: entity.purpose,
definitionPayload: JSON.parse(entity.definitionPayload),
dcqlPayload: JSON.parse(entity.dcqlPayload),
createdAt: entity.createdAt,
lastUpdatedAt: entity.lastUpdatedAt,
};
return (0, FormattingUtils_1.replaceNullWithUndefined)(result);
};
exports.presentationDefinitionItemFrom = presentationDefinitionItemFrom;
const presentationDefinitionEntityItemFrom = (item) => {
const entity = new PresentationDefinitionItemEntity_1.PresentationDefinitionItemEntity();
entity.tenantId = item.tenantId;
entity.definitionId = item.definitionId;
entity.version = item.version;
entity.name = item.name;
entity.purpose = item.purpose;
entity.definitionPayload = JSON.stringify(item.definitionPayload);
entity.dcqlPayload = JSON.stringify(item.dcqlPayload);
return entity;
};
exports.presentationDefinitionEntityItemFrom = presentationDefinitionEntityItemFrom;
function hashPayload(payload) {
return (0, blakejs_1.blake2bHex)(JSON.stringify(payload));
}
function isPresentationDefinitionEqual(base, compare) {
if (base.definitionId !== compare.definitionId ||
base.tenantId != compare.tenantId ||
base.version !== compare.version ||
base.name != compare.name ||
base.purpose != compare.purpose) {
return false;
}
if (base.definitionPayload && compare.definitionPayload) {
return hashPayload(base.definitionPayload) === hashPayload(compare.definitionPayload);
}
return false;
}
//# sourceMappingURL=MappingUtils.js.map