Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@apache-arrow/es2015-esm

Package Overview
Dependencies
Maintainers
6
Versions
45
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@apache-arrow/es2015-esm - npm Package Compare versions

Comparing version 7.0.0 to 8.0.0

3

Arrow.d.ts

@@ -12,4 +12,5 @@ export { MessageHeader } from './fb/message-header.js';

export { StructRow } from './row/struct.js';
export type { StructRowProxy } from './row/struct.js';
export { Builder } from './builder.js';
export { makeBuilder, vectorFromArray, builderThroughIterable, builderThroughAsyncIterable } from './factories.js';
export { makeBuilder, vectorFromArray, tableFromJSON, builderThroughIterable, builderThroughAsyncIterable } from './factories.js';
export type { BuilderOptions } from './builder.js';

@@ -16,0 +17,0 @@ export { BoolBuilder } from './builder/bool.js';

@@ -1,3 +0,3 @@

export type { TypeMap, ReadableSource, WritableSink, ArrowJSONLike, FileHandle, Readable, Writable, ReadableWritable, ReadableDOMStreamOptions, } from './Arrow.js';
export { DateUnit, IntervalUnit, MessageHeader, MetadataVersion, Precision, TimeUnit, Type, UnionMode, BufferType, Data, makeData, DataType, Null, Bool, Int, Int8, Int16, Int32, Int64, Uint8, Uint16, Uint32, Uint64, Float, Float16, Float32, Float64, Utf8, Binary, FixedSizeBinary, Date_, DateDay, DateMillisecond, Timestamp, TimestampSecond, TimestampMillisecond, TimestampMicrosecond, TimestampNanosecond, Time, TimeSecond, TimeMillisecond, TimeMicrosecond, TimeNanosecond, Decimal, List, Struct, StructRow, Union, DenseUnion, SparseUnion, Dictionary, Interval, IntervalDayTime, IntervalYearMonth, FixedSizeList, Map_, MapRow, Table, makeTable, tableFromArrays, Schema, Field, Visitor, Vector, makeVector, vectorFromArray, ByteStream, AsyncByteStream, AsyncByteQueue, RecordBatchReader, RecordBatchFileReader, RecordBatchStreamReader, AsyncRecordBatchFileReader, AsyncRecordBatchStreamReader, RecordBatchWriter, RecordBatchFileWriter, RecordBatchStreamWriter, RecordBatchJSONWriter, tableFromIPC, tableToIPC, MessageReader, AsyncMessageReader, JSONMessageReader, Message, RecordBatch, util, Builder, makeBuilder, builderThroughIterable, builderThroughAsyncIterable, } from './Arrow.js';
export type { TypeMap, StructRowProxy, ReadableSource, WritableSink, ArrowJSONLike, FileHandle, Readable, Writable, ReadableWritable, ReadableDOMStreamOptions, } from './Arrow.js';
export { DateUnit, IntervalUnit, MessageHeader, MetadataVersion, Precision, TimeUnit, Type, UnionMode, BufferType, Data, makeData, DataType, Null, Bool, Int, Int8, Int16, Int32, Int64, Uint8, Uint16, Uint32, Uint64, Float, Float16, Float32, Float64, Utf8, Binary, FixedSizeBinary, Date_, DateDay, DateMillisecond, Timestamp, TimestampSecond, TimestampMillisecond, TimestampMicrosecond, TimestampNanosecond, Time, TimeSecond, TimeMillisecond, TimeMicrosecond, TimeNanosecond, Decimal, List, Struct, StructRow, Union, DenseUnion, SparseUnion, Dictionary, Interval, IntervalDayTime, IntervalYearMonth, FixedSizeList, Map_, MapRow, Table, makeTable, tableFromArrays, Schema, Field, Visitor, Vector, makeVector, vectorFromArray, tableFromJSON, ByteStream, AsyncByteStream, AsyncByteQueue, RecordBatchReader, RecordBatchFileReader, RecordBatchStreamReader, AsyncRecordBatchFileReader, AsyncRecordBatchStreamReader, RecordBatchWriter, RecordBatchFileWriter, RecordBatchStreamWriter, RecordBatchJSONWriter, tableFromIPC, tableToIPC, MessageReader, AsyncMessageReader, JSONMessageReader, Message, RecordBatch, util, Builder, makeBuilder, builderThroughIterable, builderThroughAsyncIterable, } from './Arrow.js';
export { BinaryBuilder, BoolBuilder, DateBuilder, DateDayBuilder, DateMillisecondBuilder, DecimalBuilder, DictionaryBuilder, FixedSizeBinaryBuilder, FixedSizeListBuilder, FloatBuilder, Float16Builder, Float32Builder, Float64Builder, IntervalBuilder, IntervalDayTimeBuilder, IntervalYearMonthBuilder, IntBuilder, Int8Builder, Int16Builder, Int32Builder, Int64Builder, Uint8Builder, Uint16Builder, Uint32Builder, Uint64Builder, ListBuilder, MapBuilder, NullBuilder, StructBuilder, TimestampBuilder, TimestampSecondBuilder, TimestampMillisecondBuilder, TimestampMicrosecondBuilder, TimestampNanosecondBuilder, TimeBuilder, TimeSecondBuilder, TimeMillisecondBuilder, TimeMicrosecondBuilder, TimeNanosecondBuilder, UnionBuilder, DenseUnionBuilder, SparseUnionBuilder, Utf8Builder, } from './Arrow.js';

@@ -33,5 +33,5 @@ // Licensed to the Apache Software Foundation (ASF) under one

RecordBatchStreamWriter['throughDOM'] = recordBatchWriterThroughDOMStream;
export { DateUnit, IntervalUnit, MessageHeader, MetadataVersion, Precision, TimeUnit, Type, UnionMode, BufferType, Data, makeData, DataType, Null, Bool, Int, Int8, Int16, Int32, Int64, Uint8, Uint16, Uint32, Uint64, Float, Float16, Float32, Float64, Utf8, Binary, FixedSizeBinary, Date_, DateDay, DateMillisecond, Timestamp, TimestampSecond, TimestampMillisecond, TimestampMicrosecond, TimestampNanosecond, Time, TimeSecond, TimeMillisecond, TimeMicrosecond, TimeNanosecond, Decimal, List, Struct, StructRow, Union, DenseUnion, SparseUnion, Dictionary, Interval, IntervalDayTime, IntervalYearMonth, FixedSizeList, Map_, MapRow, Table, makeTable, tableFromArrays, Schema, Field, Visitor, Vector, makeVector, vectorFromArray, ByteStream, AsyncByteStream, AsyncByteQueue, RecordBatchReader, RecordBatchFileReader, RecordBatchStreamReader, AsyncRecordBatchFileReader, AsyncRecordBatchStreamReader, RecordBatchWriter, RecordBatchFileWriter, RecordBatchStreamWriter, RecordBatchJSONWriter, tableFromIPC, tableToIPC, MessageReader, AsyncMessageReader, JSONMessageReader, Message, RecordBatch, util, Builder, makeBuilder, builderThroughIterable, builderThroughAsyncIterable, } from './Arrow.js';
export { DateUnit, IntervalUnit, MessageHeader, MetadataVersion, Precision, TimeUnit, Type, UnionMode, BufferType, Data, makeData, DataType, Null, Bool, Int, Int8, Int16, Int32, Int64, Uint8, Uint16, Uint32, Uint64, Float, Float16, Float32, Float64, Utf8, Binary, FixedSizeBinary, Date_, DateDay, DateMillisecond, Timestamp, TimestampSecond, TimestampMillisecond, TimestampMicrosecond, TimestampNanosecond, Time, TimeSecond, TimeMillisecond, TimeMicrosecond, TimeNanosecond, Decimal, List, Struct, StructRow, Union, DenseUnion, SparseUnion, Dictionary, Interval, IntervalDayTime, IntervalYearMonth, FixedSizeList, Map_, MapRow, Table, makeTable, tableFromArrays, Schema, Field, Visitor, Vector, makeVector, vectorFromArray, tableFromJSON, ByteStream, AsyncByteStream, AsyncByteQueue, RecordBatchReader, RecordBatchFileReader, RecordBatchStreamReader, AsyncRecordBatchFileReader, AsyncRecordBatchStreamReader, RecordBatchWriter, RecordBatchFileWriter, RecordBatchStreamWriter, RecordBatchJSONWriter, tableFromIPC, tableToIPC, MessageReader, AsyncMessageReader, JSONMessageReader, Message, RecordBatch, util, Builder, makeBuilder, builderThroughIterable, builderThroughAsyncIterable, } from './Arrow.js';
export { BinaryBuilder, BoolBuilder, DateBuilder, DateDayBuilder, DateMillisecondBuilder, DecimalBuilder, DictionaryBuilder, FixedSizeBinaryBuilder, FixedSizeListBuilder, FloatBuilder, Float16Builder, Float32Builder, Float64Builder, IntervalBuilder, IntervalDayTimeBuilder, IntervalYearMonthBuilder, IntBuilder, Int8Builder, Int16Builder, Int32Builder, Int64Builder, Uint8Builder, Uint16Builder, Uint32Builder, Uint64Builder, ListBuilder, MapBuilder, NullBuilder, StructBuilder, TimestampBuilder, TimestampSecondBuilder, TimestampMillisecondBuilder, TimestampMicrosecondBuilder, TimestampNanosecondBuilder, TimeBuilder, TimeSecondBuilder, TimeMillisecondBuilder, TimeMicrosecondBuilder, TimeNanosecondBuilder, UnionBuilder, DenseUnionBuilder, SparseUnionBuilder, Utf8Builder, } from './Arrow.js';
//# sourceMappingURL=Arrow.dom.mjs.map

@@ -28,3 +28,3 @@ // Licensed to the Apache Software Foundation (ASF) under one

export { Builder } from './builder.js';
export { makeBuilder, vectorFromArray, builderThroughIterable, builderThroughAsyncIterable } from './factories.js';
export { makeBuilder, vectorFromArray, tableFromJSON, builderThroughIterable, builderThroughAsyncIterable } from './factories.js';
export { BoolBuilder } from './builder/bool.js';

@@ -31,0 +31,0 @@ export { NullBuilder } from './builder/null.js';

@@ -22,9 +22,9 @@ #! /usr/bin/env node

/* eslint-disable unicorn/no-array-for-each */
const fs = (0, tslib_1.__importStar)(require("fs"));
const stream = (0, tslib_1.__importStar)(require("stream"));
const fs = tslib_1.__importStar(require("fs"));
const stream = tslib_1.__importStar(require("stream"));
const pretty_js_1 = require("../util/pretty.js");
const Arrow_node_js_1 = require("../Arrow.node.js");
const command_line_usage_1 = (0, tslib_1.__importDefault)(require("command-line-usage"));
const command_line_args_1 = (0, tslib_1.__importDefault)(require("command-line-args"));
const pad_left_1 = (0, tslib_1.__importDefault)(require("pad-left"));
const command_line_usage_1 = tslib_1.__importDefault(require("command-line-usage"));
const command_line_args_1 = tslib_1.__importDefault(require("command-line-args"));
const pad_left_1 = tslib_1.__importDefault(require("pad-left"));
// @ts-ignore

@@ -35,3 +35,3 @@ const json_bignum_1 = require("json-bignum");

const state = Object.assign(Object.assign({}, argv), { closed: false, maxColWidths: [10] });
(() => (0, tslib_1.__awaiter)(void 0, void 0, void 0, function* () {
(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
var e_1, _a;

@@ -49,3 +49,3 @@ const sources = argv.help ? [] : [

try {
for (var _b = (e_1 = void 0, (0, tslib_1.__asyncValues)(recordBatchReaders(source))), _c; _c = yield _b.next(), !_c.done;) {
for (var _b = (e_1 = void 0, tslib_1.__asyncValues(recordBatchReaders(source))), _c; _c = yield _b.next(), !_c.done;) {
reader = _c.value;

@@ -89,3 +89,3 @@ hasReaders = true;

function recordBatchReaders(createSourceStream) {
return (0, tslib_1.__asyncGenerator)(this, arguments, function* recordBatchReaders_1() {
return tslib_1.__asyncGenerator(this, arguments, function* recordBatchReaders_1() {
var e_2, _a, e_3, _b;

@@ -103,5 +103,5 @@ const json = new Arrow_node_js_1.AsyncByteQueue();

try {
for (var _c = (0, tslib_1.__asyncValues)(Arrow_node_js_1.RecordBatchReader.readAll(stream)), _d; _d = yield (0, tslib_1.__await)(_c.next()), !_d.done;) {
for (var _c = tslib_1.__asyncValues(Arrow_node_js_1.RecordBatchReader.readAll(stream)), _d; _d = yield tslib_1.__await(_c.next()), !_d.done;) {
reader = _d.value;
reader && (yield yield (0, tslib_1.__await)(reader));
reader && (yield yield tslib_1.__await(reader));
}

@@ -112,3 +112,3 @@ }

try {
if (_d && !_d.done && (_a = _c.return)) yield (0, tslib_1.__await)(_a.call(_c));
if (_d && !_d.done && (_a = _c.return)) yield tslib_1.__await(_a.call(_c));
}

@@ -118,3 +118,3 @@ finally { if (e_2) throw e_2.error; }

if (reader)
return yield (0, tslib_1.__await)(void 0);
return yield tslib_1.__await(void 0);
}

@@ -125,3 +125,3 @@ catch (_e) {

if (!readers) {
yield (0, tslib_1.__await)(json.closed);
yield tslib_1.__await(json.closed);
if (source instanceof fs.ReadStream) {

@@ -133,5 +133,5 @@ source.close();

try {
for (var _f = (0, tslib_1.__asyncValues)(Arrow_node_js_1.RecordBatchReader.readAll((0, json_bignum_1.parse)(yield (0, tslib_1.__await)(json.toString())))), _g; _g = yield (0, tslib_1.__await)(_f.next()), !_g.done;) {
for (var _f = tslib_1.__asyncValues(Arrow_node_js_1.RecordBatchReader.readAll((0, json_bignum_1.parse)(yield tslib_1.__await(json.toString())))), _g; _g = yield tslib_1.__await(_f.next()), !_g.done;) {
reader = _g.value;
reader && (yield yield (0, tslib_1.__await)(reader));
reader && (yield yield tslib_1.__await(reader));
}

@@ -142,3 +142,3 @@ }

try {
if (_g && !_g.done && (_b = _f.return)) yield (0, tslib_1.__await)(_b.call(_f));
if (_g && !_g.done && (_b = _f.return)) yield tslib_1.__await(_b.call(_f));
}

@@ -145,0 +145,0 @@ finally { if (e_3) throw e_3.error; }

@@ -6,3 +6,5 @@ import { Builder } from '../builder.js';

setValue(index: number, value: Struct<T>['TValue']): void;
/** @inheritdoc */
setValid(index: number, valid: boolean): boolean;
addChild(child: Builder, name?: string): number;
}

@@ -24,9 +24,16 @@ // Licensed to the Apache Software Foundation (ASF) under one

setValue(index, value) {
const children = this.children;
const { children, type } = this;
switch (Array.isArray(value) || value.constructor) {
case true: return this.type.children.forEach((_, i) => children[i].set(index, value[i]));
case Map: return this.type.children.forEach((f, i) => children[i].set(index, value.get(f.name)));
default: return this.type.children.forEach((f, i) => children[i].set(index, value[f.name]));
case true: return type.children.forEach((_, i) => children[i].set(index, value[i]));
case Map: return type.children.forEach((f, i) => children[i].set(index, value.get(f.name)));
default: return type.children.forEach((f, i) => children[i].set(index, value[f.name]));
}
}
/** @inheritdoc */
setValid(index, valid) {
if (!super.setValid(index, valid)) {
this.children.forEach((child) => child.setValid(index, valid));
}
return valid;
}
addChild(child, name = `${this.numChildren}`) {

@@ -33,0 +40,0 @@ const childIndex = this.children.push(child);

import * as dtypes from './type.js';
import { Data, DataProps } from './data.js';
import { BuilderType } from './interfaces.js';
import { BuilderType, JavaScriptDataType } from './interfaces.js';
import { Vector } from './vector.js';
import { Builder, BuilderOptions } from './builder.js';
import { ArrayDataType, BigIntArray, JavaScriptArrayDataType, TypedArray, TypedArrayDataType } from './interfaces.js';
import { Table } from './table.js';
export declare function makeBuilder<T extends dtypes.DataType = any, TNull = any>(options: BuilderOptions<T, TNull>): BuilderType<T, TNull>;

@@ -17,2 +18,3 @@ /**

* const vdict = vectorFromArray(['foo', 'bar']);
* const vstruct = vectorFromArray([{a: 'foo', b: 42}, {a: 'bar', b: 12}]);
* ```

@@ -36,2 +38,10 @@ */

/**
* Creates a {@link Table} from an array of objects.
*
* @param array A table of objects.
*/
export declare function tableFromJSON<T extends Record<string, unknown>>(array: T[]): Table<{
[P in keyof T]: JavaScriptDataType<T[P]>;
}>;
/**
* A set of options to create an Iterable or AsyncIterable `Builder` transform function.

@@ -38,0 +48,0 @@ * @see {@link builderThroughIterable}

@@ -18,2 +18,3 @@ // Licensed to the Apache Software Foundation (ASF) under one

import { __asyncGenerator, __asyncValues, __await } from "tslib";
import { Field, Schema } from './schema.js';
import * as dtypes from './type.js';

@@ -23,2 +24,5 @@ import { Data } from './data.js';

import { instance as getBuilderConstructor } from './visitor/builderctor.js';
import { Table } from './table.js';
import { RecordBatch } from './recordbatch.js';
import { compareTypes } from './visitor/typecomparator.js';
export function makeBuilder(options) {

@@ -53,3 +57,12 @@ const type = options.type;

}
/** @ignore */
/**
* Creates a {@link Table} from an array of objects.
*
* @param array A table of objects.
*/
export function tableFromJSON(array) {
const vector = vectorFromArray(array);
const batch = new RecordBatch(new Schema(vector.type.children), vector.data[0]);
return new Table(batch);
}
function inferType(value) {

@@ -60,5 +73,3 @@ if (value.length === 0) {

let nullsCount = 0;
// @ts-ignore
let arraysCount = 0;
// @ts-ignore
let objectsCount = 0;

@@ -117,3 +128,21 @@ let numbersCount = 0;

}
// TODO: add more types to infererence
else if (arraysCount + nullsCount === value.length) {
const array = value;
const childType = inferType(array[array.findIndex((ary) => ary != null)]);
if (array.every((ary) => ary == null || compareTypes(childType, inferType(ary)))) {
return new dtypes.List(new Field('', childType, true));
}
}
else if (objectsCount + nullsCount === value.length) {
const fields = new Map();
for (const row of value) {
for (const key of Object.keys(row)) {
if (!fields.has(key) && row[key] != null) {
// use the type inferred for the first instance of a found key
fields.set(key, new Field(key, inferType([row[key]]), true));
}
}
}
return new dtypes.Struct([...fields.values()]);
}
throw new TypeError('Unable to infer Vector type from input values, explicit type declaration expected');

@@ -120,0 +149,0 @@ }

@@ -97,4 +97,8 @@ import * as type from './type.js';

/** @ignore */
export declare type JavaScriptArrayDataType<T extends readonly unknown[]> = T extends readonly (null | undefined)[] ? type.Null : T extends readonly (null | undefined | boolean)[] ? type.Bool : T extends readonly (null | undefined | string)[] ? type.Dictionary<type.Utf8, type.Int32> : T extends readonly (null | undefined | Date)[] ? type.Date_ : T extends readonly (null | undefined | bigint)[] ? type.Int64 : T extends readonly (null | undefined | number)[] ? type.Float64 : never;
export declare type JavaScriptDataType<T> = JavaScriptArrayDataType<T[]>;
/** @ignore */
export declare type JavaScriptArrayDataType<T extends readonly unknown[]> = T extends readonly (null | undefined)[] ? type.Null : T extends readonly (null | undefined | boolean)[] ? type.Bool : T extends readonly (null | undefined | string)[] ? type.Dictionary<type.Utf8, type.Int32> : T extends readonly (null | undefined | Date)[] ? type.Date_ : T extends readonly (null | undefined | bigint)[] ? type.Int64 : T extends readonly (null | undefined | number)[] ? type.Float64 : T extends readonly (null | undefined | readonly (infer U)[])[] ? type.List<JavaScriptDataType<U>> : T extends readonly (null | undefined | Record<string, unknown>)[] ? T extends readonly (null | undefined | infer U)[] ? type.Struct<{
[P in keyof U]: JavaScriptDataType<U[P]>;
}> : never : never;
/** @ignore */
export declare type ArrayDataType<T> = T extends TypedArray | BigIntArray ? TypedArrayDataType<T> : T extends readonly unknown[] ? JavaScriptArrayDataType<T> : never;

@@ -101,0 +105,0 @@ /** @ignore */

@@ -217,2 +217,5 @@ // Licensed to the Apache Software Foundation (ASF) under one

function decodeRecordBatch(batch, version = MetadataVersion.V4) {
if (batch.compression() !== null) {
throw new Error('Record batch compression not implemented');
}
return new RecordBatch(batch.length(), decodeFieldNodes(batch), decodeBuffers(batch, version));

@@ -219,0 +222,0 @@ }

{
"version": "7.0.0",
"version": "8.0.0",
"name": "@apache-arrow/es2015-esm",

@@ -32,6 +32,6 @@ "browser": "Arrow.dom.js",

"@types/command-line-usage": "5.0.2",
"@types/node": "^17.0.8",
"@types/node": "^17.0.24",
"@types/pad-left": "2.1.1",
"command-line-args": "5.2.0",
"command-line-usage": "6.1.1",
"command-line-args": "5.2.1",
"command-line-usage": "6.1.3",
"flatbuffers": "2.0.4",

@@ -38,0 +38,0 @@ "json-bignum": "^0.0.3",

@@ -47,3 +47,3 @@ import { Data } from './data.js';

*/
get(index: number): import("./row/struct.js").StructRowProxy<T> | null;
get(index: number): import("./Arrow.js").StructRowProxy<T> | null;
/**

@@ -69,3 +69,3 @@ * Set a row by position.

*/
[Symbol.iterator](): IterableIterator<import("./row/struct.js").StructRowProxy<T> | null>;
[Symbol.iterator](): IterableIterator<import("./Arrow.js").StructRowProxy<T>>;
/**

@@ -75,3 +75,3 @@ * Return a JavaScript Array of the RecordBatch rows.

*/
toArray(): (import("./row/struct.js").StructRowProxy<T> | null)[];
toArray(): import("./Arrow.js").StructRowProxy<T>[];
/**

@@ -78,0 +78,0 @@ * Combines two or more RecordBatch of the same schema.

@@ -7,2 +7,4 @@ import { Data } from '../data.js';

[P in keyof T]: T[P]['TValue'];
} & {
[key: symbol]: any;
};

@@ -9,0 +11,0 @@ export declare class StructRow<T extends TypeMap = any> {

@@ -114,3 +114,3 @@ // Licensed to the Apache Software Foundation (ASF) under one

}
else if (Reflect.has(row, key)) {
else if (Reflect.has(row, key) || typeof key === 'symbol') {
return Reflect.set(row, key, val);

@@ -117,0 +117,0 @@ }

@@ -37,3 +37,3 @@ // Licensed to the Apache Software Foundation (ASF) under one

export type {
TypeMap,
TypeMap, StructRowProxy,
ReadableSource, WritableSink,

@@ -68,3 +68,3 @@ ArrowJSONLike, FileHandle, Readable, Writable, ReadableWritable, ReadableDOMStreamOptions,

Visitor,
Vector, makeVector, vectorFromArray,
Vector, makeVector, vectorFromArray, tableFromJSON,
ByteStream, AsyncByteStream, AsyncByteQueue,

@@ -71,0 +71,0 @@ RecordBatchReader, RecordBatchFileReader, RecordBatchStreamReader, AsyncRecordBatchFileReader, AsyncRecordBatchStreamReader,

@@ -62,5 +62,6 @@ // Licensed to the Apache Software Foundation (ASF) under one

export { StructRow } from './row/struct.js';
export type { StructRowProxy } from './row/struct.js';
export { Builder } from './builder.js';
export { makeBuilder, vectorFromArray, builderThroughIterable, builderThroughAsyncIterable } from './factories.js';
export { makeBuilder, vectorFromArray, tableFromJSON, builderThroughIterable, builderThroughAsyncIterable } from './factories.js';
export type { BuilderOptions } from './builder.js';

@@ -67,0 +68,0 @@ export { BoolBuilder } from './builder/bool.js';

@@ -27,9 +27,18 @@ // Licensed to the Apache Software Foundation (ASF) under one

public setValue(index: number, value: Struct<T>['TValue']) {
const children = this.children;
const { children, type } = this;
switch (Array.isArray(value) || value.constructor) {
case true: return this.type.children.forEach((_, i) => children[i].set(index, value[i]));
case Map: return this.type.children.forEach((f, i) => children[i].set(index, value.get(f.name)));
default: return this.type.children.forEach((f, i) => children[i].set(index, value[f.name]));
case true: return type.children.forEach((_, i) => children[i].set(index, value[i]));
case Map: return type.children.forEach((f, i) => children[i].set(index, value.get(f.name)));
default: return type.children.forEach((f, i) => children[i].set(index, value[f.name]));
}
}
/** @inheritdoc */
public setValid(index: number, valid: boolean) {
if (!super.setValid(index, valid)) {
this.children.forEach((child) => child.setValid(index, valid));
}
return valid;
}
public addChild(child: Builder, name = `${this.numChildren}`) {

@@ -36,0 +45,0 @@ const childIndex = this.children.push(child);

@@ -18,6 +18,6 @@ // Licensed to the Apache Software Foundation (ASF) under one

import { Field } from './schema.js';
import { Field, Schema } from './schema.js';
import * as dtypes from './type.js';
import { Data, DataProps } from './data.js';
import { BuilderType } from './interfaces.js';
import { BuilderType, JavaScriptDataType } from './interfaces.js';
import { Vector, makeVector } from './vector.js';

@@ -27,2 +27,5 @@ import { Builder, BuilderOptions } from './builder.js';

import { ArrayDataType, BigIntArray, JavaScriptArrayDataType, TypedArray, TypedArrayDataType } from './interfaces.js';
import { Table } from './table.js';
import { RecordBatch } from './recordbatch.js';
import { compareTypes } from './visitor/typecomparator.js';

@@ -61,2 +64,3 @@ export function makeBuilder<T extends dtypes.DataType = any, TNull = any>(options: BuilderOptions<T, TNull>): BuilderType<T, TNull> {

* const vdict = vectorFromArray(['foo', 'bar']);
* const vstruct = vectorFromArray([{a: 'foo', b: 42}, {a: 'bar', b: 12}]);
* ```

@@ -94,9 +98,19 @@ */

/**
* Creates a {@link Table} from an array of objects.
*
* @param array A table of objects.
*/
export function tableFromJSON<T extends Record<string, unknown>>(array: T[]): Table<{ [P in keyof T]: JavaScriptDataType<T[P]> }> {
const vector = vectorFromArray(array) as Vector<dtypes.Struct<any>>;
const batch = new RecordBatch(new Schema(vector.type.children), vector.data[0]);
return new Table(batch);
}
/** @ignore */
function inferType<T extends readonly unknown[]>(values: T): JavaScriptArrayDataType<T>;
function inferType(value: readonly unknown[]): dtypes.DataType {
if (value.length === 0) { return new dtypes.Null; }
let nullsCount = 0;
// @ts-ignore
let arraysCount = 0;
// @ts-ignore
let objectsCount = 0;

@@ -139,4 +153,20 @@ let numbersCount = 0;

return new dtypes.DateMillisecond;
} else if (arraysCount + nullsCount === value.length) {
const array = value as Array<unknown>[];
const childType = inferType(array[array.findIndex((ary) => ary != null)]);
if (array.every((ary) => ary == null || compareTypes(childType, inferType(ary)))) {
return new dtypes.List(new Field('', childType, true));
}
} else if (objectsCount + nullsCount === value.length) {
const fields = new Map<string, Field>();
for (const row of value as Record<string, unknown>[]) {
for (const key of Object.keys(row)) {
if (!fields.has(key) && row[key] != null) {
// use the type inferred for the first instance of a found key
fields.set(key, new Field(key, inferType([row[key]]), true));
}
}
}
return new dtypes.Struct([...fields.values()]);
}
// TODO: add more types to infererence

@@ -151,3 +181,2 @@ throw new TypeError('Unable to infer Vector type from input values, explicit type declaration expected');

*/
export interface IterableBuilderOptions<T extends dtypes.DataType = any, TNull = any> extends BuilderOptions<T, TNull> {

@@ -154,0 +183,0 @@ highWaterMark?: number;

@@ -164,2 +164,5 @@ // Licensed to the Apache Software Foundation (ASF) under one

/** @ignore */
export type JavaScriptDataType<T> = JavaScriptArrayDataType<T[]>;
/** @ignore */
export type JavaScriptArrayDataType<T extends readonly unknown[]> =

@@ -172,2 +175,4 @@ T extends readonly (null | undefined)[] ? type.Null :

T extends readonly (null | undefined | number)[] ? type.Float64 :
T extends readonly (null | undefined | readonly (infer U)[])[] ? type.List<JavaScriptDataType<U>> :
T extends readonly (null | undefined | Record<string, unknown>)[] ? T extends readonly (null | undefined | infer U)[] ? type.Struct<{ [P in keyof U]: JavaScriptDataType<U[P]> }> : never :
never;

@@ -174,0 +179,0 @@

@@ -300,2 +300,5 @@ // Licensed to the Apache Software Foundation (ASF) under one

function decodeRecordBatch(batch: _RecordBatch, version = MetadataVersion.V4) {
if (batch.compression() !== null) {
throw new Error('Record batch compression not implemented');
}
return new RecordBatch(batch.length(), decodeFieldNodes(batch), decodeBuffers(batch, version));

@@ -302,0 +305,0 @@ }

@@ -165,3 +165,3 @@ // Licensed to the Apache Software Foundation (ASF) under one

public [Symbol.iterator]() {
return iteratorVisitor.visit(new Vector([this.data]));
return iteratorVisitor.visit(new Vector([this.data])) as IterableIterator<Struct<T>['TValue']>;
}

@@ -168,0 +168,0 @@

@@ -30,2 +30,4 @@ // Licensed to the Apache Software Foundation (ASF) under one

[P in keyof T]: T[P]['TValue'];
} & {
[key: symbol]: any;
};

@@ -153,3 +155,3 @@

return Reflect.set(row, key, val);
} else if (Reflect.has(row, key)) {
} else if (Reflect.has(row, key) || typeof key === 'symbol') {
return Reflect.set(row, key, val);

@@ -156,0 +158,0 @@ }

@@ -227,3 +227,3 @@ // Licensed to the Apache Software Foundation (ASF) under one

public [Symbol.iterator]() {
return iteratorVisitor.visit(new Vector(this.data));
return iteratorVisitor.visit(new Vector(this.data)) as IterableIterator<Struct<T>['TValue']>;
}

@@ -243,3 +243,3 @@

*
* @returns A string representation of the Table rows.
* @returns A string representation of the Table rows.
*/

@@ -264,3 +264,3 @@ public toString() {

*
* @param start The beginning of the specified portion of the Table.
* @param begin The beginning of the specified portion of the Table.
* @param end The end of the specified portion of the Table. This is exclusive of the element at the index 'end'.

@@ -433,3 +433,3 @@ */

*
* @param Input an object of typed arrays or JavaScript arrays.
* @param input Input an object of typed arrays or JavaScript arrays.
* @returns A new Table.

@@ -436,0 +436,0 @@ */

@@ -75,11 +75,15 @@ // Licensed to the Apache Software Foundation (ASF) under one

const { buffer, byteOffset, length, 'signed': signed } = bn;
const words = new Int32Array(buffer, byteOffset, length);
let number = 0, i = 0;
const n = words.length;
let hi, lo;
while (i < n) {
lo = words[i++];
hi = words[i++];
signed || (hi = hi >>> 0);
number += (lo >>> 0) + (hi * (i ** 32));
const words = new BigUint64Array(buffer, byteOffset, length);
const negative = signed && words[words.length - 1] & (BigInt(1) << BigInt(63));
let number = negative ? BigInt(1) : BigInt(0);
let i = BigInt(0);
if (!negative) {
for (const word of words) {
number += word * (BigInt(1) << (BigInt(32) * i++));
}
} else {
for (const word of words) {
number += ~word * (BigInt(1) << (BigInt(32) * i++));
}
number *= BigInt(-1);
}

@@ -86,0 +90,0 @@ return number;

@@ -40,2 +40,5 @@ // Licensed to the Apache Software Foundation (ASF) under one

// @ts-ignore
import type { vectorFromArray } from './factories.js';
export interface Vector<T extends DataType = any> {

@@ -42,0 +45,0 @@ ///

@@ -51,15 +51,42 @@ /* istanbul ignore file */

export class GetByteLengthVisitor extends Visitor {
public visitNull(____: Data<Null>, _: number) { return 0; }
public visitInt(data: Data<Int>, _: number) { return data.type.bitWidth / 8; }
public visitFloat(data: Data<Float>, _: number) { return data.type.ArrayType.BYTES_PER_ELEMENT; }
public visitBool(____: Data<Bool>, _: number) { return 1 / 8; }
public visitDecimal(____: Data<Decimal>, _: number) { return 16; }
public visitDate(data: Data<Date_>, _: number) { return (data.type.unit + 1) * 4; }
public visitTime(data: Data<Time>, _: number) { return data.type.bitWidth / 8; }
public visitTimestamp(data: Data<Timestamp>, _: number) { return data.type.unit === TimeUnit.SECOND ? 4 : 8; }
public visitInterval(data: Data<Interval>, _: number) { return (data.type.unit + 1) * 4; }
public visitStruct(data: Data<Struct>, _: number) { return this.visitMany(data.children, data.children.map(() => _)).reduce(sum, 0); }
public visitFixedSizeBinary(data: Data<FixedSizeBinary>, _: number) { return data.type.byteWidth; }
public visitMap(data: Data<Map_>, _: number) { return this.visitMany(data.children, data.children.map(() => _)).reduce(sum, 0); }
public visitDictionary(data: Data<Dictionary>, _: number) { return (data.type.indices.bitWidth / 8) + (data.dictionary?.getByteLength(data.values[_]) || 0); }
public visitNull(____: Data<Null>, _: number) {
return 0;
}
public visitInt(data: Data<Int>, _: number) {
return data.type.bitWidth / 8;
}
public visitFloat(data: Data<Float>, _: number) {
return data.type.ArrayType.BYTES_PER_ELEMENT;
}
public visitBool(____: Data<Bool>, _: number) {
return 1 / 8;
}
public visitDecimal(data: Data<Decimal>, _: number) {
return data.type.bitWidth / 8;
}
public visitDate(data: Data<Date_>, _: number) {
return (data.type.unit + 1) * 4;
}
public visitTime(data: Data<Time>, _: number) {
return data.type.bitWidth / 8;
}
public visitTimestamp(data: Data<Timestamp>, _: number) {
return data.type.unit === TimeUnit.SECOND ? 4 : 8;
}
public visitInterval(data: Data<Interval>, _: number) {
return (data.type.unit + 1) * 4;
}
public visitStruct(data: Data<Struct>, i: number) {
return data.children.reduce((total, child) => total + instance.visit(child, i), 0);
}
public visitFixedSizeBinary(data: Data<FixedSizeBinary>, _: number) {
return data.type.byteWidth;
}
public visitMap(data: Data<Map_>, i: number) {
// 4 + 4 for the indices
return 8 + data.children.reduce((total, child) => total + instance.visit(child, i), 0);
}
public visitDictionary(data: Data<Dictionary>, i: number) {
return (data.type.indices.bitWidth / 8) + (data.dictionary?.getByteLength(data.values[i]) || 0);
}
}

@@ -66,0 +93,0 @@

@@ -23,3 +23,3 @@ // Licensed to the Apache Software Foundation (ASF) under one

import { MapRow } from '../row/map.js';
import { StructRow } from '../row/struct.js';
import { StructRow, StructRowProxy } from '../row/struct.js';
import { decodeUtf8 } from '../util/utf8.js';

@@ -113,4 +113,8 @@ import { TypeToDataType } from '../interfaces.js';

const getVariableWidthBytes = (values: Uint8Array, valueOffsets: Int32Array, index: number) => {
const { [index]: x, [index + 1]: y } = valueOffsets;
return x != null && y != null ? values.subarray(x, y) : null as any;
if (index + 1 >= valueOffsets.length) {
return null as any;
}
const x = valueOffsets[index];
const y = valueOffsets[index + 1];
return values.subarray(x, y);
};

@@ -212,6 +216,5 @@

const getList = <T extends List>(data: Data<T>, index: number): T['TValue'] => {
const { valueOffsets, stride } = data;
const { [index * stride]: begin } = valueOffsets;
const { [index * stride + 1]: end } = valueOffsets;
const child: Data<T['valueType']> = data.children[0];
const { valueOffsets, stride, children } = data;
const { [index * stride]: begin, [index * stride + 1]: end } = valueOffsets;
const child: Data<T['valueType']> = children[0];
const slice = child.slice(begin, end - begin);

@@ -223,6 +226,5 @@ return new Vector([slice]) as T['TValue'];

const getMap = <T extends Map_>(data: Data<T>, index: number): T['TValue'] => {
const { valueOffsets } = data;
const { [index]: begin } = valueOffsets;
const { [index + 1]: end } = valueOffsets;
const child = data.children[0] as Data<T['childType']>;
const { valueOffsets, children } = data;
const { [index]: begin, [index + 1]: end } = valueOffsets;
const child = children[0] as Data<T['childType']>;
return new MapRow(child.slice(begin, end - begin));

@@ -233,3 +235,3 @@ };

const getStruct = <T extends Struct>(data: Data<T>, index: number): T['TValue'] => {
return new StructRow(data, index);
return new StructRow(data, index) as StructRowProxy<T['TValue']>;
};

@@ -287,4 +289,4 @@

const getFixedSizeList = <T extends FixedSizeList>(data: Data<T>, index: number): T['TValue'] => {
const { stride } = data;
const child: Data<T['valueType']> = data.children[0];
const { stride, children } = data;
const child: Data<T['valueType']> = children[0];
const slice = child.slice(index * stride, stride);

@@ -291,0 +293,0 @@ return new Vector([slice]);

@@ -121,4 +121,4 @@ // Licensed to the Apache Software Foundation (ASF) under one

export const setVariableWidthBytes = (values: Uint8Array, valueOffsets: Int32Array, index: number, value: Uint8Array) => {
const { [index]: x, [index + 1]: y } = valueOffsets;
if (x != null && y != null) {
if (index + 1 < valueOffsets.length) {
const { [index]: x, [index + 1]: y } = valueOffsets;
values.set(value.subarray(0, y - x), x);

@@ -149,3 +149,2 @@ }

case Precision.DOUBLE:
default:
return setFloat(data as Data<Float32 | Float64>, index, value);

@@ -235,3 +234,3 @@ }

const values = data.children[0];
const valueOffsets = data.valueOffsets;
const { valueOffsets } = data;
const set = instance.getVisitFn(values);

@@ -238,0 +237,0 @@ let { [index]: idx, [index + 1]: end } = valueOffsets;

@@ -92,3 +92,3 @@ import { Data } from './data.js';

*/
[Symbol.iterator](): IterableIterator<import("./row/struct.js").StructRowProxy<T> | null>;
[Symbol.iterator](): IterableIterator<import("./Arrow.js").StructRowProxy<T>>;
/**

@@ -99,7 +99,7 @@ * Return a JavaScript Array of the Table rows.

*/
toArray(): (import("./row/struct.js").StructRowProxy<T> | null)[];
toArray(): import("./Arrow.js").StructRowProxy<T>[];
/**
* Returns a string representation of the Table rows.
*
* @returns A string representation of the Table rows.
* @returns A string representation of the Table rows.
*/

@@ -116,3 +116,3 @@ toString(): string;

*
* @param start The beginning of the specified portion of the Table.
* @param begin The beginning of the specified portion of the Table.
* @param end The end of the specified portion of the Table. This is exclusive of the element at the index 'end'.

@@ -196,3 +196,3 @@ */

*
* @param Input an object of typed arrays or JavaScript arrays.
* @param input Input an object of typed arrays or JavaScript arrays.
* @returns A new Table.

@@ -199,0 +199,0 @@ */

@@ -178,3 +178,3 @@ // Licensed to the Apache Software Foundation (ASF) under one

*
* @returns A string representation of the Table rows.
* @returns A string representation of the Table rows.
*/

@@ -197,3 +197,3 @@ toString() {

*
* @param start The beginning of the specified portion of the Table.
* @param begin The beginning of the specified portion of the Table.
* @param end The end of the specified portion of the Table. This is exclusive of the element at the index 'end'.

@@ -342,3 +342,3 @@ */

*
* @param Input an object of typed arrays or JavaScript arrays.
* @param input Input an object of typed arrays or JavaScript arrays.
* @returns A new Table.

@@ -345,0 +345,0 @@ */

@@ -56,12 +56,17 @@ // Licensed to the Apache Software Foundation (ASF) under one

const { buffer, byteOffset, length, 'signed': signed } = bn;
const words = new Int32Array(buffer, byteOffset, length);
let number = 0, i = 0;
const n = words.length;
let hi, lo;
while (i < n) {
lo = words[i++];
hi = words[i++];
signed || (hi = hi >>> 0);
number += (lo >>> 0) + (hi * (Math.pow(i, 32)));
const words = new BigUint64Array(buffer, byteOffset, length);
const negative = signed && words[words.length - 1] & (BigInt(1) << BigInt(63));
let number = negative ? BigInt(1) : BigInt(0);
let i = BigInt(0);
if (!negative) {
for (const word of words) {
number += word * (BigInt(1) << (BigInt(32) * i++));
}
}
else {
for (const word of words) {
number += ~word * (BigInt(1) << (BigInt(32) * i++));
}
number *= BigInt(-1);
}
return number;

@@ -68,0 +73,0 @@ }

@@ -25,3 +25,3 @@ import { Data } from '../data.js';

visitBool(____: Data<Bool>, _: number): number;
visitDecimal(____: Data<Decimal>, _: number): number;
visitDecimal(data: Data<Decimal>, _: number): number;
visitDate(data: Data<Date_>, _: number): number;

@@ -31,8 +31,8 @@ visitTime(data: Data<Time>, _: number): number;

visitInterval(data: Data<Interval>, _: number): number;
visitStruct(data: Data<Struct>, _: number): number;
visitStruct(data: Data<Struct>, i: number): number;
visitFixedSizeBinary(data: Data<FixedSizeBinary>, _: number): number;
visitMap(data: Data<Map_>, _: number): number;
visitDictionary(data: Data<Dictionary>, _: number): number;
visitMap(data: Data<Map_>, i: number): number;
visitDictionary(data: Data<Dictionary>, i: number): number;
}
/** @ignore */
export declare const instance: GetByteLengthVisitor;

@@ -7,15 +7,43 @@ /* istanbul ignore file */

export class GetByteLengthVisitor extends Visitor {
visitNull(____, _) { return 0; }
visitInt(data, _) { return data.type.bitWidth / 8; }
visitFloat(data, _) { return data.type.ArrayType.BYTES_PER_ELEMENT; }
visitBool(____, _) { return 1 / 8; }
visitDecimal(____, _) { return 16; }
visitDate(data, _) { return (data.type.unit + 1) * 4; }
visitTime(data, _) { return data.type.bitWidth / 8; }
visitTimestamp(data, _) { return data.type.unit === TimeUnit.SECOND ? 4 : 8; }
visitInterval(data, _) { return (data.type.unit + 1) * 4; }
visitStruct(data, _) { return this.visitMany(data.children, data.children.map(() => _)).reduce(sum, 0); }
visitFixedSizeBinary(data, _) { return data.type.byteWidth; }
visitMap(data, _) { return this.visitMany(data.children, data.children.map(() => _)).reduce(sum, 0); }
visitDictionary(data, _) { var _a; return (data.type.indices.bitWidth / 8) + (((_a = data.dictionary) === null || _a === void 0 ? void 0 : _a.getByteLength(data.values[_])) || 0); }
visitNull(____, _) {
return 0;
}
visitInt(data, _) {
return data.type.bitWidth / 8;
}
visitFloat(data, _) {
return data.type.ArrayType.BYTES_PER_ELEMENT;
}
visitBool(____, _) {
return 1 / 8;
}
visitDecimal(data, _) {
return data.type.bitWidth / 8;
}
visitDate(data, _) {
return (data.type.unit + 1) * 4;
}
visitTime(data, _) {
return data.type.bitWidth / 8;
}
visitTimestamp(data, _) {
return data.type.unit === TimeUnit.SECOND ? 4 : 8;
}
visitInterval(data, _) {
return (data.type.unit + 1) * 4;
}
visitStruct(data, i) {
return data.children.reduce((total, child) => total + instance.visit(child, i), 0);
}
visitFixedSizeBinary(data, _) {
return data.type.byteWidth;
}
visitMap(data, i) {
// 4 + 4 for the indices
return 8 + data.children.reduce((total, child) => total + instance.visit(child, i), 0);
}
visitDictionary(data, i) {
var _a;
return (data.type.indices.bitWidth / 8) + (((_a = data.dictionary) === null || _a === void 0 ? void 0 : _a.getByteLength(data.values[i])) || 0);
}
}

@@ -22,0 +50,0 @@ /** @ignore */

@@ -43,4 +43,8 @@ // Licensed to the Apache Software Foundation (ASF) under one

const getVariableWidthBytes = (values, valueOffsets, index) => {
const { [index]: x, [index + 1]: y } = valueOffsets;
return x != null && y != null ? values.subarray(x, y) : null;
if (index + 1 >= valueOffsets.length) {
return null;
}
const x = valueOffsets[index];
const y = valueOffsets[index + 1];
return values.subarray(x, y);
};

@@ -123,6 +127,5 @@ /** @ignore */

const getList = (data, index) => {
const { valueOffsets, stride } = data;
const { [index * stride]: begin } = valueOffsets;
const { [index * stride + 1]: end } = valueOffsets;
const child = data.children[0];
const { valueOffsets, stride, children } = data;
const { [index * stride]: begin, [index * stride + 1]: end } = valueOffsets;
const child = children[0];
const slice = child.slice(begin, end - begin);

@@ -133,6 +136,5 @@ return new Vector([slice]);

const getMap = (data, index) => {
const { valueOffsets } = data;
const { [index]: begin } = valueOffsets;
const { [index + 1]: end } = valueOffsets;
const child = data.children[0];
const { valueOffsets, children } = data;
const { [index]: begin, [index + 1]: end } = valueOffsets;
const child = children[0];
return new MapRow(child.slice(begin, end - begin));

@@ -185,4 +187,4 @@ };

const getFixedSizeList = (data, index) => {
const { stride } = data;
const child = data.children[0];
const { stride, children } = data;
const child = children[0];
const slice = child.slice(index * stride, stride);

@@ -189,0 +191,0 @@ return new Vector([slice]);

@@ -52,4 +52,4 @@ // Licensed to the Apache Software Foundation (ASF) under one

export const setVariableWidthBytes = (values, valueOffsets, index, value) => {
const { [index]: x, [index + 1]: y } = valueOffsets;
if (x != null && y != null) {
if (index + 1 < valueOffsets.length) {
const { [index]: x, [index + 1]: y } = valueOffsets;
values.set(value.subarray(0, y - x), x);

@@ -78,3 +78,2 @@ }

case Precision.DOUBLE:
default:
return setFloat(data, index, value);

@@ -158,3 +157,3 @@ }

const values = data.children[0];
const valueOffsets = data.valueOffsets;
const { valueOffsets } = data;
const set = instance.getVisitFn(values);

@@ -161,0 +160,0 @@ let { [index]: idx, [index + 1]: end } = valueOffsets;

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc