refactor: default csv-parse params

This commit is contained in:
hyper
2026-03-31 14:45:02 +08:00
parent 3a6f57ef6f
commit 9a8cdcaaea
2 changed files with 19 additions and 4 deletions
+13 -4
View File
@@ -6,6 +6,9 @@ export interface CsvLoaderOptions {
delimiter?: string;
quote?: string;
escape?: string;
bom?: boolean;
comment?: string | false;
trim?: boolean;
}
interface PropertyConfig {
@@ -19,15 +22,21 @@ export default function csvLoader(
this: LoaderContext<CsvLoaderOptions>,
content: string
): string | Buffer {
const options = this.getOptions() || {};
const delimiter = options.delimiter ?? ',';
const quote = options.quote ?? '"';
const escape = options.escape ?? '\\';
const options = this.getOptions() as CsvLoaderOptions | undefined;
const delimiter = options?.delimiter ?? ',';
const quote = options?.quote ?? '"';
const escape = options?.escape ?? '\\';
const bom = options?.bom ?? true;
const comment = options?.comment === false ? undefined : (options?.comment ?? '#');
const trim = options?.trim ?? true;
const records = parse(content, {
delimiter,
quote,
escape,
bom,
comment,
trim,
relax_column_count: true,
});