open-nomad/ui/mirage/serializers/job.js
2023-04-10 15:36:59 +00:00

30 lines
616 B
JavaScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import ApplicationSerializer from './application';
export default ApplicationSerializer.extend({
embed: true,
include: ['taskGroups', 'jobSummary'],
serialize() {
var json = ApplicationSerializer.prototype.serialize.apply(this, arguments);
if (json instanceof Array) {
json.forEach(serializeJob);
} else {
serializeJob(json);
}
return json;
},
});
function serializeJob(job) {
job.TaskGroups.forEach(group => {
if (group.Services.length === 0) {
group.Services = null;
}
});
}