45 lines
994 B
JavaScript
45 lines
994 B
JavaScript
import fs from "fs";
|
|
|
|
const databaseCSV = fs.readFileSync("database.csv", {
|
|
encoding: "utf8",
|
|
flag: "r",
|
|
});
|
|
|
|
export function splitNewLines(string) {
|
|
return string.split(/\n/);
|
|
}
|
|
|
|
export function cleanupArrayOfStrings(arrayOfStrings) {
|
|
return arrayOfStrings.map((line) => line.trim()).filter((line) => line != "");
|
|
}
|
|
|
|
export function stringCsvToDataObject(string) {
|
|
let splitString = string.split(",");
|
|
if (splitString[2].trim() == "") splitString[2] = splitString[1];
|
|
|
|
const [
|
|
nominative,
|
|
accusative,
|
|
pronominalPossessive,
|
|
predicativePossessive,
|
|
reflexive,
|
|
] = cleanupArrayOfStrings(splitString);
|
|
|
|
return {
|
|
nominative,
|
|
accusative,
|
|
pronominalPossessive,
|
|
predicativePossessive,
|
|
reflexive,
|
|
};
|
|
}
|
|
|
|
export default function () {
|
|
const databaseCSV = fs.readFileSync("database.csv", {
|
|
encoding: "utf8",
|
|
flag: "r",
|
|
});
|
|
return cleanupArrayOfStrings(splitNewLines(databaseCSV)).map((line) =>
|
|
stringCsvToDataObject(line)
|
|
);
|
|
}
|