From 056978577712e21bccb0829ab2bfaa01071d761d Mon Sep 17 00:00:00 2001 From: erezrokah Date: Mon, 14 Aug 2023 16:48:30 +0200 Subject: [PATCH 1/2] style: Enforce import types --- .eslintrc | 3 +++ src/grpc/plugin.ts | 2 +- src/grpc/server.ts | 4 ++-- src/memdb/delete-stale.ts | 2 +- src/memdb/memdb.ts | 6 ++++-- src/memdb/overwrite.ts | 4 ++-- src/memdb/read.ts | 2 +- src/memdb/write.ts | 9 +++++---- src/plugin/plugin.ts | 6 +++--- src/plugin/serve.test.ts | 3 ++- src/plugin/serve.ts | 2 +- src/scalar/bool.ts | 2 +- src/scalar/date.ts | 5 +++-- src/scalar/float32.ts | 5 +++-- src/scalar/float64.ts | 5 +++-- src/scalar/int16.ts | 5 +++-- src/scalar/int32.ts | 5 +++-- src/scalar/int64.ts | 5 +++-- src/scalar/json.ts | 4 ++-- src/scalar/list.ts | 5 +++-- src/scalar/text.ts | 2 +- src/scalar/timestamp.ts | 5 +++-- src/scalar/uint16.ts | 5 +++-- src/scalar/uint32.ts | 5 +++-- src/scalar/uint64.ts | 5 +++-- src/scalar/uuid.ts | 4 ++-- src/scheduler/cqid.ts | 2 +- src/scheduler/scheduler.ts | 14 ++++++++------ src/schema/column.ts | 10 ++++++---- src/schema/meta.ts | 8 +++++--- src/schema/resolvers.ts | 2 +- src/schema/resource.ts | 8 +++++--- src/schema/table.ts | 14 ++++++++------ src/transformers/openapi.test.ts | 3 ++- src/transformers/openapi.ts | 6 ++++-- src/transformers/transform.test.ts | 6 ++++-- src/transformers/transform.ts | 6 ++++-- src/types/extensions.ts | 2 +- src/types/json.ts | 2 +- src/types/uuid.ts | 2 +- 40 files changed, 115 insertions(+), 80 deletions(-) diff --git a/.eslintrc b/.eslintrc index cba2c3a..02b99b4 100644 --- a/.eslintrc +++ b/.eslintrc @@ -25,6 +25,9 @@ "require-await": "off", "@typescript-eslint/require-await": "error", "@typescript-eslint/naming-convention": "error", + "import/no-cycle": "error", + "import/no-self-import": "error", + "@typescript-eslint/consistent-type-imports": "error", "import/order": [ 2, { diff --git a/src/grpc/plugin.ts b/src/grpc/plugin.ts index e4f646b..f15fbf3 100644 --- a/src/grpc/plugin.ts +++ b/src/grpc/plugin.ts @@ -1,7 +1,7 @@ import { pluginV3 } from '@cloudquery/plugin-pb-javascript'; import grpc = require('@grpc/grpc-js'); -import { Plugin } from '../plugin/plugin.js'; +import type { Plugin } from '../plugin/plugin.js'; import { encodeTables, flattenTables } from '../schema/table.js'; export class MigrateTable extends pluginV3.cloudquery.plugin.v3.Sync.MessageMigrateTable {} diff --git a/src/grpc/server.ts b/src/grpc/server.ts index fa8b3a3..50049a7 100644 --- a/src/grpc/server.ts +++ b/src/grpc/server.ts @@ -1,8 +1,8 @@ import { pluginV3, discovery1 } from '@cloudquery/plugin-pb-javascript'; import grpc = require('@grpc/grpc-js'); -import winston from 'winston'; +import type winston from 'winston'; -import { Plugin } from '../plugin/plugin.js'; +import type { Plugin } from '../plugin/plugin.js'; import { DiscoveryServer } from './discovery.js'; import { PluginServer } from './plugin.js'; diff --git a/src/memdb/delete-stale.ts b/src/memdb/delete-stale.ts index 7b7b84a..179d95d 100644 --- a/src/memdb/delete-stale.ts +++ b/src/memdb/delete-stale.ts @@ -1,4 +1,4 @@ -import { DeleteStale } from '../grpc/plugin.js'; +import type { DeleteStale } from '../grpc/plugin.js'; export type DeleteStaleFunction = (message: DeleteStale) => void; diff --git a/src/memdb/memdb.ts b/src/memdb/memdb.ts index 414e9af..a808367 100644 --- a/src/memdb/memdb.ts +++ b/src/memdb/memdb.ts @@ -1,8 +1,10 @@ import { default as Ajv } from 'ajv'; -import { Plugin, newPlugin, SyncOptions, TableOptions, NewClientFunction } from '../plugin/plugin.js'; +import type { Plugin, SyncOptions, TableOptions, NewClientFunction } from '../plugin/plugin.js'; +import { newPlugin } from '../plugin/plugin.js'; import { sync } from '../scheduler/scheduler.js'; -import { Table, filterTables } from '../schema/table.js'; +import type { Table} from '../schema/table.js'; +import { filterTables } from '../schema/table.js'; import { createDeleteStale } from './delete-stale.js'; import { createOverwrite } from './overwrite.js'; diff --git a/src/memdb/overwrite.ts b/src/memdb/overwrite.ts index fd32d12..e4653b8 100644 --- a/src/memdb/overwrite.ts +++ b/src/memdb/overwrite.ts @@ -1,6 +1,6 @@ -import { StructRowProxy } from '@apache-arrow/esnext-esm'; +import type { StructRowProxy } from '@apache-arrow/esnext-esm'; -import { Table } from '../schema/table.js'; +import type { Table } from '../schema/table.js'; //eslint-disable-next-line @typescript-eslint/no-explicit-any export type OverwriteFunction = (table: Table, primaryKeys: string[], record: StructRowProxy) => void; diff --git a/src/memdb/read.ts b/src/memdb/read.ts index 0a1b9e9..5d56cec 100644 --- a/src/memdb/read.ts +++ b/src/memdb/read.ts @@ -1,4 +1,4 @@ -import { ReadStream, ReadRequest } from '../grpc/plugin.js'; +import type { ReadStream, ReadRequest } from '../grpc/plugin.js'; import { decodeTable } from '../schema/table.js'; //eslint-disable-next-line @typescript-eslint/no-explicit-any diff --git a/src/memdb/write.ts b/src/memdb/write.ts index b78a6a0..2aa2175 100644 --- a/src/memdb/write.ts +++ b/src/memdb/write.ts @@ -1,8 +1,9 @@ -import { WriteStream, WriteRequest } from '../grpc/plugin.js'; -import { Table, decodeTable, decodeRecord, getPrimaryKeys } from '../schema/table.js'; +import type { WriteStream, WriteRequest } from '../grpc/plugin.js'; +import type { Table} from '../schema/table.js'; +import { decodeTable, decodeRecord, getPrimaryKeys } from '../schema/table.js'; -import { DeleteStaleFunction } from './delete-stale.js'; -import { OverwriteFunction } from './overwrite.js'; +import type { DeleteStaleFunction } from './delete-stale.js'; +import type { OverwriteFunction } from './overwrite.js'; export const createWrite = ( //eslint-disable-next-line @typescript-eslint/no-explicit-any diff --git a/src/plugin/plugin.ts b/src/plugin/plugin.ts index cfc516c..0b1dc6f 100644 --- a/src/plugin/plugin.ts +++ b/src/plugin/plugin.ts @@ -1,7 +1,7 @@ -import { Logger } from 'winston'; +import type { Logger } from 'winston'; -import { SyncStream, ReadStream, WriteStream } from '../grpc/plugin.js'; -import { Table } from '../schema/table.js'; +import type { SyncStream, ReadStream, WriteStream } from '../grpc/plugin.js'; +import type { Table } from '../schema/table.js'; export type BackendOptions = { tableName: string; diff --git a/src/plugin/serve.test.ts b/src/plugin/serve.test.ts index 18dd9af..8afd7f2 100644 --- a/src/plugin/serve.test.ts +++ b/src/plugin/serve.test.ts @@ -2,7 +2,8 @@ import test from 'ava'; import { newMemDBPlugin } from '../memdb/memdb.js'; -import { createServeCommand, ServeArguments } from './serve.js'; +import type { ServeArguments } from './serve.js'; +import { createServeCommand } from './serve.js'; const serve = createServeCommand(newMemDBPlugin()).exitProcess(false); diff --git a/src/plugin/serve.ts b/src/plugin/serve.ts index 08dad5b..a945112 100644 --- a/src/plugin/serve.ts +++ b/src/plugin/serve.ts @@ -4,7 +4,7 @@ import { hideBin } from 'yargs/helpers'; import { startServer, Network } from '../grpc/server.js'; import { LogFormat, LogLevel, createLogger } from '../logger/logger.js'; -import { Plugin } from './plugin.js'; +import type { Plugin } from './plugin.js'; const TELEMETRY_LEVEL_CHOICES = ['none', 'errors', 'stats', 'all'] as const; diff --git a/src/scalar/bool.ts b/src/scalar/bool.ts index 66af397..8a70e32 100644 --- a/src/scalar/bool.ts +++ b/src/scalar/bool.ts @@ -1,7 +1,7 @@ import { Bool as ArrowBool } from '@apache-arrow/esnext-esm'; import { boolean, isBooleanable } from 'boolean'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Bool implements Scalar { diff --git a/src/scalar/date.ts b/src/scalar/date.ts index d55df73..da388c1 100644 --- a/src/scalar/date.ts +++ b/src/scalar/date.ts @@ -1,7 +1,8 @@ -import { DataType, Date_ as ArrowDate, DateUnit } from '@apache-arrow/esnext-esm'; +import type { DataType, DateUnit } from '@apache-arrow/esnext-esm'; +import { Date_ as ArrowDate } from '@apache-arrow/esnext-esm'; import { DateTime } from 'luxon'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Date implements Scalar { diff --git a/src/scalar/float32.ts b/src/scalar/float32.ts index 0c31ed3..f147d57 100644 --- a/src/scalar/float32.ts +++ b/src/scalar/float32.ts @@ -1,6 +1,7 @@ -import { DataType, Float32 as ArrowFloat32 } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Float32 as ArrowFloat32 } from '@apache-arrow/esnext-esm'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Float32 implements Scalar { diff --git a/src/scalar/float64.ts b/src/scalar/float64.ts index 713bd03..b86508c 100644 --- a/src/scalar/float64.ts +++ b/src/scalar/float64.ts @@ -1,6 +1,7 @@ -import { DataType, Float64 as ArrowFloat64 } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Float64 as ArrowFloat64 } from '@apache-arrow/esnext-esm'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Float64 implements Scalar { diff --git a/src/scalar/int16.ts b/src/scalar/int16.ts index ecb37a7..7337bf4 100644 --- a/src/scalar/int16.ts +++ b/src/scalar/int16.ts @@ -1,7 +1,8 @@ -import { DataType, Int16 as ArrowInt16 } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Int16 as ArrowInt16 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Int16 implements Scalar { diff --git a/src/scalar/int32.ts b/src/scalar/int32.ts index c998303..63e0355 100644 --- a/src/scalar/int32.ts +++ b/src/scalar/int32.ts @@ -1,7 +1,8 @@ -import { DataType, Int32 as ArrowInt32 } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Int32 as ArrowInt32 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Int32 implements Scalar { diff --git a/src/scalar/int64.ts b/src/scalar/int64.ts index 0f35041..65e7ed8 100644 --- a/src/scalar/int64.ts +++ b/src/scalar/int64.ts @@ -1,7 +1,8 @@ -import { DataType, Int64 as ArrowInt64 } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Int64 as ArrowInt64 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Int64 implements Scalar { diff --git a/src/scalar/json.ts b/src/scalar/json.ts index 6ebe7ed..f0a8930 100644 --- a/src/scalar/json.ts +++ b/src/scalar/json.ts @@ -1,8 +1,8 @@ import { Utf8 as ArrowString } from '@apache-arrow/esnext-esm'; -import { Nullable } from '../schema/types.js'; +import type { Nullable } from '../schema/types.js'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; const validate = (value: string) => { diff --git a/src/scalar/list.ts b/src/scalar/list.ts index 86659df..f06efd6 100644 --- a/src/scalar/list.ts +++ b/src/scalar/list.ts @@ -1,6 +1,7 @@ -import { DataType, List as ArrowList } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { List as ArrowList } from '@apache-arrow/esnext-esm'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; type TVector> = T[]; diff --git a/src/scalar/text.ts b/src/scalar/text.ts index 83fad97..c7672e8 100644 --- a/src/scalar/text.ts +++ b/src/scalar/text.ts @@ -1,6 +1,6 @@ import { Utf8 as ArrowString } from '@apache-arrow/esnext-esm'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Text implements Scalar { diff --git a/src/scalar/timestamp.ts b/src/scalar/timestamp.ts index 2c2687a..3a3993c 100644 --- a/src/scalar/timestamp.ts +++ b/src/scalar/timestamp.ts @@ -1,7 +1,8 @@ -import { DataType, Timestamp as ArrowTimestamp, TimeUnit } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Timestamp as ArrowTimestamp, TimeUnit } from '@apache-arrow/esnext-esm'; import { DateTime } from 'luxon'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Timestamp implements Scalar { diff --git a/src/scalar/uint16.ts b/src/scalar/uint16.ts index 454b919..d808cf6 100644 --- a/src/scalar/uint16.ts +++ b/src/scalar/uint16.ts @@ -1,7 +1,8 @@ -import { DataType, Uint16 as ArrowUint16 } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Uint16 as ArrowUint16 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Uint16 implements Scalar { diff --git a/src/scalar/uint32.ts b/src/scalar/uint32.ts index cfa2335..2d6281c 100644 --- a/src/scalar/uint32.ts +++ b/src/scalar/uint32.ts @@ -1,7 +1,8 @@ -import { DataType, Uint32 as ArrowUint32 } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Uint32 as ArrowUint32 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Uint32 implements Scalar { diff --git a/src/scalar/uint64.ts b/src/scalar/uint64.ts index 0ec9b3d..91c5dd5 100644 --- a/src/scalar/uint64.ts +++ b/src/scalar/uint64.ts @@ -1,7 +1,8 @@ -import { DataType, Uint64 as ArrowUint64 } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Uint64 as ArrowUint64 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class Uint64 implements Scalar { diff --git a/src/scalar/uuid.ts b/src/scalar/uuid.ts index da83eb8..e5edfbf 100644 --- a/src/scalar/uuid.ts +++ b/src/scalar/uuid.ts @@ -1,9 +1,9 @@ import { FixedSizeBinary } from '@apache-arrow/esnext-esm'; import { parse, stringify } from 'uuid'; -import { Nullable } from '../schema/types.js'; +import type { Nullable } from '../schema/types.js'; -import { Scalar } from './scalar.js'; +import type { Scalar } from './scalar.js'; import { isInvalid, NULL_VALUE } from './util.js'; export class UUID implements Scalar> { diff --git a/src/scheduler/cqid.ts b/src/scheduler/cqid.ts index 58049f0..939e9af 100644 --- a/src/scheduler/cqid.ts +++ b/src/scheduler/cqid.ts @@ -3,7 +3,7 @@ import { createHash } from 'node:crypto'; import { v4 as uuidv4, v5 as uuidv5, NIL as NIL_UUID } from 'uuid'; import { cqIDColumn } from '../schema/meta.js'; -import { Resource } from '../schema/resource.js'; +import type { Resource } from '../schema/resource.js'; import { getPrimaryKeys } from '../schema/table.js'; export const setCQId = (resource: Resource, deterministicCQId: boolean, generator: () => string = uuidv4) => { diff --git a/src/scheduler/scheduler.ts b/src/scheduler/scheduler.ts index 9811c7e..ec0916b 100644 --- a/src/scheduler/scheduler.ts +++ b/src/scheduler/scheduler.ts @@ -2,14 +2,16 @@ import { Duplex } from 'node:stream'; import pMap from 'p-map'; import pTimeout from 'p-timeout'; -import { Logger } from 'winston'; +import type { Logger } from 'winston'; -import { SyncStream, SyncResponse, MigrateTable, Insert } from '../grpc/plugin.js'; -import { Column } from '../schema/column.js'; -import { ClientMeta } from '../schema/meta.js'; +import type { SyncStream} from '../grpc/plugin.js'; +import { SyncResponse, MigrateTable, Insert } from '../grpc/plugin.js'; +import type { Column } from '../schema/column.js'; +import type { ClientMeta } from '../schema/meta.js'; import { Resource, encodeResource } from '../schema/resource.js'; -import { Table, encodeTable, flattenTables } from '../schema/table.js'; -import { Nullable } from '../schema/types.js'; +import type { Table} from '../schema/table.js'; +import { encodeTable, flattenTables } from '../schema/table.js'; +import type { Nullable } from '../schema/types.js'; import { setCQId } from './cqid.js'; diff --git a/src/schema/column.ts b/src/schema/column.ts index 186944d..53685fd 100644 --- a/src/schema/column.ts +++ b/src/schema/column.ts @@ -1,12 +1,14 @@ import { isDeepStrictEqual } from 'node:util'; -import { DataType, Field, Utf8 } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Field, Utf8 } from '@apache-arrow/esnext-esm'; -import { ExtensionType, isExtensionType } from '../types/extensions.js'; +import type { ExtensionType} from '../types/extensions.js'; +import { isExtensionType } from '../types/extensions.js'; import * as arrow from './arrow.js'; -import { ClientMeta } from './meta.js'; -import { Resource } from './resource.js'; +import type { ClientMeta } from './meta.js'; +import type { Resource } from './resource.js'; export type ColumnResolver = (meta: ClientMeta, resource: Resource, c: Column) => Promise; diff --git a/src/schema/meta.ts b/src/schema/meta.ts index 3f5faa3..957b3a2 100644 --- a/src/schema/meta.ts +++ b/src/schema/meta.ts @@ -2,9 +2,11 @@ import { Utf8, TimeNanosecond } from '@apache-arrow/esnext-esm'; import { UUIDType } from '../types/uuid.js'; -import { Column, createColumn, ColumnResolver } from './column.js'; -import { Resource } from './resource.js'; -import { Table, getPrimaryKeys } from './table.js'; +import type { Column, ColumnResolver } from './column.js'; +import { createColumn } from './column.js'; +import type { Resource } from './resource.js'; +import type { Table} from './table.js'; +import { getPrimaryKeys } from './table.js'; export type ClientMeta = { id: () => string; diff --git a/src/schema/resolvers.ts b/src/schema/resolvers.ts index aa7e294..c40ac28 100644 --- a/src/schema/resolvers.ts +++ b/src/schema/resolvers.ts @@ -1,6 +1,6 @@ import { getProperty } from 'dot-prop'; -import { ColumnResolver } from './column.js'; +import type { ColumnResolver } from './column.js'; export const pathResolver = (path: string): ColumnResolver => { return (_, resource, c) => { diff --git a/src/schema/resource.ts b/src/schema/resource.ts index 67a9812..0c9a3ba 100644 --- a/src/schema/resource.ts +++ b/src/schema/resource.ts @@ -1,11 +1,13 @@ import { tableToIPC, Table as ArrowTable, RecordBatch, vectorFromArray } from '@apache-arrow/esnext-esm'; -import { Scalar, Vector, newScalar } from '../scalar/scalar.js'; +import type { Scalar, Vector} from '../scalar/scalar.js'; +import { newScalar } from '../scalar/scalar.js'; import { isExtensionType } from '../types/extensions.js'; import { cqIDColumn } from './meta.js'; -import { Table, toArrowSchema } from './table.js'; -import { Nullable } from './types.js'; +import type { Table} from './table.js'; +import { toArrowSchema } from './table.js'; +import type { Nullable } from './types.js'; export class Resource { item: unknown; diff --git a/src/schema/table.ts b/src/schema/table.ts index 4cc46b9..9c62d49 100644 --- a/src/schema/table.ts +++ b/src/schema/table.ts @@ -1,13 +1,15 @@ -import { Writable } from 'node:stream'; +import type { Writable } from 'node:stream'; -import { Table as ArrowTable, tableFromIPC, tableToIPC, Schema, RecordBatch } from '@apache-arrow/esnext-esm'; +import type { RecordBatch } from '@apache-arrow/esnext-esm'; +import { Table as ArrowTable, tableFromIPC, tableToIPC, Schema } from '@apache-arrow/esnext-esm'; import { isMatch } from 'matcher'; import * as arrow from './arrow.js'; -import { Column, fromArrowField, toArrowField } from './column.js'; -import { ClientMeta } from './meta.js'; -import { Resource } from './resource.js'; -import { Nullable } from './types.js'; +import type { Column} from './column.js'; +import { fromArrowField, toArrowField } from './column.js'; +import type { ClientMeta } from './meta.js'; +import type { Resource } from './resource.js'; +import type { Nullable } from './types.js'; export type TableResolver = (clientMeta: ClientMeta, parent: Nullable, stream: Writable) => Promise; export type RowResolver = (clientMeta: ClientMeta, resource: Resource) => Promise; diff --git a/src/transformers/openapi.test.ts b/src/transformers/openapi.test.ts index ac2aa77..c64862c 100644 --- a/src/transformers/openapi.test.ts +++ b/src/transformers/openapi.test.ts @@ -1,7 +1,8 @@ import { Utf8, Int64, Bool } from '@apache-arrow/esnext-esm'; import test from 'ava'; -import { Column, createColumn } from '../schema/column.js'; +import type { Column} from '../schema/column.js'; +import { createColumn } from '../schema/column.js'; import { JSONType } from '../types/json.js'; import { oapiDefinitionToColumns } from './openapi.js'; diff --git a/src/transformers/openapi.ts b/src/transformers/openapi.ts index b2c2ce2..eb80fc3 100644 --- a/src/transformers/openapi.ts +++ b/src/transformers/openapi.ts @@ -1,6 +1,8 @@ -import { DataType, Utf8, Int64, Bool } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Utf8, Int64, Bool } from '@apache-arrow/esnext-esm'; -import { Column, createColumn } from '../schema/column.js'; +import type { Column} from '../schema/column.js'; +import { createColumn } from '../schema/column.js'; import { JSONType } from '../types/json.js'; interface OAPIProperty { diff --git a/src/transformers/transform.test.ts b/src/transformers/transform.test.ts index 258dcc9..51880c0 100644 --- a/src/transformers/transform.test.ts +++ b/src/transformers/transform.test.ts @@ -1,7 +1,9 @@ -import { Utf8, Int64, Bool, List, Field, Float64, DataType } from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; +import { Utf8, Int64, Bool, List, Field, Float64 } from '@apache-arrow/esnext-esm'; import test from 'ava'; -import { Column, createColumn } from '../schema/column.js'; +import type { Column} from '../schema/column.js'; +import { createColumn } from '../schema/column.js'; import { JSONType } from '../types/json.js'; import { objectToColumns } from './transform.js'; diff --git a/src/transformers/transform.ts b/src/transformers/transform.ts index aa29665..d769403 100644 --- a/src/transformers/transform.ts +++ b/src/transformers/transform.ts @@ -1,6 +1,8 @@ -import { DataType, Field, Utf8, Int64, Float64, Bool, List } from '@apache-arrow/esnext-esm'; +import type { DataType} from '@apache-arrow/esnext-esm'; +import { Field, Utf8, Int64, Float64, Bool, List } from '@apache-arrow/esnext-esm'; -import { Column, createColumn } from '../schema/column.js'; +import type { Column} from '../schema/column.js'; +import { createColumn } from '../schema/column.js'; import { JSONType } from '../types/json.js'; function defaultGetTypeFromValue(key: string, value: unknown): DataType | null { diff --git a/src/types/extensions.ts b/src/types/extensions.ts index 8e032ed..73e39bc 100644 --- a/src/types/extensions.ts +++ b/src/types/extensions.ts @@ -1,4 +1,4 @@ -import { DataType } from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { JSONType } from './json.js'; import { UUIDType } from './uuid.js'; diff --git a/src/types/json.ts b/src/types/json.ts index 5396ac5..851f5e7 100644 --- a/src/types/json.ts +++ b/src/types/json.ts @@ -1,6 +1,6 @@ import { Type, DataType } from '@apache-arrow/esnext-esm'; -import { ExtensionType } from './extensions.js'; +import type { ExtensionType } from './extensions.js'; export class JSONType extends DataType implements ExtensionType { get name(): string { diff --git a/src/types/uuid.ts b/src/types/uuid.ts index ef7133e..e498a0b 100644 --- a/src/types/uuid.ts +++ b/src/types/uuid.ts @@ -1,6 +1,6 @@ import { Type, FixedSizeBinary } from '@apache-arrow/esnext-esm'; -import { ExtensionType } from './extensions.js'; +import type { ExtensionType } from './extensions.js'; export class UUIDType extends FixedSizeBinary implements ExtensionType { constructor() { From 5e7b0478513e3d790167bc80b3414bb55004e002 Mon Sep 17 00:00:00 2001 From: erezrokah Date: Mon, 14 Aug 2023 16:49:42 +0200 Subject: [PATCH 2/2] chore: format --- src/memdb/memdb.ts | 2 +- src/memdb/write.ts | 2 +- src/scalar/float32.ts | 2 +- src/scalar/float64.ts | 2 +- src/scalar/int16.ts | 2 +- src/scalar/int32.ts | 2 +- src/scalar/int64.ts | 2 +- src/scalar/list.ts | 2 +- src/scalar/timestamp.ts | 2 +- src/scalar/uint16.ts | 2 +- src/scalar/uint32.ts | 2 +- src/scalar/uint64.ts | 2 +- src/scheduler/scheduler.ts | 4 ++-- src/schema/column.ts | 4 ++-- src/schema/meta.ts | 2 +- src/schema/resource.ts | 4 ++-- src/schema/table.ts | 2 +- src/transformers/openapi.test.ts | 2 +- src/transformers/openapi.ts | 4 ++-- src/transformers/transform.test.ts | 2 +- src/transformers/transform.ts | 4 ++-- 21 files changed, 26 insertions(+), 26 deletions(-) diff --git a/src/memdb/memdb.ts b/src/memdb/memdb.ts index a808367..f169b25 100644 --- a/src/memdb/memdb.ts +++ b/src/memdb/memdb.ts @@ -3,7 +3,7 @@ import { default as Ajv } from 'ajv'; import type { Plugin, SyncOptions, TableOptions, NewClientFunction } from '../plugin/plugin.js'; import { newPlugin } from '../plugin/plugin.js'; import { sync } from '../scheduler/scheduler.js'; -import type { Table} from '../schema/table.js'; +import type { Table } from '../schema/table.js'; import { filterTables } from '../schema/table.js'; import { createDeleteStale } from './delete-stale.js'; diff --git a/src/memdb/write.ts b/src/memdb/write.ts index 2aa2175..e9c3330 100644 --- a/src/memdb/write.ts +++ b/src/memdb/write.ts @@ -1,5 +1,5 @@ import type { WriteStream, WriteRequest } from '../grpc/plugin.js'; -import type { Table} from '../schema/table.js'; +import type { Table } from '../schema/table.js'; import { decodeTable, decodeRecord, getPrimaryKeys } from '../schema/table.js'; import type { DeleteStaleFunction } from './delete-stale.js'; diff --git a/src/scalar/float32.ts b/src/scalar/float32.ts index f147d57..7ac2e6e 100644 --- a/src/scalar/float32.ts +++ b/src/scalar/float32.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Float32 as ArrowFloat32 } from '@apache-arrow/esnext-esm'; import type { Scalar } from './scalar.js'; diff --git a/src/scalar/float64.ts b/src/scalar/float64.ts index b86508c..ff8c77c 100644 --- a/src/scalar/float64.ts +++ b/src/scalar/float64.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Float64 as ArrowFloat64 } from '@apache-arrow/esnext-esm'; import type { Scalar } from './scalar.js'; diff --git a/src/scalar/int16.ts b/src/scalar/int16.ts index 7337bf4..a88bc16 100644 --- a/src/scalar/int16.ts +++ b/src/scalar/int16.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Int16 as ArrowInt16 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; diff --git a/src/scalar/int32.ts b/src/scalar/int32.ts index 63e0355..3db3deb 100644 --- a/src/scalar/int32.ts +++ b/src/scalar/int32.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Int32 as ArrowInt32 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; diff --git a/src/scalar/int64.ts b/src/scalar/int64.ts index 65e7ed8..7b1f651 100644 --- a/src/scalar/int64.ts +++ b/src/scalar/int64.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Int64 as ArrowInt64 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; diff --git a/src/scalar/list.ts b/src/scalar/list.ts index f06efd6..61b6c20 100644 --- a/src/scalar/list.ts +++ b/src/scalar/list.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { List as ArrowList } from '@apache-arrow/esnext-esm'; import type { Scalar } from './scalar.js'; diff --git a/src/scalar/timestamp.ts b/src/scalar/timestamp.ts index 3a3993c..6a130ef 100644 --- a/src/scalar/timestamp.ts +++ b/src/scalar/timestamp.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Timestamp as ArrowTimestamp, TimeUnit } from '@apache-arrow/esnext-esm'; import { DateTime } from 'luxon'; diff --git a/src/scalar/uint16.ts b/src/scalar/uint16.ts index d808cf6..7238567 100644 --- a/src/scalar/uint16.ts +++ b/src/scalar/uint16.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Uint16 as ArrowUint16 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; diff --git a/src/scalar/uint32.ts b/src/scalar/uint32.ts index 2d6281c..442c4e5 100644 --- a/src/scalar/uint32.ts +++ b/src/scalar/uint32.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Uint32 as ArrowUint32 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; diff --git a/src/scalar/uint64.ts b/src/scalar/uint64.ts index 91c5dd5..8690030 100644 --- a/src/scalar/uint64.ts +++ b/src/scalar/uint64.ts @@ -1,4 +1,4 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Uint64 as ArrowUint64 } from '@apache-arrow/esnext-esm'; import { bigIntToNumber } from '@apache-arrow/esnext-esm/util/bigint.js'; diff --git a/src/scheduler/scheduler.ts b/src/scheduler/scheduler.ts index ec0916b..1ce97a0 100644 --- a/src/scheduler/scheduler.ts +++ b/src/scheduler/scheduler.ts @@ -4,12 +4,12 @@ import pMap from 'p-map'; import pTimeout from 'p-timeout'; import type { Logger } from 'winston'; -import type { SyncStream} from '../grpc/plugin.js'; +import type { SyncStream } from '../grpc/plugin.js'; import { SyncResponse, MigrateTable, Insert } from '../grpc/plugin.js'; import type { Column } from '../schema/column.js'; import type { ClientMeta } from '../schema/meta.js'; import { Resource, encodeResource } from '../schema/resource.js'; -import type { Table} from '../schema/table.js'; +import type { Table } from '../schema/table.js'; import { encodeTable, flattenTables } from '../schema/table.js'; import type { Nullable } from '../schema/types.js'; diff --git a/src/schema/column.ts b/src/schema/column.ts index 53685fd..1da3364 100644 --- a/src/schema/column.ts +++ b/src/schema/column.ts @@ -1,9 +1,9 @@ import { isDeepStrictEqual } from 'node:util'; -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Field, Utf8 } from '@apache-arrow/esnext-esm'; -import type { ExtensionType} from '../types/extensions.js'; +import type { ExtensionType } from '../types/extensions.js'; import { isExtensionType } from '../types/extensions.js'; import * as arrow from './arrow.js'; diff --git a/src/schema/meta.ts b/src/schema/meta.ts index 957b3a2..0d76e2a 100644 --- a/src/schema/meta.ts +++ b/src/schema/meta.ts @@ -5,7 +5,7 @@ import { UUIDType } from '../types/uuid.js'; import type { Column, ColumnResolver } from './column.js'; import { createColumn } from './column.js'; import type { Resource } from './resource.js'; -import type { Table} from './table.js'; +import type { Table } from './table.js'; import { getPrimaryKeys } from './table.js'; export type ClientMeta = { diff --git a/src/schema/resource.ts b/src/schema/resource.ts index 0c9a3ba..fb24804 100644 --- a/src/schema/resource.ts +++ b/src/schema/resource.ts @@ -1,11 +1,11 @@ import { tableToIPC, Table as ArrowTable, RecordBatch, vectorFromArray } from '@apache-arrow/esnext-esm'; -import type { Scalar, Vector} from '../scalar/scalar.js'; +import type { Scalar, Vector } from '../scalar/scalar.js'; import { newScalar } from '../scalar/scalar.js'; import { isExtensionType } from '../types/extensions.js'; import { cqIDColumn } from './meta.js'; -import type { Table} from './table.js'; +import type { Table } from './table.js'; import { toArrowSchema } from './table.js'; import type { Nullable } from './types.js'; diff --git a/src/schema/table.ts b/src/schema/table.ts index 9c62d49..efe5c7b 100644 --- a/src/schema/table.ts +++ b/src/schema/table.ts @@ -5,7 +5,7 @@ import { Table as ArrowTable, tableFromIPC, tableToIPC, Schema } from '@apache-a import { isMatch } from 'matcher'; import * as arrow from './arrow.js'; -import type { Column} from './column.js'; +import type { Column } from './column.js'; import { fromArrowField, toArrowField } from './column.js'; import type { ClientMeta } from './meta.js'; import type { Resource } from './resource.js'; diff --git a/src/transformers/openapi.test.ts b/src/transformers/openapi.test.ts index c64862c..1aa6e70 100644 --- a/src/transformers/openapi.test.ts +++ b/src/transformers/openapi.test.ts @@ -1,7 +1,7 @@ import { Utf8, Int64, Bool } from '@apache-arrow/esnext-esm'; import test from 'ava'; -import type { Column} from '../schema/column.js'; +import type { Column } from '../schema/column.js'; import { createColumn } from '../schema/column.js'; import { JSONType } from '../types/json.js'; diff --git a/src/transformers/openapi.ts b/src/transformers/openapi.ts index eb80fc3..45416d7 100644 --- a/src/transformers/openapi.ts +++ b/src/transformers/openapi.ts @@ -1,7 +1,7 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Utf8, Int64, Bool } from '@apache-arrow/esnext-esm'; -import type { Column} from '../schema/column.js'; +import type { Column } from '../schema/column.js'; import { createColumn } from '../schema/column.js'; import { JSONType } from '../types/json.js'; diff --git a/src/transformers/transform.test.ts b/src/transformers/transform.test.ts index 51880c0..26fcb96 100644 --- a/src/transformers/transform.test.ts +++ b/src/transformers/transform.test.ts @@ -2,7 +2,7 @@ import type { DataType } from '@apache-arrow/esnext-esm'; import { Utf8, Int64, Bool, List, Field, Float64 } from '@apache-arrow/esnext-esm'; import test from 'ava'; -import type { Column} from '../schema/column.js'; +import type { Column } from '../schema/column.js'; import { createColumn } from '../schema/column.js'; import { JSONType } from '../types/json.js'; diff --git a/src/transformers/transform.ts b/src/transformers/transform.ts index d769403..335f1b5 100644 --- a/src/transformers/transform.ts +++ b/src/transformers/transform.ts @@ -1,7 +1,7 @@ -import type { DataType} from '@apache-arrow/esnext-esm'; +import type { DataType } from '@apache-arrow/esnext-esm'; import { Field, Utf8, Int64, Float64, Bool, List } from '@apache-arrow/esnext-esm'; -import type { Column} from '../schema/column.js'; +import type { Column } from '../schema/column.js'; import { createColumn } from '../schema/column.js'; import { JSONType } from '../types/json.js';