@apibara/indexer 2.0.0-beta.8 → 2.0.0-beta.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/sinks/drizzle/index.cjs +3 -1
- package/dist/sinks/drizzle/index.d.cts +69 -27
- package/dist/sinks/drizzle/index.d.mts +69 -27
- package/dist/sinks/drizzle/index.d.ts +69 -27
- package/dist/sinks/drizzle/index.mjs +3 -1
- package/package.json +4 -4
- package/src/sinks/drizzle/insert.ts +6 -3
- package/src/sinks/drizzle/utils.ts +65 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Cursor } from '@apibara/protocol';
|
|
2
|
-
import { TablesRelationalConfig, ExtractTablesWithRelations, SQL } from 'drizzle-orm';
|
|
2
|
+
import { TablesRelationalConfig, ExtractTablesWithRelations, SQL, NotNull, BuildExtraConfigColumns, BuildColumns, Placeholder } from 'drizzle-orm';
|
|
3
3
|
import * as drizzle_orm_pg_core from 'drizzle-orm/pg-core';
|
|
4
|
-
import { PgTable, PgQueryResultHKT, PgTransaction, PgUpdateBase,
|
|
4
|
+
import { PgTable, PgQueryResultHKT, PgTransaction, PgUpdateBase, PgCustomColumnBuilder, PgColumnBuilderBase, PgTableExtraConfig, PgTableWithColumns, PgUpdateSetSource, PgSelectBuilder, SelectedFields, TableConfig, PgDatabase, AnyPgTable } from 'drizzle-orm/pg-core';
|
|
5
5
|
import { S as Sink, a as SinkCursorParams } from '../../shared/indexer.b9c8f0d8.cjs';
|
|
6
6
|
import { Range } from 'postgres-range';
|
|
7
7
|
|
|
@@ -13,6 +13,72 @@ declare class DrizzleSinkDelete<TTable extends PgTable, TQueryResult extends PgQ
|
|
|
13
13
|
where(where: SQL): Omit<PgUpdateBase<TTable, TQueryResult, undefined, false, "where">, "where">;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
+
type Comparable = string | number;
|
|
17
|
+
type RangeBound<T extends Comparable> = T | {
|
|
18
|
+
value: T;
|
|
19
|
+
inclusive: boolean;
|
|
20
|
+
};
|
|
21
|
+
declare class Int8Range {
|
|
22
|
+
readonly range: Range<number>;
|
|
23
|
+
constructor(range: Range<number>);
|
|
24
|
+
get start(): RangeBound<number> | null;
|
|
25
|
+
get end(): RangeBound<number> | null;
|
|
26
|
+
}
|
|
27
|
+
declare const int8range: {
|
|
28
|
+
(): drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
29
|
+
name: "";
|
|
30
|
+
dataType: "custom";
|
|
31
|
+
columnType: "PgCustomColumn";
|
|
32
|
+
data: Int8Range;
|
|
33
|
+
driverParam: unknown;
|
|
34
|
+
enumValues: undefined;
|
|
35
|
+
generated: undefined;
|
|
36
|
+
}>;
|
|
37
|
+
<TConfig extends Record<string, any>>(fieldConfig?: TConfig | undefined): drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
38
|
+
name: "";
|
|
39
|
+
dataType: "custom";
|
|
40
|
+
columnType: "PgCustomColumn";
|
|
41
|
+
data: Int8Range;
|
|
42
|
+
driverParam: unknown;
|
|
43
|
+
enumValues: undefined;
|
|
44
|
+
generated: undefined;
|
|
45
|
+
}>;
|
|
46
|
+
<TName extends string>(dbName: TName, fieldConfig?: unknown): drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
47
|
+
name: TName;
|
|
48
|
+
dataType: "custom";
|
|
49
|
+
columnType: "PgCustomColumn";
|
|
50
|
+
data: Int8Range;
|
|
51
|
+
driverParam: unknown;
|
|
52
|
+
enumValues: undefined;
|
|
53
|
+
generated: undefined;
|
|
54
|
+
}>;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
type CursorColumnBuilder = NotNull<PgCustomColumnBuilder<{
|
|
58
|
+
name: "_cursor";
|
|
59
|
+
dataType: "custom";
|
|
60
|
+
columnType: "PgCustomColumn";
|
|
61
|
+
data: Int8Range;
|
|
62
|
+
driverParam: undefined;
|
|
63
|
+
enumValues: undefined;
|
|
64
|
+
generated: undefined;
|
|
65
|
+
}>>;
|
|
66
|
+
type PgTableWithCursorFn<TSchema extends string | undefined = undefined> = <TTableName extends string, TColumnsMap extends Record<string, PgColumnBuilderBase>>(name: TTableName, columns: TColumnsMap, extraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap & {
|
|
67
|
+
_cursor: CursorColumnBuilder;
|
|
68
|
+
}, "pg">) => PgTableExtraConfig) => PgTableWithColumns<{
|
|
69
|
+
name: TTableName;
|
|
70
|
+
schema: TSchema;
|
|
71
|
+
columns: BuildColumns<TTableName, TColumnsMap & {
|
|
72
|
+
_cursor: CursorColumnBuilder;
|
|
73
|
+
}, "pg">;
|
|
74
|
+
dialect: "pg";
|
|
75
|
+
}>;
|
|
76
|
+
type PgInsertValue<TTable extends PgTable> = Omit<{
|
|
77
|
+
[Key in keyof TTable["$inferInsert"]]: TTable["$inferInsert"][Key] | SQL | Placeholder;
|
|
78
|
+
} & {}, "_cursor">;
|
|
79
|
+
declare const pgTable: PgTableWithCursorFn;
|
|
80
|
+
declare const getDrizzleCursor: (cursor_range: [bigint | undefined, bigint | undefined] | bigint | undefined) => Int8Range;
|
|
81
|
+
|
|
16
82
|
declare class DrizzleSinkInsert<TTable extends PgTable, TQueryResult extends PgQueryResultHKT, TFullSchema extends Record<string, unknown> = Record<string, never>, TSchema extends TablesRelationalConfig = ExtractTablesWithRelations<TFullSchema>> {
|
|
17
83
|
private db;
|
|
18
84
|
private table;
|
|
@@ -84,28 +150,4 @@ declare class DrizzleSink<TQueryResult extends PgQueryResultHKT, TFullSchema ext
|
|
|
84
150
|
}
|
|
85
151
|
declare const drizzle: <TQueryResult extends PgQueryResultHKT, TFullSchema extends Record<string, unknown> = Record<string, never>, TSchema extends TablesRelationalConfig = ExtractTablesWithRelations<TFullSchema>>(args: DrizzleSinkOptions<TQueryResult, TFullSchema, TSchema>) => DrizzleSink<TQueryResult, TFullSchema, TSchema>;
|
|
86
152
|
|
|
87
|
-
type
|
|
88
|
-
type RangeBound<T extends Comparable> = T | {
|
|
89
|
-
value: T;
|
|
90
|
-
inclusive: boolean;
|
|
91
|
-
};
|
|
92
|
-
declare class Int8Range {
|
|
93
|
-
readonly range: Range<number>;
|
|
94
|
-
constructor(range: Range<number>);
|
|
95
|
-
get start(): RangeBound<number> | null;
|
|
96
|
-
get end(): RangeBound<number> | null;
|
|
97
|
-
}
|
|
98
|
-
declare const int8range: <TName extends string>(dbName: TName, fieldConfig?: unknown) => drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
99
|
-
name: TName;
|
|
100
|
-
dataType: "custom";
|
|
101
|
-
columnType: "PgCustomColumn";
|
|
102
|
-
data: Int8Range;
|
|
103
|
-
driverParam: unknown;
|
|
104
|
-
enumValues: undefined;
|
|
105
|
-
generated: undefined;
|
|
106
|
-
}>;
|
|
107
|
-
|
|
108
|
-
declare const pgTable: PgTableFn;
|
|
109
|
-
declare const getDrizzleCursor: (cursor_range: [bigint | undefined, bigint | undefined] | bigint | undefined) => Int8Range;
|
|
110
|
-
|
|
111
|
-
export { DrizzleSink, DrizzleSinkDelete, type DrizzleSinkOptions, type DrizzleSinkTables, DrizzleSinkTransaction, DrizzleSinkUpdate, Int8Range, drizzle, getDrizzleCursor, int8range, pgTable };
|
|
153
|
+
export { type CursorColumnBuilder, DrizzleSink, DrizzleSinkDelete, type DrizzleSinkOptions, type DrizzleSinkTables, DrizzleSinkTransaction, DrizzleSinkUpdate, Int8Range, type PgInsertValue, type PgTableWithCursorFn, drizzle, getDrizzleCursor, int8range, pgTable };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Cursor } from '@apibara/protocol';
|
|
2
|
-
import { TablesRelationalConfig, ExtractTablesWithRelations, SQL } from 'drizzle-orm';
|
|
2
|
+
import { TablesRelationalConfig, ExtractTablesWithRelations, SQL, NotNull, BuildExtraConfigColumns, BuildColumns, Placeholder } from 'drizzle-orm';
|
|
3
3
|
import * as drizzle_orm_pg_core from 'drizzle-orm/pg-core';
|
|
4
|
-
import { PgTable, PgQueryResultHKT, PgTransaction, PgUpdateBase,
|
|
4
|
+
import { PgTable, PgQueryResultHKT, PgTransaction, PgUpdateBase, PgCustomColumnBuilder, PgColumnBuilderBase, PgTableExtraConfig, PgTableWithColumns, PgUpdateSetSource, PgSelectBuilder, SelectedFields, TableConfig, PgDatabase, AnyPgTable } from 'drizzle-orm/pg-core';
|
|
5
5
|
import { S as Sink, a as SinkCursorParams } from '../../shared/indexer.b9c8f0d8.mjs';
|
|
6
6
|
import { Range } from 'postgres-range';
|
|
7
7
|
|
|
@@ -13,6 +13,72 @@ declare class DrizzleSinkDelete<TTable extends PgTable, TQueryResult extends PgQ
|
|
|
13
13
|
where(where: SQL): Omit<PgUpdateBase<TTable, TQueryResult, undefined, false, "where">, "where">;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
+
type Comparable = string | number;
|
|
17
|
+
type RangeBound<T extends Comparable> = T | {
|
|
18
|
+
value: T;
|
|
19
|
+
inclusive: boolean;
|
|
20
|
+
};
|
|
21
|
+
declare class Int8Range {
|
|
22
|
+
readonly range: Range<number>;
|
|
23
|
+
constructor(range: Range<number>);
|
|
24
|
+
get start(): RangeBound<number> | null;
|
|
25
|
+
get end(): RangeBound<number> | null;
|
|
26
|
+
}
|
|
27
|
+
declare const int8range: {
|
|
28
|
+
(): drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
29
|
+
name: "";
|
|
30
|
+
dataType: "custom";
|
|
31
|
+
columnType: "PgCustomColumn";
|
|
32
|
+
data: Int8Range;
|
|
33
|
+
driverParam: unknown;
|
|
34
|
+
enumValues: undefined;
|
|
35
|
+
generated: undefined;
|
|
36
|
+
}>;
|
|
37
|
+
<TConfig extends Record<string, any>>(fieldConfig?: TConfig | undefined): drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
38
|
+
name: "";
|
|
39
|
+
dataType: "custom";
|
|
40
|
+
columnType: "PgCustomColumn";
|
|
41
|
+
data: Int8Range;
|
|
42
|
+
driverParam: unknown;
|
|
43
|
+
enumValues: undefined;
|
|
44
|
+
generated: undefined;
|
|
45
|
+
}>;
|
|
46
|
+
<TName extends string>(dbName: TName, fieldConfig?: unknown): drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
47
|
+
name: TName;
|
|
48
|
+
dataType: "custom";
|
|
49
|
+
columnType: "PgCustomColumn";
|
|
50
|
+
data: Int8Range;
|
|
51
|
+
driverParam: unknown;
|
|
52
|
+
enumValues: undefined;
|
|
53
|
+
generated: undefined;
|
|
54
|
+
}>;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
type CursorColumnBuilder = NotNull<PgCustomColumnBuilder<{
|
|
58
|
+
name: "_cursor";
|
|
59
|
+
dataType: "custom";
|
|
60
|
+
columnType: "PgCustomColumn";
|
|
61
|
+
data: Int8Range;
|
|
62
|
+
driverParam: undefined;
|
|
63
|
+
enumValues: undefined;
|
|
64
|
+
generated: undefined;
|
|
65
|
+
}>>;
|
|
66
|
+
type PgTableWithCursorFn<TSchema extends string | undefined = undefined> = <TTableName extends string, TColumnsMap extends Record<string, PgColumnBuilderBase>>(name: TTableName, columns: TColumnsMap, extraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap & {
|
|
67
|
+
_cursor: CursorColumnBuilder;
|
|
68
|
+
}, "pg">) => PgTableExtraConfig) => PgTableWithColumns<{
|
|
69
|
+
name: TTableName;
|
|
70
|
+
schema: TSchema;
|
|
71
|
+
columns: BuildColumns<TTableName, TColumnsMap & {
|
|
72
|
+
_cursor: CursorColumnBuilder;
|
|
73
|
+
}, "pg">;
|
|
74
|
+
dialect: "pg";
|
|
75
|
+
}>;
|
|
76
|
+
type PgInsertValue<TTable extends PgTable> = Omit<{
|
|
77
|
+
[Key in keyof TTable["$inferInsert"]]: TTable["$inferInsert"][Key] | SQL | Placeholder;
|
|
78
|
+
} & {}, "_cursor">;
|
|
79
|
+
declare const pgTable: PgTableWithCursorFn;
|
|
80
|
+
declare const getDrizzleCursor: (cursor_range: [bigint | undefined, bigint | undefined] | bigint | undefined) => Int8Range;
|
|
81
|
+
|
|
16
82
|
declare class DrizzleSinkInsert<TTable extends PgTable, TQueryResult extends PgQueryResultHKT, TFullSchema extends Record<string, unknown> = Record<string, never>, TSchema extends TablesRelationalConfig = ExtractTablesWithRelations<TFullSchema>> {
|
|
17
83
|
private db;
|
|
18
84
|
private table;
|
|
@@ -84,28 +150,4 @@ declare class DrizzleSink<TQueryResult extends PgQueryResultHKT, TFullSchema ext
|
|
|
84
150
|
}
|
|
85
151
|
declare const drizzle: <TQueryResult extends PgQueryResultHKT, TFullSchema extends Record<string, unknown> = Record<string, never>, TSchema extends TablesRelationalConfig = ExtractTablesWithRelations<TFullSchema>>(args: DrizzleSinkOptions<TQueryResult, TFullSchema, TSchema>) => DrizzleSink<TQueryResult, TFullSchema, TSchema>;
|
|
86
152
|
|
|
87
|
-
type
|
|
88
|
-
type RangeBound<T extends Comparable> = T | {
|
|
89
|
-
value: T;
|
|
90
|
-
inclusive: boolean;
|
|
91
|
-
};
|
|
92
|
-
declare class Int8Range {
|
|
93
|
-
readonly range: Range<number>;
|
|
94
|
-
constructor(range: Range<number>);
|
|
95
|
-
get start(): RangeBound<number> | null;
|
|
96
|
-
get end(): RangeBound<number> | null;
|
|
97
|
-
}
|
|
98
|
-
declare const int8range: <TName extends string>(dbName: TName, fieldConfig?: unknown) => drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
99
|
-
name: TName;
|
|
100
|
-
dataType: "custom";
|
|
101
|
-
columnType: "PgCustomColumn";
|
|
102
|
-
data: Int8Range;
|
|
103
|
-
driverParam: unknown;
|
|
104
|
-
enumValues: undefined;
|
|
105
|
-
generated: undefined;
|
|
106
|
-
}>;
|
|
107
|
-
|
|
108
|
-
declare const pgTable: PgTableFn;
|
|
109
|
-
declare const getDrizzleCursor: (cursor_range: [bigint | undefined, bigint | undefined] | bigint | undefined) => Int8Range;
|
|
110
|
-
|
|
111
|
-
export { DrizzleSink, DrizzleSinkDelete, type DrizzleSinkOptions, type DrizzleSinkTables, DrizzleSinkTransaction, DrizzleSinkUpdate, Int8Range, drizzle, getDrizzleCursor, int8range, pgTable };
|
|
153
|
+
export { type CursorColumnBuilder, DrizzleSink, DrizzleSinkDelete, type DrizzleSinkOptions, type DrizzleSinkTables, DrizzleSinkTransaction, DrizzleSinkUpdate, Int8Range, type PgInsertValue, type PgTableWithCursorFn, drizzle, getDrizzleCursor, int8range, pgTable };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Cursor } from '@apibara/protocol';
|
|
2
|
-
import { TablesRelationalConfig, ExtractTablesWithRelations, SQL } from 'drizzle-orm';
|
|
2
|
+
import { TablesRelationalConfig, ExtractTablesWithRelations, SQL, NotNull, BuildExtraConfigColumns, BuildColumns, Placeholder } from 'drizzle-orm';
|
|
3
3
|
import * as drizzle_orm_pg_core from 'drizzle-orm/pg-core';
|
|
4
|
-
import { PgTable, PgQueryResultHKT, PgTransaction, PgUpdateBase,
|
|
4
|
+
import { PgTable, PgQueryResultHKT, PgTransaction, PgUpdateBase, PgCustomColumnBuilder, PgColumnBuilderBase, PgTableExtraConfig, PgTableWithColumns, PgUpdateSetSource, PgSelectBuilder, SelectedFields, TableConfig, PgDatabase, AnyPgTable } from 'drizzle-orm/pg-core';
|
|
5
5
|
import { S as Sink, a as SinkCursorParams } from '../../shared/indexer.b9c8f0d8.js';
|
|
6
6
|
import { Range } from 'postgres-range';
|
|
7
7
|
|
|
@@ -13,6 +13,72 @@ declare class DrizzleSinkDelete<TTable extends PgTable, TQueryResult extends PgQ
|
|
|
13
13
|
where(where: SQL): Omit<PgUpdateBase<TTable, TQueryResult, undefined, false, "where">, "where">;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
+
type Comparable = string | number;
|
|
17
|
+
type RangeBound<T extends Comparable> = T | {
|
|
18
|
+
value: T;
|
|
19
|
+
inclusive: boolean;
|
|
20
|
+
};
|
|
21
|
+
declare class Int8Range {
|
|
22
|
+
readonly range: Range<number>;
|
|
23
|
+
constructor(range: Range<number>);
|
|
24
|
+
get start(): RangeBound<number> | null;
|
|
25
|
+
get end(): RangeBound<number> | null;
|
|
26
|
+
}
|
|
27
|
+
declare const int8range: {
|
|
28
|
+
(): drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
29
|
+
name: "";
|
|
30
|
+
dataType: "custom";
|
|
31
|
+
columnType: "PgCustomColumn";
|
|
32
|
+
data: Int8Range;
|
|
33
|
+
driverParam: unknown;
|
|
34
|
+
enumValues: undefined;
|
|
35
|
+
generated: undefined;
|
|
36
|
+
}>;
|
|
37
|
+
<TConfig extends Record<string, any>>(fieldConfig?: TConfig | undefined): drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
38
|
+
name: "";
|
|
39
|
+
dataType: "custom";
|
|
40
|
+
columnType: "PgCustomColumn";
|
|
41
|
+
data: Int8Range;
|
|
42
|
+
driverParam: unknown;
|
|
43
|
+
enumValues: undefined;
|
|
44
|
+
generated: undefined;
|
|
45
|
+
}>;
|
|
46
|
+
<TName extends string>(dbName: TName, fieldConfig?: unknown): drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
47
|
+
name: TName;
|
|
48
|
+
dataType: "custom";
|
|
49
|
+
columnType: "PgCustomColumn";
|
|
50
|
+
data: Int8Range;
|
|
51
|
+
driverParam: unknown;
|
|
52
|
+
enumValues: undefined;
|
|
53
|
+
generated: undefined;
|
|
54
|
+
}>;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
type CursorColumnBuilder = NotNull<PgCustomColumnBuilder<{
|
|
58
|
+
name: "_cursor";
|
|
59
|
+
dataType: "custom";
|
|
60
|
+
columnType: "PgCustomColumn";
|
|
61
|
+
data: Int8Range;
|
|
62
|
+
driverParam: undefined;
|
|
63
|
+
enumValues: undefined;
|
|
64
|
+
generated: undefined;
|
|
65
|
+
}>>;
|
|
66
|
+
type PgTableWithCursorFn<TSchema extends string | undefined = undefined> = <TTableName extends string, TColumnsMap extends Record<string, PgColumnBuilderBase>>(name: TTableName, columns: TColumnsMap, extraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap & {
|
|
67
|
+
_cursor: CursorColumnBuilder;
|
|
68
|
+
}, "pg">) => PgTableExtraConfig) => PgTableWithColumns<{
|
|
69
|
+
name: TTableName;
|
|
70
|
+
schema: TSchema;
|
|
71
|
+
columns: BuildColumns<TTableName, TColumnsMap & {
|
|
72
|
+
_cursor: CursorColumnBuilder;
|
|
73
|
+
}, "pg">;
|
|
74
|
+
dialect: "pg";
|
|
75
|
+
}>;
|
|
76
|
+
type PgInsertValue<TTable extends PgTable> = Omit<{
|
|
77
|
+
[Key in keyof TTable["$inferInsert"]]: TTable["$inferInsert"][Key] | SQL | Placeholder;
|
|
78
|
+
} & {}, "_cursor">;
|
|
79
|
+
declare const pgTable: PgTableWithCursorFn;
|
|
80
|
+
declare const getDrizzleCursor: (cursor_range: [bigint | undefined, bigint | undefined] | bigint | undefined) => Int8Range;
|
|
81
|
+
|
|
16
82
|
declare class DrizzleSinkInsert<TTable extends PgTable, TQueryResult extends PgQueryResultHKT, TFullSchema extends Record<string, unknown> = Record<string, never>, TSchema extends TablesRelationalConfig = ExtractTablesWithRelations<TFullSchema>> {
|
|
17
83
|
private db;
|
|
18
84
|
private table;
|
|
@@ -84,28 +150,4 @@ declare class DrizzleSink<TQueryResult extends PgQueryResultHKT, TFullSchema ext
|
|
|
84
150
|
}
|
|
85
151
|
declare const drizzle: <TQueryResult extends PgQueryResultHKT, TFullSchema extends Record<string, unknown> = Record<string, never>, TSchema extends TablesRelationalConfig = ExtractTablesWithRelations<TFullSchema>>(args: DrizzleSinkOptions<TQueryResult, TFullSchema, TSchema>) => DrizzleSink<TQueryResult, TFullSchema, TSchema>;
|
|
86
152
|
|
|
87
|
-
type
|
|
88
|
-
type RangeBound<T extends Comparable> = T | {
|
|
89
|
-
value: T;
|
|
90
|
-
inclusive: boolean;
|
|
91
|
-
};
|
|
92
|
-
declare class Int8Range {
|
|
93
|
-
readonly range: Range<number>;
|
|
94
|
-
constructor(range: Range<number>);
|
|
95
|
-
get start(): RangeBound<number> | null;
|
|
96
|
-
get end(): RangeBound<number> | null;
|
|
97
|
-
}
|
|
98
|
-
declare const int8range: <TName extends string>(dbName: TName, fieldConfig?: unknown) => drizzle_orm_pg_core.PgCustomColumnBuilder<{
|
|
99
|
-
name: TName;
|
|
100
|
-
dataType: "custom";
|
|
101
|
-
columnType: "PgCustomColumn";
|
|
102
|
-
data: Int8Range;
|
|
103
|
-
driverParam: unknown;
|
|
104
|
-
enumValues: undefined;
|
|
105
|
-
generated: undefined;
|
|
106
|
-
}>;
|
|
107
|
-
|
|
108
|
-
declare const pgTable: PgTableFn;
|
|
109
|
-
declare const getDrizzleCursor: (cursor_range: [bigint | undefined, bigint | undefined] | bigint | undefined) => Int8Range;
|
|
110
|
-
|
|
111
|
-
export { DrizzleSink, DrizzleSinkDelete, type DrizzleSinkOptions, type DrizzleSinkTables, DrizzleSinkTransaction, DrizzleSinkUpdate, Int8Range, drizzle, getDrizzleCursor, int8range, pgTable };
|
|
153
|
+
export { type CursorColumnBuilder, DrizzleSink, DrizzleSinkDelete, type DrizzleSinkOptions, type DrizzleSinkTables, DrizzleSinkTransaction, DrizzleSinkUpdate, Int8Range, type PgInsertValue, type PgTableWithCursorFn, drizzle, getDrizzleCursor, int8range, pgTable };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apibara/indexer",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.9",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -80,14 +80,14 @@
|
|
|
80
80
|
"@types/pg": "^8.11.10",
|
|
81
81
|
"better-sqlite3": "^11.1.2",
|
|
82
82
|
"csv-stringify": "^6.5.0",
|
|
83
|
-
"drizzle-orm": "^0.
|
|
83
|
+
"drizzle-orm": "^0.35.2",
|
|
84
84
|
"pg": "^8.12.0",
|
|
85
85
|
"postgres-range": "^1.1.4",
|
|
86
86
|
"unbuild": "^2.0.0",
|
|
87
87
|
"vitest": "^1.6.0"
|
|
88
88
|
},
|
|
89
89
|
"dependencies": {
|
|
90
|
-
"@apibara/protocol": "2.0.0-beta.
|
|
90
|
+
"@apibara/protocol": "2.0.0-beta.9",
|
|
91
91
|
"@opentelemetry/api": "^1.9.0",
|
|
92
92
|
"consola": "^3.2.3",
|
|
93
93
|
"hookable": "^5.5.3",
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
"peerDependencies": {
|
|
99
99
|
"better-sqlite3": "^11.1.2",
|
|
100
100
|
"csv-stringify": "^6.5.0",
|
|
101
|
-
"drizzle-orm": "^0.
|
|
101
|
+
"drizzle-orm": "^0.35.2",
|
|
102
102
|
"postgres-range": "^1.1.4",
|
|
103
103
|
"vitest": "^1.6.0"
|
|
104
104
|
}
|
|
@@ -4,12 +4,12 @@ import type {
|
|
|
4
4
|
TablesRelationalConfig,
|
|
5
5
|
} from "drizzle-orm";
|
|
6
6
|
import type {
|
|
7
|
-
PgInsertValue,
|
|
7
|
+
PgInsertValue as DrizzleInsertValue,
|
|
8
8
|
PgQueryResultHKT,
|
|
9
9
|
PgTable,
|
|
10
10
|
PgTransaction,
|
|
11
11
|
} from "drizzle-orm/pg-core";
|
|
12
|
-
import { getDrizzleCursor } from "./utils";
|
|
12
|
+
import { type PgInsertValue, getDrizzleCursor } from "./utils";
|
|
13
13
|
|
|
14
14
|
export class DrizzleSinkInsert<
|
|
15
15
|
TTable extends PgTable,
|
|
@@ -34,6 +34,9 @@ export class DrizzleSinkInsert<
|
|
|
34
34
|
};
|
|
35
35
|
},
|
|
36
36
|
);
|
|
37
|
-
|
|
37
|
+
|
|
38
|
+
return originalInsert.values(
|
|
39
|
+
cursoredValues as DrizzleInsertValue<TTable>[],
|
|
40
|
+
);
|
|
38
41
|
}
|
|
39
42
|
}
|
|
@@ -1,9 +1,72 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type {
|
|
2
|
+
BuildColumns,
|
|
3
|
+
BuildExtraConfigColumns,
|
|
4
|
+
NotNull,
|
|
5
|
+
Placeholder,
|
|
6
|
+
SQL,
|
|
7
|
+
} from "drizzle-orm";
|
|
8
|
+
import type {
|
|
9
|
+
PgColumnBuilderBase,
|
|
10
|
+
PgCustomColumnBuilder,
|
|
11
|
+
PgTable,
|
|
12
|
+
PgTableExtraConfig,
|
|
13
|
+
PgTableWithColumns,
|
|
14
|
+
} from "drizzle-orm/pg-core";
|
|
2
15
|
import { pgTable as drizzlePgTable } from "drizzle-orm/pg-core";
|
|
3
16
|
import range from "postgres-range";
|
|
4
17
|
import { Int8Range, int8range } from "./Int8Range";
|
|
5
18
|
|
|
6
|
-
export
|
|
19
|
+
export type CursorColumnBuilder = NotNull<
|
|
20
|
+
PgCustomColumnBuilder<{
|
|
21
|
+
name: "_cursor";
|
|
22
|
+
dataType: "custom";
|
|
23
|
+
columnType: "PgCustomColumn";
|
|
24
|
+
data: Int8Range;
|
|
25
|
+
driverParam: undefined;
|
|
26
|
+
enumValues: undefined;
|
|
27
|
+
generated: undefined;
|
|
28
|
+
}>
|
|
29
|
+
>;
|
|
30
|
+
|
|
31
|
+
// Redefining the type of `pgTable` to include the `_cursor` column.
|
|
32
|
+
export type PgTableWithCursorFn<
|
|
33
|
+
TSchema extends string | undefined = undefined,
|
|
34
|
+
> = <
|
|
35
|
+
TTableName extends string,
|
|
36
|
+
TColumnsMap extends Record<string, PgColumnBuilderBase>,
|
|
37
|
+
>(
|
|
38
|
+
name: TTableName,
|
|
39
|
+
columns: TColumnsMap,
|
|
40
|
+
extraConfig?: (
|
|
41
|
+
self: BuildExtraConfigColumns<
|
|
42
|
+
TTableName,
|
|
43
|
+
TColumnsMap & { _cursor: CursorColumnBuilder },
|
|
44
|
+
"pg"
|
|
45
|
+
>,
|
|
46
|
+
) => PgTableExtraConfig,
|
|
47
|
+
) => PgTableWithColumns<{
|
|
48
|
+
name: TTableName;
|
|
49
|
+
schema: TSchema;
|
|
50
|
+
columns: BuildColumns<
|
|
51
|
+
TTableName,
|
|
52
|
+
TColumnsMap & { _cursor: CursorColumnBuilder },
|
|
53
|
+
"pg"
|
|
54
|
+
>;
|
|
55
|
+
dialect: "pg";
|
|
56
|
+
}>;
|
|
57
|
+
|
|
58
|
+
// Same as the drizzle's `PgInsertValue` type, but without the `_cursor` column.
|
|
59
|
+
export type PgInsertValue<TTable extends PgTable> = Omit<
|
|
60
|
+
{
|
|
61
|
+
[Key in keyof TTable["$inferInsert"]]:
|
|
62
|
+
| TTable["$inferInsert"][Key]
|
|
63
|
+
| SQL
|
|
64
|
+
| Placeholder;
|
|
65
|
+
} & {},
|
|
66
|
+
"_cursor"
|
|
67
|
+
>;
|
|
68
|
+
|
|
69
|
+
export const pgTable: PgTableWithCursorFn = (name, columns, extraConfig?) => {
|
|
7
70
|
return drizzlePgTable(
|
|
8
71
|
name,
|
|
9
72
|
{
|