@wbg-mde/repository
Version:
Managing all common method for file system CRUD operations.
656 lines (655 loc) • 37.6 kB
JavaScript
;
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
Object.defineProperty(exports, "__esModule", { value: true });
const export_master_config_1 = require("../shared/configs/export.master.config");
const template_service_1 = require("../shared/services/template.service");
const import_study_service_1 = require("../shared/services/import.study.service");
const app_repo_utility_1 = require("../shared/app.repo.utility");
const export_helpers_1 = require("../shared/services/export.helpers");
const _ = require('lodash');
const trace_decorator_1 = require("../decorators/trace.decorator");
let ImportDDI = class ImportDDI {
constructor() {
this.templateService = new template_service_1.TemplateService();
this.importService = new import_study_service_1.ImportStudyService();
this.helpers = new export_helpers_1.ExportHelpers();
}
readImportedFile(filePath, studyType, language, options, callBack) {
try {
this.importService.parseXMLtoJSON(filePath, (parser_resp) => {
if (parser_resp.result == 'ok') {
let data = parser_resp.data;
let metadata = {};
if (data[export_master_config_1.Export_Master_Config.xmlNodeProps.rootNode]) {
let ddiDoc = data[export_master_config_1.Export_Master_Config.xmlNodeProps.rootNode];
this.templateService.getTreeViewSchema(studyType, language, (response) => {
let nodes = response.nodes;
let self = this;
_.forEach(ddiDoc, (item, key) => {
if (key == export_master_config_1.Export_Master_Config.codeBookNodes.FileDescription) {
let editorMapSchema = export_master_config_1.Export_Master_Config.fileDescSectionMap;
self.templateService.createTreeViewSchema(editorMapSchema, response.schema, response.form, (response) => {
self.getFileDescription(item, metadata, response);
});
}
else if (key == export_master_config_1.Export_Master_Config.codeBookNodes.DataDescription) {
let editorMapSchema = export_master_config_1.Export_Master_Config.variableDocSectionMap;
self.templateService.createTreeViewSchema(editorMapSchema, response.schema, response.form, (response) => {
self.getDataDescription(item, metadata, response);
});
}
else {
if (options[key]) {
let treenode = _.filter(nodes, (obj) => {
return obj.key == key;
});
if (treenode && treenode.length > 0) {
self.getDDIObject(treenode[0], ddiDoc, metadata);
}
}
}
});
this.assignVariableNumber(metadata.variables);
callBack({ result: "ok", data: metadata });
});
}
else {
callBack({ result: "warning", messages: "This is not a valid DDI document." });
}
}
else {
callBack(parser_resp);
}
});
}
catch (e) {
callBack({ result: "error", messages: e });
app_repo_utility_1.App_Repository_Utility.LogText('Import > DDI > readImportedFile > ' + e, 3);
}
}
getDDIObject(form, data, outData) {
try {
if (form.nodes && form.nodes instanceof Array) {
let self = this;
_.forEach(form.nodes, function (__node) {
if (__node.nodes && __node.nodes instanceof Array) {
self.getDDIObject(__node, data, outData);
}
else {
if (__node.formschema.exportKey) {
if (__node.formschema.exportMapFn) {
self.helpers[__node.formschema.exportMapFn](export_master_config_1.Export_Master_Config.actions.import, data, __node.formschema.items, __node.formschema.exportKey, outData, __node.key);
}
else {
let __data = app_repo_utility_1.App_Repository_Utility.getNestedProperty(data, __node.formschema.exportKey);
if (__data) {
__data = self.convertToDataType(__node.formschema, __data);
if (__node.formschema.splArray && __node["exportKey"]) {
var tempData = _.cloneDeep(outData) || {};
var tempJson = {};
self
.importService
.setNestedProperty(outData, __node["exportKey"], __data);
outData = _.merge(outData, tempData);
}
else {
self
.importService
.setNestedProperty(outData, __node.key, __data);
}
}
}
}
}
});
}
return outData;
}
catch (e) {
app_repo_utility_1.App_Repository_Utility.LogText('Import > DDI > getDDIObject > ' + e, 3);
return outData;
}
}
getFileDescription(data, outData, form) {
try {
let fileDescr = new Array();
if (data && data instanceof Array) {
outData[export_master_config_1.Export_Master_Config.ddiNodes.dataSets] = {};
let self = this;
_.forEach(data, function (file) {
let fileDescription = {};
let headerProps = file[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute];
if (headerProps) {
let headerObj = self.buildFileObject(headerProps);
fileDescription = headerObj;
}
let fileTextObj = self.buildFileObject(file[export_master_config_1.Export_Master_Config.fileDescriptionProps.fileText]);
if (fileTextObj) {
fileDescription[export_master_config_1.Export_Master_Config.fileDescriptionProps.fileText] = {};
_.forEach(fileTextObj, function (val, key) {
if (export_master_config_1.Export_Master_Config.staticProps.fileText.indexOf(key) > -1) {
fileDescription[export_master_config_1.Export_Master_Config.fileDescriptionProps.fileText][key] = val;
}
});
if (fileTextObj.fileName) {
fileDescription["Name"] = fileTextObj.fileName.replace(/\.[^/.]+$/, "");
}
}
if (form instanceof Array && form.length == 1) {
form = form[0];
}
self.getFileDescriptionObject(form, file, fileDescription);
fileDescr.push(fileDescription);
});
outData[export_master_config_1.Export_Master_Config.ddiNodes.dataSets][export_master_config_1.Export_Master_Config.ddiNodes.fileDescription] = fileDescr;
}
}
catch (e) {
app_repo_utility_1.App_Repository_Utility.LogText('Import > DDI > getFileDescription > ' + e, 3);
}
}
getDataDescription(data, outData, treeNodes) {
try {
if (data instanceof Array && data[0]) {
outData[export_master_config_1.Export_Master_Config.ddiNodes.variables] = {};
let variables = data[0][export_master_config_1.Export_Master_Config.codeBookNodes.variable];
let self = this;
let parentNodeKey = "variables.";
if (variables instanceof Array) {
let outVariables = {};
_.forEach(variables, function (variable) {
let varDescr = {};
varDescr = self.getVariableObject(treeNodes[0], variable, varDescr, parentNodeKey);
_.forEach(variable, (item, key) => {
if (key === export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute) {
_.forEach(item, (attrItem, attrKey) => {
varDescr[attrKey] = attrItem;
});
}
else if (key === export_master_config_1.Export_Master_Config.variableDescriptionProps.format) {
if (item) {
varDescr = self.getFormat(item, varDescr);
}
}
else if (key === export_master_config_1.Export_Master_Config.variableDescriptionProps.location) {
if (item) {
varDescr = self.getLocation(item, varDescr);
}
}
else if (key == export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange) {
if (item) {
varDescr = self.getValidRange(item, varDescr);
}
}
else if (key == export_master_config_1.Export_Master_Config.variableDescriptionProps.invalidRange) {
if (item) {
varDescr = self.getInvalidRange(item, varDescr);
}
}
else if (key == export_master_config_1.Export_Master_Config.variableDescriptionProps.summaryStatus) {
if (item instanceof Array) {
let summary = new Array();
_.forEach(item, function (status) {
let summaryObj = {};
if (status[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute] && status[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]["type"] && !status[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]["wgtd"]) {
if (status[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]["type"] == "mean" || status[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]["type"] == "stdev") {
if (!varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange]) {
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange] = {};
}
if (!varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange][export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range]) {
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange][export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range] = {};
}
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange][export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range][status[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]["type"]] = status[export_master_config_1.Export_Master_Config.xmlNodeProps.elementProp];
}
else if (status[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]["type"] == "vald" || status[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]["type"] == "invd") {
summaryObj["type"] = status[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]["type"];
summaryObj["text"] = status[export_master_config_1.Export_Master_Config.xmlNodeProps.elementProp];
summary.push(summaryObj);
}
}
});
varDescr[key] = summary;
}
}
else if (key == export_master_config_1.Export_Master_Config.variableDescriptionProps.category) {
if (item) {
varDescr = self.getCategory(item, varDescr);
}
}
else {
let variableProps = varDescr.variables || {};
if (!variableProps[key]) {
if (item instanceof Array && item.length == 1) {
let propVal = item[0];
if (propVal instanceof Object) {
varDescr[key] = {};
_.forEach(propVal, (atrVal, atrKey) => {
if (atrVal instanceof Array) {
varDescr[key][atrKey] = atrVal[0];
}
else {
varDescr[key][atrKey] = atrVal;
}
});
}
else {
varDescr[key] = item[0];
}
}
}
}
});
varDescr = self.setRequiredProps(varDescr);
if (varDescr.files) {
if (outVariables[varDescr.files]) {
outVariables[varDescr.files].push(varDescr);
}
else {
outVariables[varDescr.files] = [varDescr];
}
}
});
outData[export_master_config_1.Export_Master_Config.ddiNodes.variables] = outVariables;
}
let varGroups = data[0][export_master_config_1.Export_Master_Config.codeBookNodes.varGroups];
if (varGroups && varGroups.length > 0) {
let outGroups = [];
for (let group of varGroups) {
let oGroup = {};
let keys = _.keys(group);
for (let key of keys) {
if (key === export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute) {
let hKeys = _.keys(group[key]);
for (let hkey of hKeys) {
if (hkey === export_master_config_1.Export_Master_Config.codeBookNodes.variable) {
let varbls = group[key][hkey];
oGroup['variables'] = varbls ? varbls.split(' ') : [];
}
else {
oGroup[hkey] = group[key][hkey];
}
}
}
else {
oGroup[key] = group[key][0];
}
}
outGroups.push(oGroup);
}
outData[export_master_config_1.Export_Master_Config.ddiNodes.varGroups] = outGroups;
}
}
}
catch (e) {
app_repo_utility_1.App_Repository_Utility.LogText('Import > DDI > getDataDescription > ' + e, 3);
}
}
buildFileObject(data) {
try {
if (data instanceof Array) {
return this.buildFileObject(data[0]);
}
else if (data instanceof Object) {
let outObj = {};
_.forEach(data, (item, key) => {
if (key == export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute) {
_.forEach(item, (attrItem, attrKey) => {
outObj[attrKey] = attrItem;
});
}
else if (item instanceof Object || item instanceof Array) {
outObj[key] = this.buildFileObject(item);
}
else {
outObj[key] = item;
}
});
return outObj;
}
else {
return data;
}
}
catch (e) {
app_repo_utility_1.App_Repository_Utility.LogText('Import > DDI > buildFileObject > ' + e, 3);
return data;
}
}
convertToDataType(schema, value) {
try {
let type = schema.type;
switch (type) {
case export_master_config_1.Export_Master_Config.formSchemaTypes.table:
let tableVal = new Array();
_.forEach(value, function (val) {
let rowVal = {};
let i = 0;
_.forEach(schema.items, function (item) {
let keys = item
.key
.split(".");
let propName = keys[keys.length - 1];
if (item.exportKey) {
if (val instanceof Object) {
let propVal = app_repo_utility_1.App_Repository_Utility.getNestedProperty(val, item.exportKey);
if (propVal) {
if (propVal instanceof Array) {
rowVal[propName] = propVal[0];
}
else {
rowVal[propName] = propVal;
}
}
}
else {
if (item.exportKey == export_master_config_1.Export_Master_Config.xmlNodeProps.elementProp) {
rowVal[propName] = val;
}
}
}
else {
if (val[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]) {
if (val[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute][propName]) {
rowVal[propName] = val[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute][propName];
}
}
}
});
tableVal.push(rowVal);
});
if (schema.period) {
let items = schema.items;
let cnt = 0;
let periods = new Array();
_.forEach(tableVal, function (item) {
var curschema = items[cnt];
if (curschema.type == "date" || curschema.type == "month") {
let date = String(item.date);
if (date.indexOf('T') !== -1) {
date = date.split('T')[0];
}
item.date = date;
}
if (item.event == "start") {
let period = {};
period["date"] = item.date;
period["event"] = "";
period["cycle"] = item.cycle;
periods.push(period);
}
else {
if (periods.length > 0) {
periods[periods.length - 1]["event"] = item.date;
}
else {
let period = {};
period["event"] = item.date;
period["cycle"] = item.cycle;
periods.push(period);
}
}
});
tableVal = periods;
}
return tableVal;
case export_master_config_1.Export_Master_Config.formSchemaTypes.date:
if (value instanceof Array) {
value = value[0];
return value;
}
else {
return value;
}
default:
if (value instanceof Array) {
value = value[0];
}
if (typeof value === 'string') {
return value.trim();
}
else {
return value;
}
}
}
catch (e) {
app_repo_utility_1.App_Repository_Utility.LogText('Import > DDI > buildFileObject > ' + e, 3);
return value;
}
}
formatTableData() { }
mergeGrandNummber(fundAg, grandNumber) {
_
.forEach(fundAg, function (val) {
_
.forEach(grandNumber, function (grnd) {
if (grnd[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]) {
if (grnd[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]["agency"] == val.abbr) {
val["grantNumber"] = grnd[export_master_config_1.Export_Master_Config.xmlNodeProps.elementProp];
}
}
});
});
}
getTemplateFile(nodes) {
let templateFIle = export_master_config_1.Export_Master_Config.defaultOptions.tmplFile;
if (nodes[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]) {
let headerAttr = nodes[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute];
if (headerAttr[export_master_config_1.Export_Master_Config.customAttributes.template]) {
templateFIle = headerAttr[export_master_config_1.Export_Master_Config.customAttributes.template];
}
}
return templateFIle;
}
getStudyType(nodes) {
let studyType = export_master_config_1.Export_Master_Config.defaultOptions.studyType;
if (nodes[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]) {
let headerAttr = nodes[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute];
if (headerAttr[export_master_config_1.Export_Master_Config.customAttributes.type]) {
studyType = headerAttr[export_master_config_1.Export_Master_Config.customAttributes.type];
}
}
return studyType;
}
getVariableObject(form, data, outData, parentKey) {
try {
if (form.nodes && form.nodes instanceof Array) {
let self = this;
_.forEach(form.nodes, function (__node) {
if (__node.nodes && __node.nodes instanceof Array) {
self.getVariableObject(__node, data, outData, parentKey);
}
else {
let exportKey = (__node.formschema.exportKey || __node.formschema.key).replace(parentKey, "");
let __data = app_repo_utility_1.App_Repository_Utility.getNestedProperty(data, exportKey);
if (__data) {
__data = self.convertToDataType(__node.formschema, __data);
if (__node.formschema.type == export_master_config_1.Export_Master_Config.formSchemaTypes.table) {
__node.key = __node
.key
.replace('[]', '');
}
self
.importService
.setNestedProperty(outData, __node.key, __data);
}
}
});
}
return outData;
}
catch (e) {
app_repo_utility_1.App_Repository_Utility.LogText('Import > DDI > getVariableObject > ' + e, 3);
return outData;
}
}
getFileDescriptionObject(form, data, outData) {
try {
if (form.nodes && form.nodes instanceof Array) {
let self = this;
_.forEach(form.nodes, function (__node) {
let __data = app_repo_utility_1.App_Repository_Utility.getNestedProperty(data, __node.formschema.exportKey || __node.formschema.key.replace('fileDscr.', ''));
if (__data) {
__data = self.convertToDataType(__node.formschema, __data);
self
.importService
.setNestedProperty(outData, __node.key.replace(export_master_config_1.Export_Master_Config.fileDescriptionProps.prefixKey, ''), __data);
}
});
}
return outData;
}
catch (e) {
app_repo_utility_1.App_Repository_Utility.LogText('Import > DDI > getVariableObject > ' + e, 3);
return outData;
}
}
getLocation(locations, varDescr) {
if (locations instanceof Array && locations[0]) {
let location = locations[0];
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.location] = {};
_.forEach(location, (locVal, locKey) => {
if (locVal && locVal.length && locVal[0]) {
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.location][locKey] = locVal[0];
}
else if (locVal) {
let keys = _.keys(locVal);
for (let key of keys) {
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.location][key] = locVal[key];
}
}
});
}
return varDescr;
}
getFormat(formats, varDescr) {
if (formats instanceof Array && formats[0]) {
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.format] = {};
let format = formats[0];
let formatObj = format[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute];
_.forEach(formatObj, (fmVal, fmKey) => {
if (fmVal) {
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.format][fmKey] = fmVal;
}
});
}
return varDescr;
}
getValidRange(validRange, varDescr) {
if (validRange instanceof Array && validRange[0]) {
let valRange = validRange[0];
if (valRange[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range] && valRange[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range] instanceof Array && valRange[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range][0]) {
let range = valRange[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range][0];
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange] = {};
if (range[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]) {
let rangeProps = range[export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute];
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange][export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range] = {};
_.forEach(rangeProps, (rgVal, rgKey) => {
if (rgVal) {
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange][export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range][rgKey] = rgVal;
}
});
}
}
}
return varDescr;
}
getInvalidRange(invlrng, varDescr) {
if (!invlrng || (invlrng && invlrng.length === 0)) {
return varDescr;
}
let newInvlrngRanges = [];
let newInvlrngItems = [];
let invlRanges = invlrng[0].range || [];
let invlItems = invlrng[0].item || [];
if (invlRanges.length > 0) {
for (let i = 0; i < invlRanges.length; i++) {
newInvlrngRanges.push(invlRanges[i][export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]);
}
}
if (invlItems.length > 0) {
for (let i = 0; i < invlItems.length; i++) {
newInvlrngItems.push(invlItems[i][export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]);
}
}
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.invalidRange] = {};
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.invalidRange][export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range] = newInvlrngRanges;
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.invalidRange][export_master_config_1.Export_Master_Config.variableDescriptionProps.invalidRange_item] = newInvlrngItems;
return varDescr;
}
getCategory(variableCategories, varDescr) {
let categories = new Array();
_.forEach(variableCategories, function (catgry) {
let catagoryObj = {};
_.forEach(catgry, (catVal, catKey) => {
if (catKey == export_master_config_1.Export_Master_Config.variableDescriptionProps.categoryStatus) {
catagoryObj[catKey] = {};
if (catVal instanceof Array && catVal[0]) {
if (catVal[0][export_master_config_1.Export_Master_Config.xmlNodeProps.elementProp]) {
catagoryObj[catKey]["text"] = catVal[0][export_master_config_1.Export_Master_Config.xmlNodeProps.elementProp];
}
if (catVal[0][export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute]) {
_.forEach(catVal[0][export_master_config_1.Export_Master_Config.xmlNodeProps.headerAttribute], (atrVal, atrKey) => {
catagoryObj[catKey][atrKey] = atrVal;
});
}
}
}
else {
if (catKey === export_master_config_1.Export_Master_Config.variableDescriptionProps.label && catVal[0]) {
catagoryObj[export_master_config_1.Export_Master_Config.variableDescriptionProps.labelled] = true;
}
else if (catKey === "catValu" && catVal instanceof Array && catVal[0]) {
if (catVal[0] === export_master_config_1.Export_Master_Config.xmlNodeProps.missing) {
catVal[0] = "NA";
}
}
catagoryObj[catKey] = catVal[0];
}
});
categories.push(catagoryObj);
});
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.category] = categories;
return varDescr;
}
setRequiredProps(varDescr) {
if (!varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange])
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange] = {};
if (!varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange][export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range])
varDescr[export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange][export_master_config_1.Export_Master_Config.variableDescriptionProps.validRange_range] = {};
return varDescr;
}
assignVariableNumber(data) {
if (data) {
let files = _.keys(data);
for (let file of files) {
let variables = data[file];
let i = 1;
for (let variable of variables) {
variable.number = "V" + i;
i++;
}
}
}
}
};
ImportDDI = __decorate([
trace_decorator_1.Trace({
exclude: [
'getDDIObject', 'convertToDataType', 'buildFileObject', 'getFileDescriptionObject',
'getLocation', 'getCategory', 'getFormat', 'getVariableObject', 'setRequiredProps',
'getFileDescription', 'getDataDescription', 'getValidRange', 'getInvalidRange'
],
params: {
getTemplateFile: ['*'],
getStudyType: ['*'],
getVariableObject: ['*']
}
})
], ImportDDI);
exports.ImportDDI = ImportDDI;