in django_airavata/apps/api/static/django_airavata_api/js/models/BaseModel.js [15:50]
constructor(fields, data = {}) {
fields.forEach((fieldDefinition) => {
if (typeof fieldDefinition === "string") {
this[fieldDefinition] = this.convertSimpleField(
data[fieldDefinition],
null
);
} else {
// fieldDefinition must be an object
let fieldName = fieldDefinition.name;
let fieldType = fieldDefinition.type;
let fieldIsList =
typeof fieldDefinition.list !== "undefined"
? fieldDefinition.list
: false;
let fieldDefault =
typeof fieldDefinition.default !== "undefined"
? this.getDefaultValue(fieldDefinition.default)
: null;
let fieldValue = data[fieldName];
if (fieldIsList) {
this[fieldName] = fieldValue
? fieldValue.map((item) =>
this.convertField(fieldType, item, fieldDefault)
)
: fieldDefault;
} else {
this[fieldName] = this.convertField(
fieldType,
fieldValue,
fieldDefault
);
}
}
});
}