UNPKG

@mcma/core

Version:

Node module with type definitions and helper utils for the EBU MCMA framework

35 lines (34 loc) 1.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.McmaResource = void 0; exports.onResourceCreate = onResourceCreate; exports.onResourceUpsert = onResourceUpsert; const mcma_object_1 = require("./mcma-object"); const utils_1 = require("../utils"); function onResourceCreate(resource, id) { resource.id = id; resource.dateModified = resource.dateCreated = new Date(); } function onResourceUpsert(resource, id) { resource.id = id; resource.dateModified = new Date(); if (!resource.dateCreated) { resource.dateCreated = resource.dateModified; } } class McmaResource extends mcma_object_1.McmaObject { id; dateCreated; dateModified; custom; constructor(type, properties) { super(type); this.id = properties?.id; this.dateCreated = utils_1.Utils.ensureValidDateOrUndefined(properties?.dateCreated); this.dateModified = utils_1.Utils.ensureValidDateOrUndefined(properties?.dateModified); if (typeof properties?.custom === "object" && Object.keys(properties?.custom).length > 0) { this.custom = Object.assign({}, properties.custom); } } } exports.McmaResource = McmaResource;