add duckdb-ui-client & other ts pkgs (#10)
* add duckdb-ui-client & other ts pkgs * workflow fixes * fix working dir * no sparse checkout; specify package.json path * path to pnpm-lock.yaml * add check & build test * workflow step descriptions * use comments & names * one more naming tweak
This commit is contained in:
32
ts/pkgs/duckdb-data-reader/src/MemoryDuckDBData.ts
Normal file
32
ts/pkgs/duckdb-data-reader/src/MemoryDuckDBData.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
import { DuckDBType } from '@duckdb/data-types';
|
||||
import { DuckDBValue } from '@duckdb/data-values';
|
||||
import { DuckDBData } from './DuckDBData.js';
|
||||
|
||||
export class MemoryDuckDBData extends DuckDBData {
|
||||
constructor(
|
||||
private columns: { name: string; type: DuckDBType }[],
|
||||
private values: DuckDBValue[][],
|
||||
) {
|
||||
super();
|
||||
}
|
||||
|
||||
get columnCount() {
|
||||
return this.columns.length;
|
||||
}
|
||||
|
||||
get rowCount() {
|
||||
return this.values.length > 0 ? this.values[0].length : 0;
|
||||
}
|
||||
|
||||
columnName(columnIndex: number): string {
|
||||
return this.columns[columnIndex].name;
|
||||
}
|
||||
|
||||
columnType(columnIndex: number): DuckDBType {
|
||||
return this.columns[columnIndex].type;
|
||||
}
|
||||
|
||||
value(columnIndex: number, rowIndex: number): DuckDBValue {
|
||||
return this.values[columnIndex][rowIndex];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user