diff --git a/src/arquero.js b/src/arquero.js new file mode 100644 index 00000000..04df5a48 --- /dev/null +++ b/src/arquero.js @@ -0,0 +1,4 @@ +export function isArqueroTable(value) { + // Arquero tables have a `toArrowBuffer` function + return value && typeof value.toArrowBuffer === "function"; +} diff --git a/src/duckdb.js b/src/duckdb.js index 52b7199e..698fadc4 100644 --- a/src/duckdb.js +++ b/src/duckdb.js @@ -1,8 +1,8 @@ +import {isArqueroTable} from "./arquero.js"; import {getArrowTableSchema, isArrowTable, loadArrow} from "./arrow.js"; import {duckdb} from "./dependencies.js"; import {FileAttachment} from "./fileAttachment.js"; import {cdn} from "./require.js"; -import {isArqueroTable} from "./table.js"; // Adapted from https://observablehq.com/@cmudig/duckdb-client // Copyright 2021 CMU Data Interaction Group diff --git a/src/index.js b/src/index.js index 55994f54..a7e65a84 100644 --- a/src/index.js +++ b/src/index.js @@ -1,12 +1,12 @@ export {FileAttachments, AbstractFile} from "./fileAttachment.js"; export {Library} from "./library.js"; export {getArrowTableSchema, isArrowTable} from "./arrow.js"; +export {isArqueroTable} from "./arquero.js"; export { makeQueryTemplate, loadDataSource, arrayIsPrimitive, isDataArray, isDatabaseClient, - isArqueroTable, __table as applyDataTableOperations } from "./table.js"; diff --git a/src/table.js b/src/table.js index fc07f90b..d9ee5935 100644 --- a/src/table.js +++ b/src/table.js @@ -1,5 +1,6 @@ import {ascending, descending, reverse} from "d3-array"; import {FileAttachment} from "./fileAttachment.js"; +import {isArqueroTable} from "./arquero.js"; import {isArrowTable, loadArrow} from "./arrow.js"; import {DuckDBClient} from "./duckdb.js"; @@ -141,11 +142,6 @@ function isTypedArray(value) { ); } -export function isArqueroTable(value) { - // Arquero tables have a `toArrowBuffer` function - return value && typeof value.toArrowBuffer === "function"; -} - // __query is used by table cells; __query.sql is used by SQL cells. export const __query = Object.assign( async (source, operations, invalidation, name) => {