buildUpsertRows method
Build upsert rows with optional scope injection. Exposed for tests.
Implementation
List<Map<String, dynamic>> buildUpsertRows(List<T> items) {
final rows = <Map<String, dynamic>>[];
for (final item in items) {
Map<String, dynamic> scopeCols = const {};
if (config.injectScopeOnWrite) {
final s = config.scopeForUpsert?.call(item) ?? config.defaultScope;
if (s != null) scopeCols = _scopeColsFor(s);
}
rows.add({
...config.toJson(item),
config.idColumn: config.idToString(config.idOf(item)),
...scopeCols,
});
}
return rows;
}