import { UpdatedAt, HandlerSetter } from 'interfaces'; import { assign } from 'lodash'; import Operation from '../Operation'; export default function getUpdatedAtHandlers( parentEntityType: string, propKey: string, propValue: UpdatedAt ): {selfHandlerSetters: Array, childHandlerSetters: Array} { // ---------- selfHandler ---------- const selfHandlerSetter: HandlerSetter = { handlerHolder: 'SELF', onAdd: [{ updatingParentType: null, operationModifier: (selfOperation: Operation) => { selfOperation.modify({ [propKey]: Date.now() }); } }], onUpdate: [{ updatingParentType: null, operationModifier: (selfOperation: Operation) => { selfOperation.modify({ [propKey]: Date.now() }); } }], onDelete: [] }; return { selfHandlerSetters: [selfHandlerSetter], childHandlerSetters: [] }; }