diff --git a/src/csv-loader/loader.ts b/src/csv-loader/loader.ts index a2fe4e2..1c213d2 100644 --- a/src/csv-loader/loader.ts +++ b/src/csv-loader/loader.ts @@ -1199,7 +1199,8 @@ export function csvToModule( reverseLookupInits.push( `const ${revLookupVar} = new Map();`, `for (const r of _raw) {`, - ` const k = String(r.${decl.foreignKey});`, + ` const kv = r.${decl.foreignKey};`, + ` const k = String(typeof kv === "object" && "${defaultPrimaryKey}" in kv ? kv.${defaultPrimaryKey} : kv);`, ` if (!${revLookupVar}.has(k)) ${revLookupVar}.set(k, []);`, ` ${revLookupVar}.get(k).push(r);`, `}`, @@ -1209,7 +1210,8 @@ export function csvToModule( reverseLookupInits.push( `const ${revLookupVar} = new Map();`, `for (const r of ${varName}()) {`, - ` const k = String(r.${decl.foreignKey});`, + ` const kv = r.${decl.foreignKey};`, + ` const k = String(typeof kv === "object" && "${defaultPrimaryKey}" in kv ? kv.${defaultPrimaryKey} : kv);`, ` if (!${revLookupVar}.has(k)) ${revLookupVar}.set(k, []);`, ` ${revLookupVar}.get(k).push(r);`, `}`,