// ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ // ┃ ██████ ██████ ██████ █ █ █ █ █ █▄ ▀███ █ ┃ // ┃ ▄▄▄▄▄█ █▄▄▄▄▄ ▄▄▄▄▄█ ▀▀▀▀▀█▀▀▀▀▀ █ ▀▀▀▀▀█ ████████▌▐███ ███▄ ▀█ █ ▀▀▀▀▀ ┃ // ┃ █▀▀▀▀▀ █▀▀▀▀▀ █▀██▀▀ ▄▄▄▄▄ █ ▄▄▄▄▄█ ▄▄▄▄▄█ ████████▌▐███ █████▄ █ ▄▄▄▄▄ ┃ // ┃ █ ██████ █ ▀█▄ █ ██████ █ ███▌▐███ ███████▄ █ ┃ // ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫ // ┃ Copyright (c) 2017, the Perspective Authors. ┃ // ┃ ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ ┃ // ┃ This file is part of the Perspective library, distributed under the terms ┃ // ┃ of the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). ┃ // ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ import * as fs from "node:fs"; import * as path from "node:path"; import * as url from "node:url"; // globalThis.require = createRequire(import.meta.url); const __filename = url.fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); /** * Returns an `ArrayBuffer` containing the contents of a `.arrow` file * located at `arrow_path`. * * Because `fs.readFileSync` shares its underlying buffer * between calls to `readFileSync`, we need to get a slice * of the `ArrayBuffer` specifically at its byte offset. * * See https://github.com/nodejs/node/issues/11132 for more details. * * @param arrow_path {String} a path to an arrow file. * @returns {ArrayBuffer} an ArrayBuffer containing the arrow-serialized data. */ function load_arrow(arrow_path) { const data = fs.readFileSync(arrow_path); return data.buffer.slice( data.byteOffset, data.byteOffset + data.byteLength, ); } export const chunked_arrow = load_arrow( path.join(__dirname, "..", "arrow", "chunked.arrow"), ); export const test_null_arrow = load_arrow( path.join(__dirname, "..", "arrow", "test_null.arrow"), ); export const test_arrow = load_arrow( path.join(__dirname, "..", "arrow", "test.arrow"), ); export const partial_arrow = load_arrow( path.join(__dirname, "..", "arrow", "partial.arrow"), ); export const partial_missing_rows_arrow = load_arrow( path.join(__dirname, "..", "arrow", "partial_missing_rows.arrow"), ); export const int_float_str_arrow = load_arrow( path.join(__dirname, "..", "arrow", "int_float_str.arrow"), ); export const int_float_str_update_arrow = load_arrow( path.join(__dirname, "..", "arrow", "int_float_str_update.arrow"), ); export const int_float_str_file_arrow = load_arrow( path.join(__dirname, "..", "arrow", "int_float_str_file.arrow"), ); export const float32_arrow = load_arrow( path.join(__dirname, "..", "arrow", "float32.arrow"), ); export const date32_arrow = load_arrow( path.join(__dirname, "..", "arrow", "date32.arrow"), ); export const date64_arrow = load_arrow( path.join(__dirname, "..", "arrow", "date64.arrow"), ); export const dict_arrow = load_arrow( path.join(__dirname, "..", "arrow", "dict.arrow"), ); export const dict_update_arrow = load_arrow( path.join(__dirname, "..", "arrow", "dict_update.arrow"), ); export const numbers_arrow = load_arrow( path.join(__dirname, "..", "arrow", "number_types.arrow"), ); export const all_types_arrow = load_arrow( path.join(__dirname, "..", "arrow", "all_types_small.arrow"), ); // uint8-64 x2, int8-64 x2, date, datetime, bool, string export const all_types_multi_arrow = load_arrow( path.join(__dirname, "..", "arrow", "all_types_small_multi.arrow"), ); export const lists_arrow = load_arrow( path.join(__dirname, "..", "arrow", "lists.arrow"), ); // module.exports = { // chunked_arrow, // test_null_arrow, // test_arrow, // partial_arrow, // partial_missing_rows_arrow, // int_float_str_arrow, // int_float_str_update_arrow, // int_float_str_file_arrow, // date32_arrow, // date64_arrow, // dict_arrow, // dict_update_arrow, // numbers_arrow, // all_types_arrow, // all_types_multi_arrow, // };