UNPKG

@wbg-mde/r-factory

Version:

Metadata editor R integration module

63 lines (62 loc) 2.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const R = require("@wbg-mde/r-script"); const repository_1 = require("@wbg-mde/repository"); const { LogLevels } = require('@wbg-mde/model'); const utility_1 = require("../shared/utility"); class Utilities { GetREnvironmentDetails(packageInfo, callback) { try { let scriptFile = utility_1.Utility.getRScriptPath(7); const packageVersions = Object.keys(packageInfo); R(scriptFile).data(JSON.stringify(packageVersions)).call((err, result) => { if (err) { console.log('Import Master >> Get R Env. details >> R Script >> ' + err); callback({ result: 'error', message: err.toString() }); } else { callback({ result: 'ok', message: result }); } }); } catch (e) { callback({ result: 'error', message: e.toString() }); } } UpdatePackages(packageInfo, mdepath, callback) { try { let scriptFile = utility_1.Utility.getRScriptPath(13); const packageVersions = Object.keys(packageInfo).reduce((arr, key) => { let obj = { "pkg": key, "version": packageInfo[key] }; arr.push(obj); return arr; }, []); R(scriptFile).data(JSON.stringify(packageVersions), mdepath).call((err, result) => { if (err) { repository_1.ApplicationLogger.writeLog(LogLevels.info, 'Update R packages >> ' + err); } else { if (result === 'success') { callback({ result: 'ok', message: result }); } } }); } catch (e) { callback({ result: 'error', message: e }); } } } exports.Utilities = Utilities;