UNPKG

@beincom/dto

Version:

Share dto for all projects of Beincom

63 lines (62 loc) 2.53 kB
"use strict"; var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.AssignGroupSchemeLog = void 0; const activity_log_base_use_case_dto_1 = require("../../activity-log-base-use-case.dto"); const enums_1 = require("../../enums"); const helpers_1 = require("../../helpers"); class AssignGroupSchemeLog extends activity_log_base_use_case_dto_1.ActivityLogBaseUseCase { static toPayload(data) { return { useCase: this.useCase, eventTime: Date.now(), data, }; } static toDocument({ eventTime, data, }) { const { id, mainId, actor, community, originalState, currentState } = data; const { assigned: originalAssigned } = originalState; const { assigned: currentAssigned } = currentState, restCurrentScheme = __rest(currentState, ["assigned"]); return { id, mainId, eventTime, useCase: this.useCase, eventType: this.eventType, objectType: this.objectType, actorId: actor ? actor.id : undefined, communityId: community.id, objectId: restCurrentScheme.id, data: { actor, community, object: restCurrentScheme, changes: (0, helpers_1.GetPropsChanged)({ assigned: originalAssigned }, { assigned: currentAssigned }), }, }; } toObjectIds() { const { actorId } = this.document; return { userIds: [actorId].filter((id) => id), }; } toData(objectData) { const { actorId, data } = this.document; return Object.assign(Object.assign({}, data), { actor: objectData.users[actorId] }); } } AssignGroupSchemeLog.useCase = enums_1.ACTIVITY_LOG_USE_CASES.ASSIGN_GROUP_SCHEME; AssignGroupSchemeLog.eventType = enums_1.ACTIVITY_EVENT_TYPES.UPDATE; AssignGroupSchemeLog.objectType = enums_1.ACTIVITY_OBJECT_TYPES.GROUP_SCHEME; exports.AssignGroupSchemeLog = AssignGroupSchemeLog;