Skip to content

Commit

Permalink
Session 1
Browse files Browse the repository at this point in the history
  • Loading branch information
jkuester committed Oct 3, 2024
1 parent 8e61099 commit f45ed23
Showing 1 changed file with 16 additions and 4 deletions.
20 changes: 16 additions & 4 deletions src/fn/edit-contacts.js
Original file line number Diff line number Diff line change
Expand Up @@ -105,22 +105,34 @@ function getIDs(csv, docType) {
return rows.map((item) => idPrefix + item[index]);
}

const filterColumnsByName = (columnNames) => (column) => columnNames.includes(column.split(':')[0]);
const filterColumnsByName = (columnNames, column) => columnNames.includes(column.split(':')[0]);

const getColumnsToInclude = (columnNamesToInclude, allColumns) => {
if (columnNamesToInclude.length === 0 ) {
return allColumns;
}
return allColumns.filter((column) => filterColumnsByName(columnNamesToInclude, column));

const includedColumnFilter = filterColumnsByName(columnNamesToInclude);
return allColumns.filter(includedColumnFilter);
}

function processDocs(docType, csv, documentDocs, args) {
const { rows, cols } = fs.readCsv(csv);
const uuidIndex = cols.indexOf(DOCUMENT_ID);
const colNames = args.colNames;
let toIncludeColumns, toIncludeIndex;
const toIncludeColumns = getColumnsToInclude(colNames, cols);
let toIncludeIndex;
if (!colNames.length) {
warn(' No columns specified, the script will add all the columns in the CSV!');
toIncludeColumns = cols;
toIncludeIndex = [];

} else {
if (!columnsAreValid(cols,colNames)) {
throw Error('The column name(s) specified do not exist.');
}

toIncludeColumns = cols.filter(column => colNames.includes(column.split(':')[0]));
toIncludeIndex = toIncludeColumns.map(column => cols.indexOf(column));

if (toIncludeColumns.includes(DOCUMENT_ID)) {
Expand Down Expand Up @@ -196,4 +208,4 @@ const parseExtraArgs = (projectDir, extraArgs = []) => {
module.exports = {
requiresInstance: true,
execute
};
};

0 comments on commit f45ed23

Please sign in to comment.