@apibara/protocol 0.4.6 → 0.4.8

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/client.js CHANGED
@@ -9,6 +9,8 @@ Object.defineProperty(exports, "ChannelCredentials", { enumerable: true, get: fu
9
9
  const StreamService = proto_1.v1alpha2.protoDescriptor.apibara.node.v1alpha2.Stream;
10
10
  // Server produces an heartbeat every 30 seconds, so we use 45 seconds as a timeout.
11
11
  const MESSAGE_TIMEOUT_MS = 45000;
12
+ // Increase the default message length to 128 MiB.
13
+ const DEFAULT_MESSAGE_LENGTH = 128 * 1048576; // 128 MiB
12
14
  /**
13
15
  * A client to configure and stream data.
14
16
  */
@@ -40,6 +42,7 @@ class StreamClient {
40
42
  : baseCredentials;
41
43
  this.inner = new StreamService(url, credentialsWithMetadata, {
42
44
  'grpc.keepalive_timeout_ms': 3600000,
45
+ 'grpc.max_receive_message_length': DEFAULT_MESSAGE_LENGTH,
43
46
  ...clientOptions,
44
47
  });
45
48
  this.stream_id = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/cursor.d.ts CHANGED
@@ -15,8 +15,21 @@ export declare const Cursor: {
15
15
  * been invalidated.
16
16
  */
17
17
  create: (order: string | number | Long, unique: Uint8Array) => ICursor;
18
+ /**
19
+ * Creates a new cursor from a plain Javascript object.
20
+ */
21
+ fromObject({ orderKey, uniqueKey }: ReturnType<typeof _toObject>): ICursor;
18
22
  /**
19
23
  * Returns the cursor string representation.
20
24
  */
21
25
  toString: (cursor?: ICursor | null) => string | undefined;
26
+ /**
27
+ * Returns the cursor as plain Javascript object.
28
+ */
29
+ toObject: (cursor?: ICursor | null) => ReturnType<typeof _toObject> | undefined;
30
+ };
31
+ declare function _toObject(cursor: ICursor): {
32
+ orderKey: string;
33
+ uniqueKey: string;
22
34
  };
35
+ export {};
package/dist/cursor.js CHANGED
@@ -30,14 +30,38 @@ exports.Cursor = {
30
30
  uniqueKey: unique,
31
31
  };
32
32
  },
33
+ /**
34
+ * Creates a new cursor from a plain Javascript object.
35
+ */
36
+ fromObject({ orderKey, uniqueKey }) {
37
+ return {
38
+ orderKey: long_1.default.fromString(orderKey),
39
+ uniqueKey: Buffer.from(uniqueKey.slice(2), 'hex'),
40
+ };
41
+ },
33
42
  /**
34
43
  * Returns the cursor string representation.
35
44
  */
36
45
  toString: (cursor) => {
37
46
  if (!cursor)
38
47
  return;
39
- let hash = Buffer.from(cursor.uniqueKey).toString('hex');
40
- return `${cursor.orderKey.toString()}/0x${hash}`;
48
+ const { orderKey, uniqueKey } = _toObject(cursor);
49
+ return `${orderKey}/${uniqueKey}`;
50
+ },
51
+ /**
52
+ * Returns the cursor as plain Javascript object.
53
+ */
54
+ toObject: (cursor) => {
55
+ if (!cursor)
56
+ return;
57
+ return _toObject(cursor);
41
58
  },
42
59
  };
60
+ function _toObject(cursor) {
61
+ let hash = Buffer.from(cursor.uniqueKey).toString('hex');
62
+ return {
63
+ orderKey: cursor.orderKey.toString(),
64
+ uniqueKey: `0x${hash}`,
65
+ };
66
+ }
43
67
  //# sourceMappingURL=cursor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../src/cursor.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAGV,QAAA,MAAM,GAAG;IACpB;;;;;OAKG;IACH,kBAAkB,EAAE,CAAC,KAA6B,EAAW,EAAE;QAC7D,OAAO;YACL,QAAQ,EAAE,cAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAC/B,SAAS,EAAE,IAAI,UAAU,EAAE;SAC5B,CAAA;IACH,CAAC;IAED;;;;;OAKG;IACH,MAAM,EAAE,CAAC,KAA6B,EAAE,MAAkB,EAAW,EAAE;QACrE,OAAO;YACL,QAAQ,EAAE,cAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAC/B,SAAS,EAAE,MAAM;SAClB,CAAA;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,EAAE,CAAC,MAAuB,EAAsB,EAAE;QACxD,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACxD,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,CAAA;IAClD,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../src/cursor.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAGV,QAAA,MAAM,GAAG;IACpB;;;;;OAKG;IACH,kBAAkB,EAAE,CAAC,KAA6B,EAAW,EAAE;QAC7D,OAAO;YACL,QAAQ,EAAE,cAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAC/B,SAAS,EAAE,IAAI,UAAU,EAAE;SAC5B,CAAA;IACH,CAAC;IAED;;;;;OAKG;IACH,MAAM,EAAE,CAAC,KAA6B,EAAE,MAAkB,EAAW,EAAE;QACrE,OAAO;YACL,QAAQ,EAAE,cAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAC/B,SAAS,EAAE,MAAM;SAClB,CAAA;IACH,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAgC;QAC9D,OAAO;YACL,QAAQ,EAAE,cAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YACnC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;SAClD,CAAA;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,EAAE,CAAC,MAAuB,EAAsB,EAAE;QACxD,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;QACjD,OAAO,GAAG,QAAQ,IAAI,SAAS,EAAE,CAAA;IACnC,CAAC;IAED;;OAEG;IACH,QAAQ,EAAE,CAAC,MAAuB,EAA4C,EAAE;QAC9E,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,OAAO,SAAS,CAAC,MAAM,CAAC,CAAA;IAC1B,CAAC;CACF,CAAA;AAED,SAAS,SAAS,CAAC,MAAe;IAChC,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IACxD,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;QACpC,SAAS,EAAE,KAAK,IAAI,EAAE;KACvB,CAAA;AACH,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const long_1 = __importDefault(require("long"));
7
+ const cursor_1 = require("./cursor");
8
+ describe('Cursor', () => {
9
+ it('can be converted to and from javascript objects', () => {
10
+ const cursorObject = {
11
+ orderKey: '1234',
12
+ uniqueKey: '0x05dd5e4f023a81a8daaf86b8bf3967b04276a89c81b840e8e55d658323854ad7',
13
+ };
14
+ const cursor = cursor_1.Cursor.fromObject(cursorObject);
15
+ expect(cursor.orderKey).toEqual(long_1.default.fromNumber(1234));
16
+ expect(cursor.uniqueKey).toHaveLength(32);
17
+ const back = cursor_1.Cursor.toObject(cursor);
18
+ expect(back.orderKey).toEqual(cursorObject.orderKey);
19
+ expect(back.uniqueKey).toEqual(cursorObject.uniqueKey);
20
+ });
21
+ });
22
+ //# sourceMappingURL=cursor.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor.test.js","sourceRoot":"","sources":["../src/cursor.test.ts"],"names":[],"mappings":";;;;;AAAA,gDAAuB;AACvB,qCAAiC;AAEjC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,YAAY,GAAG;YACnB,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,oEAAoE;SAChF,CAAA;QAED,MAAM,MAAM,GAAG,eAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;QAC9C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,cAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;QACtD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;QAEzC,MAAM,IAAI,GAAG,eAAM,CAAC,QAAQ,CAAC,MAAM,CAAE,CAAA;QAErC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QACpD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;IACxD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -5,7 +5,10 @@ const grpc_js_1 = require("@grpc/grpc-js");
5
5
  const proto_loader_1 = require("@grpc/proto-loader");
6
6
  const __NODE_PROTO_PATH = __dirname + '/stream.proto';
7
7
  // export definitions
8
- exports.packageDefinition = (0, proto_loader_1.loadSync)(__NODE_PROTO_PATH, {});
8
+ exports.packageDefinition = (0, proto_loader_1.loadSync)(__NODE_PROTO_PATH, {
9
+ oneofs: true,
10
+ defaults: true,
11
+ });
9
12
  exports.protoDescriptor = (0, grpc_js_1.loadPackageDefinition)(exports.packageDefinition);
10
13
  var DataFinality_1 = require("./apibara/node/v1alpha2/DataFinality");
11
14
  Object.defineProperty(exports, "DataFinality", { enumerable: true, get: function () { return DataFinality_1.DataFinality; } });
@@ -1 +1 @@
1
- {"version":3,"file":"v1alpha2.js","sourceRoot":"","sources":["../../src/proto/v1alpha2.ts"],"names":[],"mappings":";;;AAAA,2CAAqD;AACrD,qDAA6C;AAG7C,MAAM,iBAAiB,GAAG,SAAS,GAAG,eAAe,CAAA;AAErD,qBAAqB;AACR,QAAA,iBAAiB,GAAG,IAAA,uBAAQ,EAAC,iBAAiB,EAAE,EAAE,CAAC,CAAA;AACnD,QAAA,eAAe,GAAG,IAAA,+BAAqB,EAAC,yBAAiB,CAA6B,CAAA;AAKnG,qEAAmE;AAA1D,4GAAA,YAAY,OAAA"}
1
+ {"version":3,"file":"v1alpha2.js","sourceRoot":"","sources":["../../src/proto/v1alpha2.ts"],"names":[],"mappings":";;;AAAA,2CAAqD;AACrD,qDAA6C;AAG7C,MAAM,iBAAiB,GAAG,SAAS,GAAG,eAAe,CAAA;AAErD,qBAAqB;AACR,QAAA,iBAAiB,GAAG,IAAA,uBAAQ,EAAC,iBAAiB,EAAE;IAC3D,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;CACf,CAAC,CAAA;AACW,QAAA,eAAe,GAAG,IAAA,+BAAqB,EAAC,yBAAiB,CAA6B,CAAA;AAKnG,qEAAmE;AAA1D,4GAAA,YAAY,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apibara/protocol",
3
- "version": "0.4.6",
3
+ "version": "0.4.8",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/client.ts CHANGED
@@ -17,6 +17,9 @@ const StreamService = v1alpha2.protoDescriptor.apibara.node.v1alpha2.Stream
17
17
  // Server produces an heartbeat every 30 seconds, so we use 45 seconds as a timeout.
18
18
  const MESSAGE_TIMEOUT_MS = 45_000
19
19
 
20
+ // Increase the default message length to 128 MiB.
21
+ const DEFAULT_MESSAGE_LENGTH = 128 * 1_048_576 // 128 MiB
22
+
20
23
  export type DataStream = ClientDuplexStream<
21
24
  v1alpha2.IStreamDataRequest,
22
25
  v1alpha2.IStreamDataResponse
@@ -151,6 +154,7 @@ export class StreamClient {
151
154
 
152
155
  this.inner = new StreamService(url, credentialsWithMetadata, {
153
156
  'grpc.keepalive_timeout_ms': 3_600_000,
157
+ 'grpc.max_receive_message_length': DEFAULT_MESSAGE_LENGTH,
154
158
  ...clientOptions,
155
159
  })
156
160
  this.stream_id = 0
@@ -0,0 +1,20 @@
1
+ import Long from 'long'
2
+ import { Cursor } from './cursor'
3
+
4
+ describe('Cursor', () => {
5
+ it('can be converted to and from javascript objects', () => {
6
+ const cursorObject = {
7
+ orderKey: '1234',
8
+ uniqueKey: '0x05dd5e4f023a81a8daaf86b8bf3967b04276a89c81b840e8e55d658323854ad7',
9
+ }
10
+
11
+ const cursor = Cursor.fromObject(cursorObject)
12
+ expect(cursor.orderKey).toEqual(Long.fromNumber(1234))
13
+ expect(cursor.uniqueKey).toHaveLength(32)
14
+
15
+ const back = Cursor.toObject(cursor)!
16
+
17
+ expect(back.orderKey).toEqual(cursorObject.orderKey)
18
+ expect(back.uniqueKey).toEqual(cursorObject.uniqueKey)
19
+ })
20
+ })
package/src/cursor.ts CHANGED
@@ -28,12 +28,38 @@ export const Cursor = {
28
28
  }
29
29
  },
30
30
 
31
+ /**
32
+ * Creates a new cursor from a plain Javascript object.
33
+ */
34
+ fromObject({ orderKey, uniqueKey }: ReturnType<typeof _toObject>): ICursor {
35
+ return {
36
+ orderKey: Long.fromString(orderKey),
37
+ uniqueKey: Buffer.from(uniqueKey.slice(2), 'hex'),
38
+ }
39
+ },
40
+
31
41
  /**
32
42
  * Returns the cursor string representation.
33
43
  */
34
44
  toString: (cursor?: ICursor | null): string | undefined => {
35
45
  if (!cursor) return
36
- let hash = Buffer.from(cursor.uniqueKey).toString('hex')
37
- return `${cursor.orderKey.toString()}/0x${hash}`
46
+ const { orderKey, uniqueKey } = _toObject(cursor)
47
+ return `${orderKey}/${uniqueKey}`
38
48
  },
49
+
50
+ /**
51
+ * Returns the cursor as plain Javascript object.
52
+ */
53
+ toObject: (cursor?: ICursor | null): ReturnType<typeof _toObject> | undefined => {
54
+ if (!cursor) return
55
+ return _toObject(cursor)
56
+ },
57
+ }
58
+
59
+ function _toObject(cursor: ICursor): { orderKey: string; uniqueKey: string } {
60
+ let hash = Buffer.from(cursor.uniqueKey).toString('hex')
61
+ return {
62
+ orderKey: cursor.orderKey.toString(),
63
+ uniqueKey: `0x${hash}`,
64
+ }
39
65
  }
@@ -5,7 +5,10 @@ import { ProtoGrpcType } from './stream'
5
5
  const __NODE_PROTO_PATH = __dirname + '/stream.proto'
6
6
 
7
7
  // export definitions
8
- export const packageDefinition = loadSync(__NODE_PROTO_PATH, {})
8
+ export const packageDefinition = loadSync(__NODE_PROTO_PATH, {
9
+ oneofs: true,
10
+ defaults: true,
11
+ })
9
12
  export const protoDescriptor = loadPackageDefinition(packageDefinition) as unknown as ProtoGrpcType
10
13
 
11
14
  // re-export all types, use same naming convention as protobufjs