@subsquid/solana-stream 0.1.4 → 0.2.0-2-0.3887d2

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.
Files changed (84) hide show
  1. package/lib/index.d.ts +2 -3
  2. package/lib/index.d.ts.map +1 -1
  3. package/lib/index.js +2 -3
  4. package/lib/index.js.map +1 -1
  5. package/lib/instruction.d.ts +2 -3
  6. package/lib/instruction.d.ts.map +1 -1
  7. package/lib/instruction.js +2 -2
  8. package/lib/instruction.js.map +1 -1
  9. package/lib/query.d.ts +46 -0
  10. package/lib/query.d.ts.map +1 -0
  11. package/lib/query.js +161 -0
  12. package/lib/query.js.map +1 -0
  13. package/lib/{archive/schema.d.ts → schema.d.ts} +30 -19
  14. package/lib/schema.d.ts.map +1 -0
  15. package/lib/{archive/schema.js → schema.js} +54 -38
  16. package/lib/schema.js.map +1 -0
  17. package/lib/source.d.ts +24 -101
  18. package/lib/source.d.ts.map +1 -1
  19. package/lib/source.js +67 -270
  20. package/lib/source.js.map +1 -1
  21. package/package.json +11 -16
  22. package/src/index.ts +2 -3
  23. package/src/instruction.ts +4 -9
  24. package/src/query.ts +192 -0
  25. package/src/{archive/schema.ts → schema.ts} +52 -34
  26. package/src/source.ts +94 -365
  27. package/README.md +0 -4
  28. package/lib/archive/schema.d.ts.map +0 -1
  29. package/lib/archive/schema.js.map +0 -1
  30. package/lib/archive/source.d.ts +0 -15
  31. package/lib/archive/source.d.ts.map +0 -1
  32. package/lib/archive/source.js +0 -98
  33. package/lib/archive/source.js.map +0 -1
  34. package/lib/data/fields.d.ts +0 -8
  35. package/lib/data/fields.d.ts.map +0 -1
  36. package/lib/data/fields.js +0 -46
  37. package/lib/data/fields.js.map +0 -1
  38. package/lib/data/model.d.ts +0 -79
  39. package/lib/data/model.d.ts.map +0 -1
  40. package/lib/data/model.js +0 -44
  41. package/lib/data/model.js.map +0 -1
  42. package/lib/data/partial.d.ts +0 -26
  43. package/lib/data/partial.d.ts.map +0 -1
  44. package/lib/data/partial.js +0 -3
  45. package/lib/data/partial.js.map +0 -1
  46. package/lib/data/request.d.ts +0 -106
  47. package/lib/data/request.d.ts.map +0 -1
  48. package/lib/data/request.js +0 -3
  49. package/lib/data/request.js.map +0 -1
  50. package/lib/data/type-util.d.ts +0 -20
  51. package/lib/data/type-util.d.ts.map +0 -1
  52. package/lib/data/type-util.js +0 -3
  53. package/lib/data/type-util.js.map +0 -1
  54. package/lib/rpc/client.d.ts +0 -17
  55. package/lib/rpc/client.d.ts.map +0 -1
  56. package/lib/rpc/client.js +0 -15
  57. package/lib/rpc/client.js.map +0 -1
  58. package/lib/rpc/filter.d.ts +0 -4
  59. package/lib/rpc/filter.d.ts.map +0 -1
  60. package/lib/rpc/filter.js +0 -351
  61. package/lib/rpc/filter.js.map +0 -1
  62. package/lib/rpc/mapping.d.ts +0 -5
  63. package/lib/rpc/mapping.d.ts.map +0 -1
  64. package/lib/rpc/mapping.js +0 -12
  65. package/lib/rpc/mapping.js.map +0 -1
  66. package/lib/rpc/project.d.ts +0 -5
  67. package/lib/rpc/project.d.ts.map +0 -1
  68. package/lib/rpc/project.js +0 -60
  69. package/lib/rpc/project.js.map +0 -1
  70. package/lib/rpc/source.d.ts +0 -15
  71. package/lib/rpc/source.d.ts.map +0 -1
  72. package/lib/rpc/source.js +0 -82
  73. package/lib/rpc/source.js.map +0 -1
  74. package/src/archive/source.ts +0 -105
  75. package/src/data/fields.ts +0 -50
  76. package/src/data/model.ts +0 -154
  77. package/src/data/partial.ts +0 -31
  78. package/src/data/request.ts +0 -140
  79. package/src/data/type-util.ts +0 -42
  80. package/src/rpc/client.ts +0 -26
  81. package/src/rpc/filter.ts +0 -362
  82. package/src/rpc/mapping.ts +0 -13
  83. package/src/rpc/project.ts +0 -61
  84. package/src/rpc/source.ts +0 -90
package/lib/index.d.ts CHANGED
@@ -1,5 +1,4 @@
1
- export * from './data/model';
2
- export * from './rpc/client';
3
- export * from './instruction';
4
1
  export * from './source';
2
+ export * from './query';
3
+ export * from './instruction';
5
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,eAAe,CAAA"}
package/lib/index.js CHANGED
@@ -14,8 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./data/model"), exports);
18
- __exportStar(require("./rpc/client"), exports);
19
- __exportStar(require("./instruction"), exports);
20
17
  __exportStar(require("./source"), exports);
18
+ __exportStar(require("./query"), exports);
19
+ __exportStar(require("./instruction"), exports);
21
20
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,+CAA4B;AAC5B,gDAA6B;AAC7B,2CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,0CAAuB;AACvB,gDAA6B"}
@@ -1,9 +1,8 @@
1
- import { Base58Bytes } from '@subsquid/solana-rpc-data';
2
- import { Bytes } from './data/model';
1
+ import { Bytes } from '@subsquid/util-internal';
3
2
  export declare const DATA_SYM: unique symbol;
4
3
  export declare const D8_SYM: unique symbol;
5
4
  interface Instruction {
6
- data: Base58Bytes;
5
+ data: Bytes;
7
6
  [DATA_SYM]?: Uint8Array;
8
7
  [D8_SYM]?: Bytes;
9
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"instruction.d.ts","sourceRoot":"","sources":["../src/instruction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAA;AAGrD,OAAO,EAAC,KAAK,EAAC,MAAM,cAAc,CAAA;AAGlC,eAAO,MAAM,QAAQ,eAAiB,CAAA;AACtC,eAAO,MAAM,MAAM,eAAe,CAAA;AAGlC,UAAU,WAAW;IACjB,IAAI,EAAE,WAAW,CAAA;IACjB,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAA;IACvB,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAA;CACnB;AAGD,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,WAAW,GAAG,UAAU,CAG7D;AAGD,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,CAI/D"}
1
+ {"version":3,"file":"instruction.d.ts","sourceRoot":"","sources":["../src/instruction.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAC,MAAM,yBAAyB,CAAA;AAG7C,eAAO,MAAM,QAAQ,eAAiB,CAAA;AACtC,eAAO,MAAM,MAAM,eAAe,CAAA;AAElC,UAAU,WAAW;IACjB,IAAI,EAAE,KAAK,CAAA;IACX,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAA;IACvB,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAA;CACnB;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,WAAW,GAAG,UAAU,CAG7D;AAED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,CAI/D"}
@@ -13,12 +13,12 @@ exports.D8_SYM = Symbol('D8');
13
13
  function getInstructionData(i) {
14
14
  if (i[exports.DATA_SYM])
15
15
  return i[exports.DATA_SYM];
16
- return i[exports.DATA_SYM] = bs58_1.default.decode(i.data);
16
+ return (i[exports.DATA_SYM] = bs58_1.default.decode(i.data));
17
17
  }
18
18
  function getInstructionDescriptor(i) {
19
19
  if (i[exports.D8_SYM])
20
20
  return i[exports.D8_SYM];
21
21
  let bytes = (0, util_internal_hex_1.toHex)(getInstructionData(i));
22
- return i[exports.D8_SYM] = bytes.slice(0, 18);
22
+ return (i[exports.D8_SYM] = bytes.slice(0, 18));
23
23
  }
24
24
  //# sourceMappingURL=instruction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instruction.js","sourceRoot":"","sources":["../src/instruction.ts"],"names":[],"mappings":";;;;;;AAiBA,gDAGC;AAGD,4DAIC;AA1BD,mEAAiD;AACjD,gDAAuB;AAIV,QAAA,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;AAUlC,SAAgB,kBAAkB,CAAC,CAAc;IAC7C,IAAI,CAAC,CAAC,gBAAQ,CAAC;QAAE,OAAO,CAAC,CAAC,gBAAQ,CAAC,CAAA;IACnC,OAAO,CAAC,CAAC,gBAAQ,CAAC,GAAG,cAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AAC5C,CAAC;AAGD,SAAgB,wBAAwB,CAAC,CAAc;IACnD,IAAI,CAAC,CAAC,cAAM,CAAC;QAAE,OAAO,CAAC,CAAC,cAAM,CAAC,CAAA;IAC/B,IAAI,KAAK,GAAG,IAAA,yBAAK,EAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAA;IACxC,OAAO,CAAC,CAAC,cAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACzC,CAAC"}
1
+ {"version":3,"file":"instruction.js","sourceRoot":"","sources":["../src/instruction.ts"],"names":[],"mappings":";;;;;;AAaA,gDAGC;AAED,4DAIC;AAtBD,mEAAiD;AAEjD,gDAAuB;AAEV,QAAA,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;AACzB,QAAA,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;AAQlC,SAAgB,kBAAkB,CAAC,CAAc;IAC7C,IAAI,CAAC,CAAC,gBAAQ,CAAC;QAAE,OAAO,CAAC,CAAC,gBAAQ,CAAC,CAAA;IACnC,OAAO,CAAC,CAAC,CAAC,gBAAQ,CAAC,GAAG,cAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED,SAAgB,wBAAwB,CAAC,CAAc;IACnD,IAAI,CAAC,CAAC,cAAM,CAAC;QAAE,OAAO,CAAC,CAAC,cAAM,CAAC,CAAA;IAC/B,IAAI,KAAK,GAAG,IAAA,yBAAK,EAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAA;IACxC,OAAO,CAAC,CAAC,CAAC,cAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;AAC3C,CAAC"}
package/lib/query.d.ts ADDED
@@ -0,0 +1,46 @@
1
+ import { Range, RangeRequest } from '@subsquid/util-internal-range';
2
+ import type { Solana } from '@subsquid/portal-client';
3
+ import type { MergeSelection, MergeSelectionAll, Selection } from '@subsquid/util-internal';
4
+ export * from '@subsquid/portal-client/lib/query/solana';
5
+ export type RequestOptions<R> = {
6
+ range?: Range;
7
+ request: R;
8
+ };
9
+ export type LogRequestOptions = RequestOptions<Solana.LogRequest>;
10
+ export type TransactionRequestOptions = RequestOptions<Solana.TransactionRequest>;
11
+ export type InstructionRequestOptions = RequestOptions<Solana.InstructionRequest>;
12
+ export type TokenBalanceRequestOptions = RequestOptions<Solana.TokenBalanceRequest>;
13
+ export type BalanceRequestOptions = RequestOptions<Solana.BalanceRequest>;
14
+ export type RewardRequestOptions = RequestOptions<Solana.RewardRequest>;
15
+ export type SolanaQueryOptions<F extends Solana.FieldSelection = Solana.FieldSelection> = {
16
+ fields: F;
17
+ requests: RangeRequest<Solana.DataRequest>[];
18
+ };
19
+ export declare class SolanaQueryBuilder<F extends Solana.FieldSelection = {
20
+ block: {
21
+ number: true;
22
+ hash: true;
23
+ };
24
+ }> {
25
+ private range;
26
+ private requests;
27
+ private fields;
28
+ addLog(options: LogRequestOptions): this;
29
+ addTransaction(options: TransactionRequestOptions): this;
30
+ addReward(options: RewardRequestOptions): this;
31
+ addBalance(options: BalanceRequestOptions): this;
32
+ addTokenBalance(options: TokenBalanceRequestOptions): this;
33
+ addInstruction(options: InstructionRequestOptions): this;
34
+ setRange(range: Range): this;
35
+ setFields<F extends Solana.FieldSelection>(fields: F): SolanaQueryBuilder<F>;
36
+ build(): SolanaQueryOptions<F>;
37
+ }
38
+ export declare function mergeDataRequests(...requests: Solana.DataRequest[]): Solana.DataRequest;
39
+ export type MergeQueryOptions<T extends SolanaQueryOptions, U extends SolanaQueryOptions> = SolanaQueryOptions<MergeSelection<T['fields'], U['fields']>> extends infer R ? R : never;
40
+ export type MergeQueryOptionsAll<T extends readonly SolanaQueryOptions[]> = T extends readonly [infer F, ...infer R] ? F extends SolanaQueryOptions ? R extends [SolanaQueryOptions, ...SolanaQueryOptions[]] ? MergeQueryOptions<F, MergeQueryOptionsAll<R>> : F : never : never;
41
+ export declare function mergeRequests(...requests: RangeRequest<Solana.DataRequest>[]): RangeRequest<Solana.DataRequest>[];
42
+ export declare function mergeQueries<T extends SolanaQueryOptions, U extends SolanaQueryOptions>(a: T, b: U): MergeQueryOptions<T, U>;
43
+ export declare function mergeQueries<T extends readonly SolanaQueryOptions[]>(...queries: T): MergeQueryOptionsAll<T>;
44
+ export declare function mergeSelection<T extends Selection, U extends Selection>(a: T, b: U): MergeSelection<T, U>;
45
+ export declare function mergeSelection<T extends readonly Selection[]>(...selections: T): MergeSelectionAll<T>;
46
+ //# sourceMappingURL=query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
package/lib/query.js ADDED
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.SolanaQueryBuilder = void 0;
18
+ exports.mergeDataRequests = mergeDataRequests;
19
+ exports.mergeRequests = mergeRequests;
20
+ exports.mergeQueries = mergeQueries;
21
+ exports.mergeSelection = mergeSelection;
22
+ const util_internal_range_1 = require("@subsquid/util-internal-range");
23
+ __exportStar(require("@subsquid/portal-client/lib/query/solana"), exports);
24
+ class SolanaQueryBuilder {
25
+ constructor() {
26
+ this.range = { from: 0 };
27
+ this.requests = [];
28
+ this.fields = {
29
+ block: { number: true, hash: true },
30
+ };
31
+ }
32
+ addLog(options) {
33
+ this.requests.push({
34
+ range: options.range ?? { from: 0 },
35
+ request: {
36
+ logs: [mapRequest(options)],
37
+ },
38
+ });
39
+ return this;
40
+ }
41
+ addTransaction(options) {
42
+ this.requests.push({
43
+ range: options.range ?? { from: 0 },
44
+ request: {
45
+ transactions: [mapRequest(options)],
46
+ },
47
+ });
48
+ return this;
49
+ }
50
+ addReward(options) {
51
+ this.requests.push({
52
+ range: options.range ?? { from: 0 },
53
+ request: {
54
+ rewards: [mapRequest(options)],
55
+ },
56
+ });
57
+ return this;
58
+ }
59
+ addBalance(options) {
60
+ this.requests.push({
61
+ range: options.range ?? { from: 0 },
62
+ request: {
63
+ balances: [mapRequest(options)],
64
+ },
65
+ });
66
+ return this;
67
+ }
68
+ addTokenBalance(options) {
69
+ this.requests.push({
70
+ range: options.range ?? { from: 0 },
71
+ request: {
72
+ tokenBalances: [mapRequest(options)],
73
+ },
74
+ });
75
+ return this;
76
+ }
77
+ addInstruction(options) {
78
+ this.requests.push({
79
+ range: options.range ?? { from: 0 },
80
+ request: {
81
+ instructions: [mapRequest(options)],
82
+ },
83
+ });
84
+ return this;
85
+ }
86
+ setRange(range) {
87
+ this.range = range;
88
+ return this;
89
+ }
90
+ setFields(fields) {
91
+ this.fields = fields;
92
+ return this;
93
+ }
94
+ build() {
95
+ let requests = (0, util_internal_range_1.mergeRangeRequests)(this.requests, mergeDataRequests);
96
+ return {
97
+ fields: this.fields,
98
+ requests: (0, util_internal_range_1.applyRangeBound)(requests, this.range),
99
+ };
100
+ }
101
+ }
102
+ exports.SolanaQueryBuilder = SolanaQueryBuilder;
103
+ function mergeDataRequests(...requests) {
104
+ let res = {};
105
+ for (let req of requests) {
106
+ res.transactions = concatRequestLists(res.transactions, req.transactions);
107
+ res.logs = concatRequestLists(res.logs, req.logs);
108
+ res.balances = concatRequestLists(res.balances, req.balances);
109
+ res.tokenBalances = concatRequestLists(res.tokenBalances, req.tokenBalances);
110
+ res.rewards = concatRequestLists(res.rewards, req.rewards);
111
+ res.instructions = concatRequestLists(res.instructions, req.instructions);
112
+ if (res.includeAllBlocks || req.includeAllBlocks) {
113
+ res.includeAllBlocks = true;
114
+ }
115
+ }
116
+ return res;
117
+ }
118
+ function mergeRequests(...requests) {
119
+ return (0, util_internal_range_1.mergeRangeRequests)(requests, mergeDataRequests);
120
+ }
121
+ function mergeQueries(...queries) {
122
+ return {
123
+ fields: mergeSelection(...queries.map((q) => q.fields)),
124
+ requests: mergeRequests(...queries.flatMap((q) => q.requests)),
125
+ };
126
+ }
127
+ function concatRequestLists(a, b) {
128
+ let result = [];
129
+ if (a) {
130
+ result.push(...a);
131
+ }
132
+ if (b) {
133
+ result.push(...b);
134
+ }
135
+ return result.length == 0 ? undefined : result;
136
+ }
137
+ function mapRequest(options) {
138
+ let req = { ...options.request };
139
+ for (let key in req) {
140
+ let val = req[key];
141
+ }
142
+ return req;
143
+ }
144
+ function mergeSelection(...selections) {
145
+ let res = {};
146
+ for (let selection of selections) {
147
+ for (let key in selection) {
148
+ if (res[key] == null) {
149
+ res[key] = selection[key];
150
+ }
151
+ else if (res[key] === true || selection[key] === true) {
152
+ res[key] === true;
153
+ }
154
+ else if (typeof res[key] === 'object' && typeof selection[key] === 'object') {
155
+ res[key] = mergeSelection(res[key], selection[key]);
156
+ }
157
+ }
158
+ }
159
+ return res;
160
+ }
161
+ //# sourceMappingURL=query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,26 @@
1
- import { FieldSelection } from '../data/model';
1
+ import type { Selector } from '@subsquid/util-internal';
2
+ import { FieldSelection } from './query';
3
+ export declare function project<T>(fields: Selector<keyof T> | undefined, obj: T): Partial<T>;
4
+ export declare const AddressTableLookup: import("@subsquid/util-internal-validation").Validator<{
5
+ accountKey: string;
6
+ readonlyIndexes: number[];
7
+ writableIndexes: number[];
8
+ }, {
9
+ accountKey: string;
10
+ readonlyIndexes: number[];
11
+ writableIndexes: number[];
12
+ }>;
2
13
  export declare const getDataSchema: (obj: FieldSelection) => import("@subsquid/util-internal-validation").Validator<{
3
14
  header: {
4
15
  number: number;
5
16
  hash: string;
6
17
  parentHash: string;
7
- slot?: number | undefined;
18
+ height?: number | undefined;
8
19
  parentSlot?: number | undefined;
9
20
  timestamp?: number | undefined;
10
21
  };
11
22
  transactions?: {
12
- transactionIndex: number;
23
+ transactionIndex?: number | undefined;
13
24
  version?: number | "legacy" | undefined;
14
25
  accountKeys?: string[] | undefined;
15
26
  addressTableLookups?: {
@@ -32,8 +43,8 @@ export declare const getDataSchema: (obj: FieldSelection) => import("@subsquid/u
32
43
  hasDroppedLogMessages?: boolean | undefined;
33
44
  }[] | undefined;
34
45
  instructions?: {
35
- transactionIndex: number;
36
- instructionAddress: number[];
46
+ transactionIndex?: number | undefined;
47
+ instructionAddress?: number[] | undefined;
37
48
  programId?: string | undefined;
38
49
  accounts?: string[] | undefined;
39
50
  data?: string | undefined;
@@ -55,14 +66,14 @@ export declare const getDataSchema: (obj: FieldSelection) => import("@subsquid/u
55
66
  message?: string | undefined;
56
67
  }[] | undefined;
57
68
  balances?: {
58
- transactionIndex: number;
59
- account: string;
69
+ transactionIndex?: number | undefined;
70
+ account?: string | undefined;
60
71
  pre?: bigint | undefined;
61
72
  post?: bigint | undefined;
62
73
  }[] | undefined;
63
74
  tokenBalances?: {
64
- transactionIndex: number;
65
- account: string;
75
+ transactionIndex?: number | undefined;
76
+ account?: string | undefined;
66
77
  preProgramId?: string | undefined;
67
78
  postProgramId?: string | undefined;
68
79
  preMint?: string | undefined;
@@ -75,7 +86,7 @@ export declare const getDataSchema: (obj: FieldSelection) => import("@subsquid/u
75
86
  postAmount?: bigint | undefined;
76
87
  }[] | undefined;
77
88
  rewards?: {
78
- pubkey: string;
89
+ pubkey?: string | undefined;
79
90
  lamports?: bigint | undefined;
80
91
  postBalance?: bigint | undefined;
81
92
  rewardType?: string | undefined;
@@ -86,12 +97,12 @@ export declare const getDataSchema: (obj: FieldSelection) => import("@subsquid/u
86
97
  number: number;
87
98
  hash: string;
88
99
  parentHash: string;
89
- slot?: number | undefined;
100
+ height?: number | undefined;
90
101
  parentSlot?: number | undefined;
91
102
  timestamp?: number | undefined;
92
103
  };
93
104
  transactions?: {
94
- transactionIndex: number;
105
+ transactionIndex?: number | undefined;
95
106
  version?: number | "legacy" | undefined;
96
107
  accountKeys?: string[] | undefined;
97
108
  addressTableLookups?: {
@@ -114,8 +125,8 @@ export declare const getDataSchema: (obj: FieldSelection) => import("@subsquid/u
114
125
  hasDroppedLogMessages?: boolean | undefined;
115
126
  }[] | null | undefined;
116
127
  instructions?: {
117
- transactionIndex: number;
118
- instructionAddress: number[];
128
+ transactionIndex?: number | undefined;
129
+ instructionAddress?: number[] | undefined;
119
130
  programId?: string | undefined;
120
131
  accounts?: string[] | undefined;
121
132
  data?: string | undefined;
@@ -137,14 +148,14 @@ export declare const getDataSchema: (obj: FieldSelection) => import("@subsquid/u
137
148
  message?: string | undefined;
138
149
  }[] | null | undefined;
139
150
  balances?: {
140
- transactionIndex: number;
141
- account: string;
151
+ transactionIndex?: number | undefined;
152
+ account?: string | undefined;
142
153
  pre?: string | undefined;
143
154
  post?: string | undefined;
144
155
  }[] | null | undefined;
145
156
  tokenBalances?: {
146
- transactionIndex: number;
147
- account: string;
157
+ transactionIndex?: number | undefined;
158
+ account?: string | undefined;
148
159
  preProgramId?: string | null | undefined;
149
160
  postProgramId?: string | null | undefined;
150
161
  preMint?: string | null | undefined;
@@ -157,7 +168,7 @@ export declare const getDataSchema: (obj: FieldSelection) => import("@subsquid/u
157
168
  postAmount?: string | null | undefined;
158
169
  }[] | null | undefined;
159
170
  rewards?: {
160
- pubkey: string;
171
+ pubkey?: string | undefined;
161
172
  lamports?: string | undefined;
162
173
  postBalance?: string | undefined;
163
174
  rewardType?: string | null | undefined;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAC,cAAc,EAAC,MAAM,SAAS,CAAA;AAEtC,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAUpF;AAED,eAAO,MAAM,kBAAkB;;;;;;;;EAI7B,CAAA;AAEF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqHxB,CAAA"}
@@ -1,30 +1,46 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDataSchema = void 0;
4
- const solana_rpc_data_1 = require("@subsquid/solana-rpc-data");
3
+ exports.getDataSchema = exports.AddressTableLookup = void 0;
4
+ exports.project = project;
5
5
  const util_internal_1 = require("@subsquid/util-internal");
6
6
  const util_internal_validation_1 = require("@subsquid/util-internal-validation");
7
- const fields_1 = require("../data/fields");
7
+ function project(fields, obj) {
8
+ if (fields == null)
9
+ return {};
10
+ let result = {};
11
+ let key;
12
+ for (key in obj) {
13
+ if (fields[key]) {
14
+ result[key] = obj[key];
15
+ }
16
+ }
17
+ return result;
18
+ }
19
+ exports.AddressTableLookup = (0, util_internal_validation_1.object)({
20
+ accountKey: util_internal_validation_1.B58,
21
+ readonlyIndexes: (0, util_internal_validation_1.array)(util_internal_validation_1.NAT),
22
+ writableIndexes: (0, util_internal_validation_1.array)(util_internal_validation_1.NAT),
23
+ });
8
24
  exports.getDataSchema = (0, util_internal_1.weakMemo)((fields) => {
9
25
  let BlockHeader = (0, util_internal_validation_1.object)({
10
26
  number: util_internal_validation_1.NAT,
11
27
  hash: util_internal_validation_1.B58,
12
28
  parentHash: util_internal_validation_1.B58,
13
- ...(0, fields_1.project)(fields.block, {
14
- slot: util_internal_validation_1.NAT,
29
+ ...project(fields.block, {
30
+ height: util_internal_validation_1.NAT,
15
31
  parentSlot: util_internal_validation_1.NAT,
16
- timestamp: util_internal_validation_1.NAT
17
- })
32
+ timestamp: util_internal_validation_1.NAT,
33
+ }),
18
34
  });
19
35
  let Transaction = (0, util_internal_validation_1.object)({
20
- transactionIndex: util_internal_validation_1.NAT,
21
- ...(0, fields_1.project)(fields.transaction, {
36
+ ...project(fields.transaction, {
37
+ transactionIndex: util_internal_validation_1.NAT,
22
38
  version: (0, util_internal_validation_1.oneOf)({
23
39
  legacy: (0, util_internal_validation_1.constant)('legacy'),
24
- versionNumber: util_internal_validation_1.NAT
40
+ versionNumber: util_internal_validation_1.NAT,
25
41
  }),
26
42
  accountKeys: (0, util_internal_validation_1.array)(util_internal_validation_1.B58),
27
- addressTableLookups: (0, util_internal_validation_1.array)(solana_rpc_data_1.AddressTableLookup),
43
+ addressTableLookups: (0, util_internal_validation_1.array)(exports.AddressTableLookup),
28
44
  numReadonlySignedAccounts: util_internal_validation_1.NAT,
29
45
  numReadonlyUnsignedAccounts: util_internal_validation_1.NAT,
30
46
  numRequiredSignatures: util_internal_validation_1.NAT,
@@ -35,15 +51,15 @@ exports.getDataSchema = (0, util_internal_1.weakMemo)((fields) => {
35
51
  fee: util_internal_validation_1.BIG_NAT,
36
52
  loadedAddresses: (0, util_internal_validation_1.option)((0, util_internal_validation_1.object)({
37
53
  readonly: (0, util_internal_validation_1.array)(util_internal_validation_1.B58),
38
- writable: (0, util_internal_validation_1.array)(util_internal_validation_1.B58)
54
+ writable: (0, util_internal_validation_1.array)(util_internal_validation_1.B58),
39
55
  })),
40
- hasDroppedLogMessages: util_internal_validation_1.BOOLEAN
41
- })
56
+ hasDroppedLogMessages: util_internal_validation_1.BOOLEAN,
57
+ }),
42
58
  });
43
59
  let Instruction = (0, util_internal_validation_1.object)({
44
- transactionIndex: util_internal_validation_1.NAT,
45
- instructionAddress: (0, util_internal_validation_1.array)(util_internal_validation_1.NAT),
46
- ...(0, fields_1.project)(fields.instruction, {
60
+ ...project(fields.instruction, {
61
+ transactionIndex: util_internal_validation_1.NAT,
62
+ instructionAddress: (0, util_internal_validation_1.array)(util_internal_validation_1.NAT),
47
63
  programId: util_internal_validation_1.B58,
48
64
  accounts: (0, util_internal_validation_1.array)(util_internal_validation_1.B58),
49
65
  data: util_internal_validation_1.B58,
@@ -54,35 +70,35 @@ exports.getDataSchema = (0, util_internal_1.weakMemo)((fields) => {
54
70
  d8: util_internal_validation_1.BYTES,
55
71
  error: (0, util_internal_validation_1.option)(util_internal_validation_1.STRING),
56
72
  isCommitted: util_internal_validation_1.BOOLEAN,
57
- hasDroppedLogMessages: util_internal_validation_1.BOOLEAN
58
- })
73
+ hasDroppedLogMessages: util_internal_validation_1.BOOLEAN,
74
+ }),
59
75
  });
60
76
  let LogMessage = (0, util_internal_validation_1.object)({
61
77
  transactionIndex: util_internal_validation_1.NAT,
62
78
  logIndex: util_internal_validation_1.NAT,
63
79
  instructionAddress: (0, util_internal_validation_1.array)(util_internal_validation_1.NAT),
64
- ...(0, fields_1.project)(fields.log, {
80
+ ...project(fields.log, {
65
81
  programId: util_internal_validation_1.B58,
66
82
  kind: (0, util_internal_validation_1.oneOf)({
67
83
  log: (0, util_internal_validation_1.constant)('log'),
68
84
  data: (0, util_internal_validation_1.constant)('data'),
69
- other: (0, util_internal_validation_1.constant)('other')
85
+ other: (0, util_internal_validation_1.constant)('other'),
70
86
  }),
71
- message: util_internal_validation_1.STRING
72
- })
87
+ message: util_internal_validation_1.STRING,
88
+ }),
73
89
  });
74
90
  let Balance = (0, util_internal_validation_1.object)({
75
- transactionIndex: util_internal_validation_1.NAT,
76
- account: util_internal_validation_1.B58,
77
- ...(0, fields_1.project)(fields.balance, {
91
+ ...project(fields.balance, {
92
+ transactionIndex: util_internal_validation_1.NAT,
93
+ account: util_internal_validation_1.B58,
78
94
  pre: util_internal_validation_1.BIG_NAT,
79
- post: util_internal_validation_1.BIG_NAT
80
- })
95
+ post: util_internal_validation_1.BIG_NAT,
96
+ }),
81
97
  });
82
98
  let TokenBalance = (0, util_internal_validation_1.object)({
83
- transactionIndex: util_internal_validation_1.NAT,
84
- account: util_internal_validation_1.B58,
85
- ...(0, fields_1.project)(fields.tokenBalance, {
99
+ ...project(fields.tokenBalance, {
100
+ transactionIndex: util_internal_validation_1.NAT,
101
+ account: util_internal_validation_1.B58,
86
102
  preProgramId: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
87
103
  postProgramId: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
88
104
  preMint: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
@@ -92,17 +108,17 @@ exports.getDataSchema = (0, util_internal_1.weakMemo)((fields) => {
92
108
  preOwner: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
93
109
  postOwner: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
94
110
  preAmount: (0, util_internal_validation_1.option)(util_internal_validation_1.BIG_NAT),
95
- postAmount: (0, util_internal_validation_1.option)(util_internal_validation_1.BIG_NAT)
96
- })
111
+ postAmount: (0, util_internal_validation_1.option)(util_internal_validation_1.BIG_NAT),
112
+ }),
97
113
  });
98
114
  let Reward = (0, util_internal_validation_1.object)({
99
- pubkey: util_internal_validation_1.B58,
100
- ...(0, fields_1.project)(fields.reward, {
115
+ ...project(fields.reward, {
116
+ pubkey: util_internal_validation_1.B58,
101
117
  lamports: util_internal_validation_1.BIG_NAT,
102
118
  postBalance: util_internal_validation_1.BIG_NAT,
103
119
  rewardType: (0, util_internal_validation_1.option)(util_internal_validation_1.STRING),
104
- commission: (0, util_internal_validation_1.option)(util_internal_validation_1.NAT)
105
- })
120
+ commission: (0, util_internal_validation_1.option)(util_internal_validation_1.NAT),
121
+ }),
106
122
  });
107
123
  return (0, util_internal_validation_1.object)({
108
124
  header: BlockHeader,
@@ -111,7 +127,7 @@ exports.getDataSchema = (0, util_internal_1.weakMemo)((fields) => {
111
127
  logs: (0, util_internal_validation_1.option)((0, util_internal_validation_1.array)(LogMessage)),
112
128
  balances: (0, util_internal_validation_1.option)((0, util_internal_validation_1.array)(Balance)),
113
129
  tokenBalances: (0, util_internal_validation_1.option)((0, util_internal_validation_1.array)(TokenBalance)),
114
- rewards: (0, util_internal_validation_1.option)((0, util_internal_validation_1.array)(Reward))
130
+ rewards: (0, util_internal_validation_1.option)((0, util_internal_validation_1.array)(Reward)),
115
131
  });
116
132
  });
117
133
  //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}