@apibara/indexer 2.1.0-beta.6 → 2.1.0-beta.7
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/internal/testing.cjs +3 -1
- package/dist/internal/testing.mjs +3 -1
- package/dist/testing/index.cjs +8 -3
- package/dist/testing/index.d.cts +3 -2
- package/dist/testing/index.d.mts +3 -2
- package/dist/testing/index.d.ts +3 -2
- package/dist/testing/index.mjs +8 -3
- package/package.json +2 -2
- package/src/internal/testing.ts +2 -2
- package/src/testing/index.ts +11 -0
|
@@ -5,10 +5,11 @@ const testing = require('@apibara/protocol/testing');
|
|
|
5
5
|
const context = require('../shared/indexer.077335f3.cjs');
|
|
6
6
|
const index = require('../index.cjs');
|
|
7
7
|
const config = require('../shared/indexer.601ceab0.cjs');
|
|
8
|
-
require('
|
|
8
|
+
const logger = require('../shared/indexer.2416906c.cjs');
|
|
9
9
|
const internal_plugins = require('./plugins.cjs');
|
|
10
10
|
require('node:async_hooks');
|
|
11
11
|
require('unctx');
|
|
12
|
+
require('consola');
|
|
12
13
|
require('hookable');
|
|
13
14
|
require('node:assert');
|
|
14
15
|
require('@opentelemetry/api');
|
|
@@ -62,6 +63,7 @@ function getMockIndexer(params) {
|
|
|
62
63
|
async transform() {
|
|
63
64
|
},
|
|
64
65
|
plugins: [
|
|
66
|
+
logger.logger(),
|
|
65
67
|
internal_plugins.internalContext(
|
|
66
68
|
contextParams ?? {
|
|
67
69
|
availableIndexers: ["testing"],
|
|
@@ -3,10 +3,11 @@ import { MockStream } from '@apibara/protocol/testing';
|
|
|
3
3
|
import { u as useIndexerContext } from '../shared/indexer.a55ad619.mjs';
|
|
4
4
|
import { createIndexer, defineIndexer } from '../index.mjs';
|
|
5
5
|
import { d as defineIndexerPlugin } from '../shared/indexer.9b21ddd2.mjs';
|
|
6
|
-
import '
|
|
6
|
+
import { l as logger } from '../shared/indexer.ff25c953.mjs';
|
|
7
7
|
import { internalContext } from './plugins.mjs';
|
|
8
8
|
import 'node:async_hooks';
|
|
9
9
|
import 'unctx';
|
|
10
|
+
import 'consola';
|
|
10
11
|
import 'hookable';
|
|
11
12
|
import 'node:assert';
|
|
12
13
|
import '@opentelemetry/api';
|
|
@@ -60,6 +61,7 @@ function getMockIndexer(params) {
|
|
|
60
61
|
async transform() {
|
|
61
62
|
},
|
|
62
63
|
plugins: [
|
|
64
|
+
logger(),
|
|
63
65
|
internalContext(
|
|
64
66
|
contextParams ?? {
|
|
65
67
|
availableIndexers: ["testing"],
|
package/dist/testing/index.cjs
CHANGED
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
const protocol = require('@apibara/protocol');
|
|
4
4
|
const ci = require('ci-info');
|
|
5
|
+
const context = require('../shared/indexer.077335f3.cjs');
|
|
5
6
|
const index = require('../index.cjs');
|
|
6
7
|
const internal_plugins = require('../internal/plugins.cjs');
|
|
7
8
|
const logger = require('../shared/indexer.2416906c.cjs');
|
|
8
9
|
const vcr_index = require('../vcr/index.cjs');
|
|
10
|
+
require('node:async_hooks');
|
|
11
|
+
require('unctx');
|
|
9
12
|
require('consola');
|
|
10
13
|
require('hookable');
|
|
11
14
|
require('node:assert');
|
|
12
|
-
require('../shared/indexer.077335f3.cjs');
|
|
13
|
-
require('node:async_hooks');
|
|
14
|
-
require('unctx');
|
|
15
15
|
require('@opentelemetry/api');
|
|
16
16
|
require('../shared/indexer.601ceab0.cjs');
|
|
17
17
|
require('node:fs/promises');
|
|
@@ -24,6 +24,7 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
|
|
|
24
24
|
const ci__default = /*#__PURE__*/_interopDefaultCompat(ci);
|
|
25
25
|
|
|
26
26
|
function createVcr() {
|
|
27
|
+
let result;
|
|
27
28
|
return {
|
|
28
29
|
async run(cassetteName, indexerConfig, range) {
|
|
29
30
|
const vcrConfig = {
|
|
@@ -47,6 +48,9 @@ function createVcr() {
|
|
|
47
48
|
...indexerConfig.plugins ?? []
|
|
48
49
|
];
|
|
49
50
|
const indexer = index.createIndexer(indexerConfig);
|
|
51
|
+
indexer.hooks.hook("run:after", () => {
|
|
52
|
+
result = context.useIndexerContext();
|
|
53
|
+
});
|
|
50
54
|
if (!vcr_index.isCassetteAvailable(vcrConfig, cassetteName)) {
|
|
51
55
|
if (ci__default.isCI) {
|
|
52
56
|
throw new Error("Cannot record cassette in CI");
|
|
@@ -59,6 +63,7 @@ function createVcr() {
|
|
|
59
63
|
} else {
|
|
60
64
|
await vcr_index.replay(vcrConfig, indexer, cassetteName);
|
|
61
65
|
}
|
|
66
|
+
return result;
|
|
62
67
|
}
|
|
63
68
|
};
|
|
64
69
|
}
|
package/dist/testing/index.d.cts
CHANGED
|
@@ -2,11 +2,12 @@ import { I as IndexerWithStreamConfig } from '../shared/indexer.fedcd831.cjs';
|
|
|
2
2
|
import '@apibara/protocol';
|
|
3
3
|
import 'hookable';
|
|
4
4
|
|
|
5
|
+
type VcrResult = Record<string, unknown>;
|
|
5
6
|
declare function createVcr(): {
|
|
6
7
|
run<TFilter, TBlock>(cassetteName: string, indexerConfig: IndexerWithStreamConfig<TFilter, TBlock>, range: {
|
|
7
8
|
fromBlock: bigint;
|
|
8
9
|
toBlock: bigint;
|
|
9
|
-
}): Promise<
|
|
10
|
+
}): Promise<VcrResult>;
|
|
10
11
|
};
|
|
11
12
|
|
|
12
|
-
export { createVcr };
|
|
13
|
+
export { type VcrResult, createVcr };
|
package/dist/testing/index.d.mts
CHANGED
|
@@ -2,11 +2,12 @@ import { I as IndexerWithStreamConfig } from '../shared/indexer.fedcd831.mjs';
|
|
|
2
2
|
import '@apibara/protocol';
|
|
3
3
|
import 'hookable';
|
|
4
4
|
|
|
5
|
+
type VcrResult = Record<string, unknown>;
|
|
5
6
|
declare function createVcr(): {
|
|
6
7
|
run<TFilter, TBlock>(cassetteName: string, indexerConfig: IndexerWithStreamConfig<TFilter, TBlock>, range: {
|
|
7
8
|
fromBlock: bigint;
|
|
8
9
|
toBlock: bigint;
|
|
9
|
-
}): Promise<
|
|
10
|
+
}): Promise<VcrResult>;
|
|
10
11
|
};
|
|
11
12
|
|
|
12
|
-
export { createVcr };
|
|
13
|
+
export { type VcrResult, createVcr };
|
package/dist/testing/index.d.ts
CHANGED
|
@@ -2,11 +2,12 @@ import { I as IndexerWithStreamConfig } from '../shared/indexer.fedcd831.js';
|
|
|
2
2
|
import '@apibara/protocol';
|
|
3
3
|
import 'hookable';
|
|
4
4
|
|
|
5
|
+
type VcrResult = Record<string, unknown>;
|
|
5
6
|
declare function createVcr(): {
|
|
6
7
|
run<TFilter, TBlock>(cassetteName: string, indexerConfig: IndexerWithStreamConfig<TFilter, TBlock>, range: {
|
|
7
8
|
fromBlock: bigint;
|
|
8
9
|
toBlock: bigint;
|
|
9
|
-
}): Promise<
|
|
10
|
+
}): Promise<VcrResult>;
|
|
10
11
|
};
|
|
11
12
|
|
|
12
|
-
export { createVcr };
|
|
13
|
+
export { type VcrResult, createVcr };
|
package/dist/testing/index.mjs
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { createClient } from '@apibara/protocol';
|
|
2
2
|
import ci from 'ci-info';
|
|
3
|
+
import { u as useIndexerContext } from '../shared/indexer.a55ad619.mjs';
|
|
3
4
|
import { createIndexer } from '../index.mjs';
|
|
4
5
|
import { internalContext } from '../internal/plugins.mjs';
|
|
5
6
|
import { l as logger } from '../shared/indexer.ff25c953.mjs';
|
|
6
7
|
import { isCassetteAvailable, record, replay } from '../vcr/index.mjs';
|
|
8
|
+
import 'node:async_hooks';
|
|
9
|
+
import 'unctx';
|
|
7
10
|
import 'consola';
|
|
8
11
|
import 'hookable';
|
|
9
12
|
import 'node:assert';
|
|
10
|
-
import '../shared/indexer.a55ad619.mjs';
|
|
11
|
-
import 'node:async_hooks';
|
|
12
|
-
import 'unctx';
|
|
13
13
|
import '@opentelemetry/api';
|
|
14
14
|
import '../shared/indexer.9b21ddd2.mjs';
|
|
15
15
|
import 'node:fs/promises';
|
|
@@ -18,6 +18,7 @@ import 'node:fs';
|
|
|
18
18
|
import '@apibara/protocol/testing';
|
|
19
19
|
|
|
20
20
|
function createVcr() {
|
|
21
|
+
let result;
|
|
21
22
|
return {
|
|
22
23
|
async run(cassetteName, indexerConfig, range) {
|
|
23
24
|
const vcrConfig = {
|
|
@@ -41,6 +42,9 @@ function createVcr() {
|
|
|
41
42
|
...indexerConfig.plugins ?? []
|
|
42
43
|
];
|
|
43
44
|
const indexer = createIndexer(indexerConfig);
|
|
45
|
+
indexer.hooks.hook("run:after", () => {
|
|
46
|
+
result = useIndexerContext();
|
|
47
|
+
});
|
|
44
48
|
if (!isCassetteAvailable(vcrConfig, cassetteName)) {
|
|
45
49
|
if (ci.isCI) {
|
|
46
50
|
throw new Error("Cannot record cassette in CI");
|
|
@@ -53,6 +57,7 @@ function createVcr() {
|
|
|
53
57
|
} else {
|
|
54
58
|
await replay(vcrConfig, indexer, cassetteName);
|
|
55
59
|
}
|
|
60
|
+
return result;
|
|
56
61
|
}
|
|
57
62
|
};
|
|
58
63
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apibara/indexer",
|
|
3
|
-
"version": "2.1.0-beta.
|
|
3
|
+
"version": "2.1.0-beta.7",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"vitest": "^1.6.0"
|
|
71
71
|
},
|
|
72
72
|
"dependencies": {
|
|
73
|
-
"@apibara/protocol": "2.1.0-beta.
|
|
73
|
+
"@apibara/protocol": "2.1.0-beta.7",
|
|
74
74
|
"@opentelemetry/api": "^1.9.0",
|
|
75
75
|
"ci-info": "^4.1.0",
|
|
76
76
|
"consola": "^3.2.3",
|
package/src/internal/testing.ts
CHANGED
|
@@ -5,10 +5,9 @@ import {
|
|
|
5
5
|
MockStream,
|
|
6
6
|
type MockStreamResponse,
|
|
7
7
|
} from "@apibara/protocol/testing";
|
|
8
|
-
|
|
9
8
|
import { useIndexerContext } from "../context";
|
|
10
9
|
import { type IndexerConfig, createIndexer, defineIndexer } from "../indexer";
|
|
11
|
-
import { defineIndexerPlugin } from "../plugins";
|
|
10
|
+
import { defineIndexerPlugin, logger } from "../plugins";
|
|
12
11
|
import { type InternalContext, internalContext } from "./plugins";
|
|
13
12
|
|
|
14
13
|
export type MockMessagesOptions = {
|
|
@@ -82,6 +81,7 @@ export function getMockIndexer(params?: MockIndexerParams) {
|
|
|
82
81
|
filter: {},
|
|
83
82
|
async transform() {},
|
|
84
83
|
plugins: [
|
|
84
|
+
logger(),
|
|
85
85
|
internalContext(
|
|
86
86
|
contextParams ??
|
|
87
87
|
({
|
package/src/testing/index.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { createClient } from "@apibara/protocol";
|
|
2
2
|
import ci from "ci-info";
|
|
3
|
+
import { useIndexerContext } from "../context";
|
|
3
4
|
import { type IndexerWithStreamConfig, createIndexer } from "../indexer";
|
|
4
5
|
import { type InternalContext, internalContext } from "../plugins/context";
|
|
5
6
|
import { logger } from "../plugins/logger";
|
|
@@ -8,7 +9,11 @@ import { isCassetteAvailable } from "../vcr/helper";
|
|
|
8
9
|
import { record } from "../vcr/record";
|
|
9
10
|
import { replay } from "../vcr/replay";
|
|
10
11
|
|
|
12
|
+
export type VcrResult = Record<string, unknown>;
|
|
13
|
+
|
|
11
14
|
export function createVcr() {
|
|
15
|
+
let result: VcrResult;
|
|
16
|
+
|
|
12
17
|
return {
|
|
13
18
|
async run<TFilter, TBlock>(
|
|
14
19
|
cassetteName: string,
|
|
@@ -40,6 +45,10 @@ export function createVcr() {
|
|
|
40
45
|
|
|
41
46
|
const indexer = createIndexer(indexerConfig);
|
|
42
47
|
|
|
48
|
+
indexer.hooks.hook("run:after", () => {
|
|
49
|
+
result = useIndexerContext();
|
|
50
|
+
});
|
|
51
|
+
|
|
43
52
|
if (!isCassetteAvailable(vcrConfig, cassetteName)) {
|
|
44
53
|
if (ci.isCI) {
|
|
45
54
|
throw new Error("Cannot record cassette in CI");
|
|
@@ -53,6 +62,8 @@ export function createVcr() {
|
|
|
53
62
|
} else {
|
|
54
63
|
await replay(vcrConfig, indexer, cassetteName);
|
|
55
64
|
}
|
|
65
|
+
|
|
66
|
+
return result;
|
|
56
67
|
},
|
|
57
68
|
};
|
|
58
69
|
}
|