@loaders.gl/csv
Version:
Framework-independent loader for CSV and DSV table formats
24 lines • 1.07 kB
JavaScript
// loaders.gl
// SPDX-License-Identifier: MIT
// Copyright (c) vis.gl contributors
import { convertTable, convertBatches } from '@loaders.gl/schema-utils';
import { CSVLoader } from "./csv-loader.js";
export const CSVArrowLoader = {
...CSVLoader,
dataType: null,
batchType: null,
parse: async (arrayBuffer, options) => parseCSVToArrow(new TextDecoder().decode(arrayBuffer), options),
parseText: (text, options) => parseCSVToArrow(text, options),
parseInBatches: parseCSVToArrowBatches
};
async function parseCSVToArrow(csvText, options) {
// Apps can call the parse method directly, we so apply default options here
// const csvOptions = {...CSVArrowLoader.options.csv, ...options?.csv};
const table = await CSVLoader.parseText(csvText, options);
return convertTable(table, 'arrow-table');
}
function parseCSVToArrowBatches(asyncIterator, options) {
const tableIterator = CSVLoader.parseInBatches(asyncIterator, options);
return convertBatches(tableIterator, 'arrow-table');
}
//# sourceMappingURL=csv-arrow-loader.js.map