@subsquid/portal-client 0.3.2 → 0.4.0

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 (131) hide show
  1. package/lib/client.d.ts +40 -18
  2. package/lib/client.d.ts.map +1 -1
  3. package/lib/client.js +166 -188
  4. package/lib/client.js.map +1 -1
  5. package/lib/query/common/data.d.ts +21 -0
  6. package/lib/query/common/data.d.ts.map +1 -0
  7. package/lib/query/common/data.js +3 -0
  8. package/lib/query/common/data.js.map +1 -0
  9. package/lib/query/common/query.d.ts +7 -0
  10. package/lib/query/common/query.d.ts.map +1 -0
  11. package/lib/query/common/query.js +3 -0
  12. package/lib/query/common/query.js.map +1 -0
  13. package/lib/query/evm/data.d.ts +159 -0
  14. package/lib/query/evm/data.d.ts.map +1 -0
  15. package/lib/query/evm/data.js +3 -0
  16. package/lib/query/evm/data.js.map +1 -0
  17. package/lib/query/evm/fields.d.ts +50 -0
  18. package/lib/query/evm/fields.d.ts.map +1 -0
  19. package/lib/query/evm/fields.js +3 -0
  20. package/lib/query/evm/fields.js.map +1 -0
  21. package/lib/query/evm/index.d.ts +4 -0
  22. package/lib/query/evm/index.d.ts.map +1 -0
  23. package/lib/query/evm/index.js +7 -0
  24. package/lib/query/evm/index.js.map +1 -0
  25. package/lib/query/evm/query.d.ts +54 -0
  26. package/lib/query/evm/query.d.ts.map +1 -0
  27. package/lib/query/evm/query.js +3 -0
  28. package/lib/query/evm/query.js.map +1 -0
  29. package/lib/query/evm/schema.d.ts +322 -0
  30. package/lib/query/evm/schema.d.ts.map +1 -0
  31. package/lib/query/evm/schema.js +224 -0
  32. package/lib/query/evm/schema.js.map +1 -0
  33. package/lib/query/index.d.ts +576 -8
  34. package/lib/query/index.d.ts.map +1 -1
  35. package/lib/query/index.js +15 -24
  36. package/lib/query/index.js.map +1 -1
  37. package/lib/query/solana/data.d.ts +115 -0
  38. package/lib/query/solana/data.d.ts.map +1 -0
  39. package/lib/query/solana/data.js +3 -0
  40. package/lib/query/solana/data.js.map +1 -0
  41. package/lib/query/solana/fields.d.ts +31 -0
  42. package/lib/query/solana/fields.d.ts.map +1 -0
  43. package/lib/query/solana/fields.js +3 -0
  44. package/lib/query/solana/fields.js.map +1 -0
  45. package/lib/query/solana/index.d.ts +4 -0
  46. package/lib/query/solana/index.d.ts.map +1 -0
  47. package/lib/query/solana/index.js +7 -0
  48. package/lib/query/solana/index.js.map +1 -0
  49. package/lib/query/solana/query.d.ts +74 -0
  50. package/lib/query/solana/query.d.ts.map +1 -0
  51. package/lib/query/solana/query.js +3 -0
  52. package/lib/query/solana/query.js.map +1 -0
  53. package/lib/query/solana/schema.d.ts +160 -0
  54. package/lib/query/solana/schema.d.ts.map +1 -0
  55. package/lib/query/solana/schema.js +130 -0
  56. package/lib/query/solana/schema.js.map +1 -0
  57. package/lib/query/substrate/data.d.ts +98 -0
  58. package/lib/query/substrate/data.d.ts.map +1 -0
  59. package/lib/query/substrate/data.js +3 -0
  60. package/lib/query/substrate/data.js.map +1 -0
  61. package/lib/query/substrate/fields.d.ts +22 -0
  62. package/lib/query/substrate/fields.d.ts.map +1 -0
  63. package/lib/query/substrate/fields.js +3 -0
  64. package/lib/query/substrate/fields.js.map +1 -0
  65. package/lib/query/substrate/index.d.ts +4 -0
  66. package/lib/query/substrate/index.d.ts.map +1 -0
  67. package/lib/query/substrate/index.js +7 -0
  68. package/lib/query/substrate/index.js.map +1 -0
  69. package/lib/query/substrate/query.d.ts +50 -0
  70. package/lib/query/substrate/query.d.ts.map +1 -0
  71. package/lib/query/substrate/query.js +3 -0
  72. package/lib/query/substrate/query.js.map +1 -0
  73. package/lib/query/substrate/schema.d.ts +102 -0
  74. package/lib/query/substrate/schema.d.ts.map +1 -0
  75. package/lib/query/substrate/schema.js +88 -0
  76. package/lib/query/substrate/schema.js.map +1 -0
  77. package/lib/query/type-util.d.ts +13 -0
  78. package/lib/query/type-util.d.ts.map +1 -0
  79. package/lib/query/type-util.js +3 -0
  80. package/lib/query/type-util.js.map +1 -0
  81. package/lib/query/util.d.ts +5 -0
  82. package/lib/query/util.d.ts.map +1 -0
  83. package/lib/query/util.js +23 -0
  84. package/lib/query/util.js.map +1 -0
  85. package/lib/util.d.ts +19 -0
  86. package/lib/util.d.ts.map +1 -0
  87. package/lib/util.js +57 -0
  88. package/lib/util.js.map +1 -0
  89. package/package.json +3 -3
  90. package/src/client.ts +231 -247
  91. package/src/query/common/data.ts +24 -0
  92. package/src/query/common/query.ts +6 -0
  93. package/src/query/evm/data.ts +182 -0
  94. package/src/query/evm/fields.ts +105 -0
  95. package/src/query/evm/index.ts +3 -0
  96. package/src/query/evm/query.ts +59 -0
  97. package/src/query/evm/schema.ts +277 -0
  98. package/src/query/index.ts +19 -36
  99. package/src/query/solana/data.ts +132 -0
  100. package/src/query/solana/fields.ts +42 -0
  101. package/src/query/solana/index.ts +3 -0
  102. package/src/query/solana/query.ts +89 -0
  103. package/src/query/solana/schema.ts +164 -0
  104. package/src/query/substrate/data.ts +101 -0
  105. package/src/query/substrate/fields.ts +30 -0
  106. package/src/query/substrate/index.ts +3 -0
  107. package/src/query/substrate/query.ts +60 -0
  108. package/src/query/substrate/schema.ts +114 -0
  109. package/src/query/type-util.ts +25 -0
  110. package/src/query/util.ts +23 -0
  111. package/src/util.ts +56 -0
  112. package/lib/query/common.d.ts +0 -56
  113. package/lib/query/common.d.ts.map +0 -1
  114. package/lib/query/common.js +0 -16
  115. package/lib/query/common.js.map +0 -1
  116. package/lib/query/evm.d.ts +0 -267
  117. package/lib/query/evm.d.ts.map +0 -1
  118. package/lib/query/evm.js +0 -245
  119. package/lib/query/evm.js.map +0 -1
  120. package/lib/query/solana.d.ts +0 -224
  121. package/lib/query/solana.d.ts.map +0 -1
  122. package/lib/query/solana.js +0 -121
  123. package/lib/query/solana.js.map +0 -1
  124. package/lib/query/substrate.d.ts +0 -173
  125. package/lib/query/substrate.d.ts.map +0 -1
  126. package/lib/query/substrate.js +0 -71
  127. package/lib/query/substrate.js.map +0 -1
  128. package/src/query/common.ts +0 -83
  129. package/src/query/evm.ts +0 -677
  130. package/src/query/solana.ts +0 -438
  131. package/src/query/substrate.ts +0 -288
@@ -0,0 +1,115 @@
1
+ import type { Base58Bytes } from '../common/data';
2
+ export interface BlockHeader {
3
+ number: number;
4
+ hash: Base58Bytes;
5
+ parentNumber: number;
6
+ parentHash: Base58Bytes;
7
+ height: number;
8
+ timestamp: number;
9
+ }
10
+ export interface Transaction {
11
+ /**
12
+ * Transaction position in block
13
+ */
14
+ transactionIndex: number;
15
+ version: 'legacy' | number;
16
+ accountKeys: Base58Bytes[];
17
+ addressTableLookups: AddressTableLookup[];
18
+ numReadonlySignedAccounts: number;
19
+ numReadonlyUnsignedAccounts: number;
20
+ numRequiredSignatures: number;
21
+ recentBlockhash: Base58Bytes;
22
+ signatures: Base58Bytes[];
23
+ err: null | object;
24
+ computeUnitsConsumed: bigint;
25
+ fee: bigint;
26
+ loadedAddresses: {
27
+ readonly: Base58Bytes[];
28
+ writable: Base58Bytes[];
29
+ };
30
+ hasDroppedLogMessages: boolean;
31
+ }
32
+ export interface AddressTableLookup {
33
+ accountKey: Base58Bytes;
34
+ readonlyIndexes: number[];
35
+ writableIndexes: number[];
36
+ }
37
+ export interface Instruction {
38
+ transactionIndex: number;
39
+ instructionAddress: number[];
40
+ programId: Base58Bytes;
41
+ accounts: Base58Bytes[];
42
+ data: Base58Bytes;
43
+ computeUnitsConsumed?: bigint;
44
+ error?: string;
45
+ /**
46
+ * `true` when transaction completed successfully, `false` otherwise
47
+ */
48
+ isCommitted: boolean;
49
+ hasDroppedLogMessages: boolean;
50
+ }
51
+ export interface LogMessage {
52
+ transactionIndex: number;
53
+ logIndex: number;
54
+ instructionAddress: number[];
55
+ programId: Base58Bytes;
56
+ kind: 'log' | 'data' | 'other';
57
+ message: string;
58
+ }
59
+ export interface Balance {
60
+ transactionIndex: number;
61
+ account: Base58Bytes;
62
+ pre: bigint;
63
+ post: bigint;
64
+ }
65
+ export type TokenBalance = PreTokenBalance | PostTokenBalance | PrePostTokenBalance;
66
+ export interface PreTokenBalance {
67
+ transactionIndex: number;
68
+ account: Base58Bytes;
69
+ preProgramId?: Base58Bytes;
70
+ preMint: Base58Bytes;
71
+ preDecimals: number;
72
+ preOwner?: Base58Bytes;
73
+ preAmount: bigint;
74
+ postProgramId?: undefined;
75
+ postMint?: undefined;
76
+ postDecimals?: undefined;
77
+ postOwner?: undefined;
78
+ postAmount?: undefined;
79
+ }
80
+ export interface PostTokenBalance {
81
+ transactionIndex: number;
82
+ account: Base58Bytes;
83
+ preProgramId?: undefined;
84
+ preMint?: undefined;
85
+ preDecimals?: undefined;
86
+ preOwner?: undefined;
87
+ preAmount?: undefined;
88
+ postProgramId?: Base58Bytes;
89
+ postMint: Base58Bytes;
90
+ postDecimals: number;
91
+ postOwner?: Base58Bytes;
92
+ postAmount: bigint;
93
+ }
94
+ export interface PrePostTokenBalance {
95
+ transactionIndex: number;
96
+ account: Base58Bytes;
97
+ preProgramId?: Base58Bytes;
98
+ preMint: Base58Bytes;
99
+ preDecimals: number;
100
+ preOwner?: Base58Bytes;
101
+ preAmount: bigint;
102
+ postProgramId?: Base58Bytes;
103
+ postMint: Base58Bytes;
104
+ postDecimals: number;
105
+ postOwner?: Base58Bytes;
106
+ postAmount: bigint;
107
+ }
108
+ export interface Reward {
109
+ pubkey: Base58Bytes;
110
+ lamports: bigint;
111
+ postBalance: bigint;
112
+ rewardType?: string;
113
+ commission?: number;
114
+ }
115
+ //# sourceMappingURL=data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../src/query/solana/data.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data.js","sourceRoot":"","sources":["../../../src/query/solana/data.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ import type { GetFields, Select, Selector, Simplify } from '../type-util';
2
+ import type * as data from './data';
3
+ type BlockRequiredFields = 'number' | 'hash' | 'parentHash' | 'parentNumber';
4
+ export interface FieldSelection {
5
+ block?: Selector<Exclude<keyof data.BlockHeader, BlockRequiredFields>>;
6
+ transaction?: Selector<keyof data.Transaction>;
7
+ instruction?: Selector<keyof data.Instruction>;
8
+ log?: Selector<keyof data.LogMessage>;
9
+ balance?: Selector<keyof data.Balance>;
10
+ tokenBalance?: Selector<keyof data.TokenBalance>;
11
+ reward?: Selector<keyof data.Reward>;
12
+ }
13
+ export type BlockHeader<F extends FieldSelection> = Simplify<Pick<data.BlockHeader, BlockRequiredFields> & Select<data.BlockHeader, GetFields<F['block']>>>;
14
+ type Item<T, F extends FieldSelection, K extends keyof F> = Select<T, GetFields<F[K]>>;
15
+ export type Transaction<F extends FieldSelection> = Item<data.Transaction, F, 'transaction'>;
16
+ export type Instruction<F extends FieldSelection> = Item<data.Instruction, F, 'instruction'>;
17
+ export type LogMessage<F extends FieldSelection> = Item<data.LogMessage, F, 'log'>;
18
+ export type Balance<F extends FieldSelection> = Item<data.Balance, F, 'balance'>;
19
+ export type TokenBalance<F extends FieldSelection> = Item<data.TokenBalance, F, 'tokenBalance'>;
20
+ export type Reward<F extends FieldSelection> = Item<data.Reward, F, 'reward'>;
21
+ export interface Block<F extends FieldSelection> {
22
+ header: BlockHeader<F>;
23
+ transactions: Transaction<F>[];
24
+ instructions: Instruction<F>[];
25
+ logs: LogMessage<F>[];
26
+ balances: Balance<F>[];
27
+ tokenBalances: TokenBalance<F>[];
28
+ rewards: Reward<F>[];
29
+ }
30
+ export {};
31
+ //# sourceMappingURL=fields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../src/query/solana/fields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAC,MAAM,cAAc,CAAA;AACvE,OAAO,KAAK,KAAK,IAAI,MAAM,QAAQ,CAAA;AAEnC,KAAK,mBAAmB,GAAG,QAAQ,GAAG,MAAM,GAAG,YAAY,GAAG,cAAc,CAAA;AAE5E,MAAM,WAAW,cAAc;IAC3B,KAAK,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAA;IACtE,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,CAAA;IAC9C,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,CAAA;IAC9C,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,CAAA;IACrC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,CAAA;IACtC,YAAY,CAAC,EAAE,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,CAAA;IAChD,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAA;CACvC;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,cAAc,IAAI,QAAQ,CACxD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAChG,CAAA;AAED,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,SAAS,cAAc,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAEtF,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,aAAa,CAAC,CAAA;AAE5F,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,aAAa,CAAC,CAAA;AAE5F,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;AAElF,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;AAEhF,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,cAAc,CAAC,CAAA;AAE/F,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAA;AAE7E,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,cAAc;IAC3C,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACtB,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAA;IAC9B,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAA;IAC9B,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;IACtB,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAA;IAChC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;CACvB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../src/query/solana/fields.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export type * from './fields';
2
+ export type * from './query';
3
+ export { getBlockSchema, patchQueryFields } from './schema';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/query/solana/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,UAAU,CAAA;AAC7B,mBAAmB,SAAS,CAAA;AAC5B,OAAO,EAAC,cAAc,EAAE,gBAAgB,EAAC,MAAM,UAAU,CAAA"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.patchQueryFields = exports.getBlockSchema = void 0;
4
+ var schema_1 = require("./schema");
5
+ Object.defineProperty(exports, "getBlockSchema", { enumerable: true, get: function () { return schema_1.getBlockSchema; } });
6
+ Object.defineProperty(exports, "patchQueryFields", { enumerable: true, get: function () { return schema_1.patchQueryFields; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/query/solana/index.ts"],"names":[],"mappings":";;;AAEA,mCAAyD;AAAjD,wGAAA,cAAc,OAAA;AAAE,0GAAA,gBAAgB,OAAA"}
@@ -0,0 +1,74 @@
1
+ import type { QueryBase } from '../common/query';
2
+ import type { Base58Bytes } from '../common/data';
3
+ import type { LogMessage } from './data';
4
+ import type { FieldSelection } from './fields';
5
+ export interface Query<F extends FieldSelection = FieldSelection> extends QueryBase, ItemQuery {
6
+ type: 'solana';
7
+ fields: F;
8
+ }
9
+ export interface ItemQuery {
10
+ transactions?: TransactionRequest[];
11
+ instructions?: InstructionRequest[];
12
+ logs?: LogRequest[];
13
+ balances?: BalanceRequest[];
14
+ tokenBalances?: TokenBalanceRequest[];
15
+ rewards?: RewardRequest[];
16
+ }
17
+ export interface TransactionRequest {
18
+ feePayer?: Base58Bytes[];
19
+ instructions?: boolean;
20
+ logs?: boolean;
21
+ }
22
+ export interface InstructionRequest {
23
+ programId?: Base58Bytes[];
24
+ discriminator?: string[];
25
+ a0?: Base58Bytes[];
26
+ a1?: Base58Bytes[];
27
+ a2?: Base58Bytes[];
28
+ a3?: Base58Bytes[];
29
+ a4?: Base58Bytes[];
30
+ a5?: Base58Bytes[];
31
+ a6?: Base58Bytes[];
32
+ a7?: Base58Bytes[];
33
+ a8?: Base58Bytes[];
34
+ a9?: Base58Bytes[];
35
+ a10?: Base58Bytes[];
36
+ a11?: Base58Bytes[];
37
+ a12?: Base58Bytes[];
38
+ a13?: Base58Bytes[];
39
+ a14?: Base58Bytes[];
40
+ a15?: Base58Bytes[];
41
+ isCommitted?: boolean;
42
+ transaction?: boolean;
43
+ transactionBalances?: boolean;
44
+ transactionTokenBalances?: boolean;
45
+ transactionInstructions?: boolean;
46
+ logs?: boolean;
47
+ innerInstructions?: boolean;
48
+ }
49
+ export interface LogRequest {
50
+ programId?: Base58Bytes[];
51
+ kind?: LogMessage['kind'][];
52
+ transaction?: boolean;
53
+ instruction?: boolean;
54
+ }
55
+ export interface BalanceRequest {
56
+ account?: Base58Bytes[];
57
+ transaction?: boolean;
58
+ transactionInstructions?: boolean;
59
+ }
60
+ export interface TokenBalanceRequest {
61
+ account?: Base58Bytes[];
62
+ preProgramId?: Base58Bytes[];
63
+ postProgramId?: Base58Bytes[];
64
+ preMint?: Base58Bytes[];
65
+ postMint?: Base58Bytes[];
66
+ preOwner?: Base58Bytes[];
67
+ postOwner?: Base58Bytes[];
68
+ transaction?: boolean;
69
+ transactionInstructions?: boolean;
70
+ }
71
+ export interface RewardRequest {
72
+ pubkey?: Base58Bytes[];
73
+ }
74
+ //# sourceMappingURL=query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/query/solana/query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,QAAQ,CAAA;AACtC,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,UAAU,CAAA;AAG5C,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,CAAE,SAAQ,SAAS,EAAE,SAAS;IAC1F,IAAI,EAAE,QAAQ,CAAA;IACd,MAAM,EAAE,CAAC,CAAA;CACZ;AAGD,MAAM,WAAW,SAAS;IACtB,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAA;IACnC,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAA;IACnC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAA;IACnB,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAA;IAC3B,aAAa,CAAC,EAAE,mBAAmB,EAAE,CAAA;IACrC,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;CAC5B;AAGD,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,IAAI,CAAC,EAAE,OAAO,CAAA;CACjB;AAGD,MAAM,WAAW,kBAAkB;IAC/B,SAAS,CAAC,EAAE,WAAW,EAAE,CAAA;IACzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAA;IAClB,GAAG,CAAC,EAAE,WAAW,EAAE,CAAA;IACnB,GAAG,CAAC,EAAE,WAAW,EAAE,CAAA;IACnB,GAAG,CAAC,EAAE,WAAW,EAAE,CAAA;IACnB,GAAG,CAAC,EAAE,WAAW,EAAE,CAAA;IACnB,GAAG,CAAC,EAAE,WAAW,EAAE,CAAA;IACnB,GAAG,CAAC,EAAE,WAAW,EAAE,CAAA;IACnB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC9B;AAGD,MAAM,WAAW,UAAU;IACvB,SAAS,CAAC,EAAE,WAAW,EAAE,CAAA;IACzB,IAAI,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAA;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,WAAW,CAAC,EAAE,OAAO,CAAA;CACxB;AAGD,MAAM,WAAW,cAAc;IAC3B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,uBAAuB,CAAC,EAAE,OAAO,CAAA;CACpC;AAGD,MAAM,WAAW,mBAAmB;IAChC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;IACvB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAA;IAC5B,aAAa,CAAC,EAAE,WAAW,EAAE,CAAA;IAC7B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;IACvB,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,WAAW,EAAE,CAAA;IACzB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,uBAAuB,CAAC,EAAE,OAAO,CAAA;CACpC;AAGD,MAAM,WAAW,aAAa;IAC1B,MAAM,CAAC,EAAE,WAAW,EAAE,CAAA;CACzB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/query/solana/query.ts"],"names":[],"mappings":""}
@@ -0,0 +1,160 @@
1
+ import type { FieldSelection } from './fields';
2
+ export declare function patchQueryFields(fields: FieldSelection): FieldSelection;
3
+ export declare function getBlockSchema(fields: FieldSelection): import("@subsquid/util-internal-validation").Validator<{
4
+ header: {
5
+ number: number;
6
+ hash: string;
7
+ parentHash: string;
8
+ parentSlot?: number | undefined;
9
+ height?: number | undefined;
10
+ timestamp?: number | undefined;
11
+ };
12
+ transactions: {
13
+ transactionIndex?: number | undefined;
14
+ version?: number | "legacy" | undefined;
15
+ accountKeys?: string[] | undefined;
16
+ addressTableLookups?: {
17
+ accountKey: string;
18
+ readonlyIndexes: number[];
19
+ writableIndexes: number[];
20
+ }[] | undefined;
21
+ numReadonlySignedAccounts?: number | undefined;
22
+ numReadonlyUnsignedAccounts?: number | undefined;
23
+ numRequiredSignatures?: number | undefined;
24
+ recentBlockhash?: string | undefined;
25
+ signatures?: string[] | undefined;
26
+ err?: object | null | undefined;
27
+ computeUnitsConsumed?: bigint | undefined;
28
+ fee?: bigint | undefined;
29
+ loadedAddresses?: {
30
+ readonly: string[];
31
+ writable: string[];
32
+ } | undefined;
33
+ hasDroppedLogMessages?: boolean | undefined;
34
+ }[];
35
+ instructions: {
36
+ transactionIndex?: number | undefined;
37
+ instructionAddress?: number[] | undefined;
38
+ programId?: string | undefined;
39
+ accounts?: string[] | undefined;
40
+ data?: string | undefined;
41
+ computeUnitsConsumed?: bigint | undefined;
42
+ error?: string | undefined;
43
+ isCommitted?: boolean | undefined;
44
+ hasDroppedLogMessages?: boolean | undefined;
45
+ }[];
46
+ logs: {
47
+ transactionIndex?: number | undefined;
48
+ logIndex?: number | undefined;
49
+ instructionAddress?: number[] | undefined;
50
+ programId?: string | undefined;
51
+ kind?: "data" | "log" | "other" | undefined;
52
+ message?: string | undefined;
53
+ }[];
54
+ balances: {
55
+ transactionIndex?: number | undefined;
56
+ account?: string | undefined;
57
+ pre?: bigint | undefined;
58
+ post?: bigint | undefined;
59
+ }[];
60
+ tokenBalances: {
61
+ transactionIndex?: number | undefined;
62
+ account?: string | undefined;
63
+ preProgramId?: string | undefined;
64
+ postProgramId?: string | undefined;
65
+ preMint?: string | undefined;
66
+ postMint?: string | undefined;
67
+ preDecimals?: number | undefined;
68
+ postDecimals?: number | undefined;
69
+ preOwner?: string | undefined;
70
+ postOwner?: string | undefined;
71
+ preAmount?: bigint | undefined;
72
+ postAmount?: bigint | undefined;
73
+ }[];
74
+ rewards: {
75
+ pubkey?: string | undefined;
76
+ lamports?: bigint | undefined;
77
+ postBalance?: bigint | undefined;
78
+ rewardType?: string | undefined;
79
+ commission?: number | undefined;
80
+ }[];
81
+ }, {
82
+ header: {
83
+ number: number;
84
+ hash: string;
85
+ parentHash: string;
86
+ parentSlot?: number | undefined;
87
+ height?: number | undefined;
88
+ timestamp?: number | undefined;
89
+ };
90
+ transactions?: {
91
+ transactionIndex?: number | undefined;
92
+ version?: number | "legacy" | undefined;
93
+ accountKeys?: string[] | undefined;
94
+ addressTableLookups?: {
95
+ accountKey: string;
96
+ readonlyIndexes: number[];
97
+ writableIndexes: number[];
98
+ }[] | undefined;
99
+ numReadonlySignedAccounts?: number | undefined;
100
+ numReadonlyUnsignedAccounts?: number | undefined;
101
+ numRequiredSignatures?: number | undefined;
102
+ recentBlockhash?: string | undefined;
103
+ signatures?: string[] | undefined;
104
+ err?: object | null | undefined;
105
+ computeUnitsConsumed?: string | undefined;
106
+ fee?: string | undefined;
107
+ loadedAddresses?: {
108
+ readonly: string[];
109
+ writable: string[];
110
+ } | null | undefined;
111
+ hasDroppedLogMessages?: boolean | undefined;
112
+ }[] | null | undefined;
113
+ instructions?: {
114
+ transactionIndex?: number | undefined;
115
+ instructionAddress?: number[] | undefined;
116
+ programId?: string | undefined;
117
+ accounts?: string[] | undefined;
118
+ data?: string | undefined;
119
+ computeUnitsConsumed?: string | null | undefined;
120
+ error?: string | null | undefined;
121
+ isCommitted?: boolean | undefined;
122
+ hasDroppedLogMessages?: boolean | undefined;
123
+ }[] | null | undefined;
124
+ logs?: {
125
+ transactionIndex?: number | undefined;
126
+ logIndex?: number | undefined;
127
+ instructionAddress?: number[] | undefined;
128
+ programId?: string | undefined;
129
+ kind?: "data" | "log" | "other" | undefined;
130
+ message?: string | undefined;
131
+ }[] | null | undefined;
132
+ balances?: {
133
+ transactionIndex?: number | undefined;
134
+ account?: string | undefined;
135
+ pre?: string | undefined;
136
+ post?: string | undefined;
137
+ }[] | null | undefined;
138
+ tokenBalances?: {
139
+ transactionIndex?: number | undefined;
140
+ account?: string | undefined;
141
+ preProgramId?: string | null | undefined;
142
+ postProgramId?: string | null | undefined;
143
+ preMint?: string | null | undefined;
144
+ postMint?: string | null | undefined;
145
+ preDecimals?: number | null | undefined;
146
+ postDecimals?: number | null | undefined;
147
+ preOwner?: string | null | undefined;
148
+ postOwner?: string | null | undefined;
149
+ preAmount?: string | null | undefined;
150
+ postAmount?: string | null | undefined;
151
+ }[] | null | undefined;
152
+ rewards?: {
153
+ pubkey?: string | undefined;
154
+ lamports?: string | undefined;
155
+ postBalance?: string | undefined;
156
+ rewardType?: string | null | undefined;
157
+ commission?: number | null | undefined;
158
+ }[] | null | undefined;
159
+ }>;
160
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/query/solana/schema.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,UAAU,CAAA;AAE5C,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,cAAc,CAUvE;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAUpD"}
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.patchQueryFields = patchQueryFields;
4
+ exports.getBlockSchema = getBlockSchema;
5
+ const util_internal_validation_1 = require("@subsquid/util-internal-validation");
6
+ const util_1 = require("../util");
7
+ function patchQueryFields(fields) {
8
+ fields = { ...fields };
9
+ let { height, ...block } = fields.block ?? {};
10
+ fields.block = {
11
+ ...block,
12
+ number: true,
13
+ hash: true,
14
+ parentHash: true,
15
+ };
16
+ return fields;
17
+ }
18
+ function getBlockSchema(fields) {
19
+ return (0, util_internal_validation_1.object)({
20
+ header: getBlockHeaderSchema(fields),
21
+ transactions: (0, util_internal_validation_1.withDefault)([], (0, util_internal_validation_1.array)(getTransactionSchema(fields))),
22
+ instructions: (0, util_internal_validation_1.withDefault)([], (0, util_internal_validation_1.array)(getInstructionSchema(fields))),
23
+ logs: (0, util_internal_validation_1.withDefault)([], (0, util_internal_validation_1.array)(getLogSchema(fields))),
24
+ balances: (0, util_internal_validation_1.withDefault)([], (0, util_internal_validation_1.array)(getBalanceSchema(fields))),
25
+ tokenBalances: (0, util_internal_validation_1.withDefault)([], (0, util_internal_validation_1.array)(getTokenBalanceSchema(fields))),
26
+ rewards: (0, util_internal_validation_1.withDefault)([], (0, util_internal_validation_1.array)(getRewardSchema(fields))),
27
+ });
28
+ }
29
+ function getBlockHeaderSchema(fields) {
30
+ return (0, util_internal_validation_1.object)({
31
+ number: util_internal_validation_1.NAT,
32
+ hash: util_internal_validation_1.B58,
33
+ parentHash: util_internal_validation_1.B58,
34
+ ...(0, util_1.project)(fields.block, {
35
+ parentSlot: util_internal_validation_1.NAT,
36
+ height: util_internal_validation_1.NAT,
37
+ timestamp: util_internal_validation_1.NAT,
38
+ }),
39
+ });
40
+ }
41
+ const AddressTableLookup = (0, util_internal_validation_1.object)({
42
+ accountKey: util_internal_validation_1.B58,
43
+ readonlyIndexes: (0, util_internal_validation_1.array)(util_internal_validation_1.NAT),
44
+ writableIndexes: (0, util_internal_validation_1.array)(util_internal_validation_1.NAT),
45
+ });
46
+ function getTransactionSchema(fields) {
47
+ return (0, util_internal_validation_1.object)((0, util_1.project)(fields.transaction, {
48
+ transactionIndex: util_internal_validation_1.NAT,
49
+ version: (0, util_internal_validation_1.oneOf)({
50
+ legacy: (0, util_internal_validation_1.constant)('legacy'),
51
+ versionNumber: util_internal_validation_1.NAT,
52
+ }),
53
+ accountKeys: (0, util_internal_validation_1.array)(util_internal_validation_1.B58),
54
+ addressTableLookups: (0, util_internal_validation_1.array)(AddressTableLookup),
55
+ numReadonlySignedAccounts: util_internal_validation_1.NAT,
56
+ numReadonlyUnsignedAccounts: util_internal_validation_1.NAT,
57
+ numRequiredSignatures: util_internal_validation_1.NAT,
58
+ recentBlockhash: util_internal_validation_1.B58,
59
+ signatures: (0, util_internal_validation_1.array)(util_internal_validation_1.B58),
60
+ err: (0, util_internal_validation_1.nullable)(util_internal_validation_1.ANY_OBJECT),
61
+ computeUnitsConsumed: util_internal_validation_1.BIG_NAT,
62
+ fee: util_internal_validation_1.BIG_NAT,
63
+ loadedAddresses: (0, util_internal_validation_1.option)((0, util_internal_validation_1.object)({
64
+ readonly: (0, util_internal_validation_1.array)(util_internal_validation_1.B58),
65
+ writable: (0, util_internal_validation_1.array)(util_internal_validation_1.B58),
66
+ })),
67
+ hasDroppedLogMessages: util_internal_validation_1.BOOLEAN,
68
+ }));
69
+ }
70
+ function getInstructionSchema(fields) {
71
+ return (0, util_internal_validation_1.object)((0, util_1.project)(fields.instruction, {
72
+ transactionIndex: util_internal_validation_1.NAT,
73
+ instructionAddress: (0, util_internal_validation_1.array)(util_internal_validation_1.NAT),
74
+ programId: util_internal_validation_1.B58,
75
+ accounts: (0, util_internal_validation_1.array)(util_internal_validation_1.B58),
76
+ data: util_internal_validation_1.B58,
77
+ computeUnitsConsumed: (0, util_internal_validation_1.option)(util_internal_validation_1.BIG_NAT),
78
+ error: (0, util_internal_validation_1.option)(util_internal_validation_1.STRING),
79
+ isCommitted: util_internal_validation_1.BOOLEAN,
80
+ hasDroppedLogMessages: util_internal_validation_1.BOOLEAN,
81
+ }));
82
+ }
83
+ function getLogSchema(fields) {
84
+ return (0, util_internal_validation_1.object)((0, util_1.project)(fields.log, {
85
+ transactionIndex: util_internal_validation_1.NAT,
86
+ logIndex: util_internal_validation_1.NAT,
87
+ instructionAddress: (0, util_internal_validation_1.array)(util_internal_validation_1.NAT),
88
+ programId: util_internal_validation_1.B58,
89
+ kind: (0, util_internal_validation_1.oneOf)({
90
+ log: (0, util_internal_validation_1.constant)('log'),
91
+ data: (0, util_internal_validation_1.constant)('data'),
92
+ other: (0, util_internal_validation_1.constant)('other'),
93
+ }),
94
+ message: util_internal_validation_1.STRING,
95
+ }));
96
+ }
97
+ function getBalanceSchema(fields) {
98
+ return (0, util_internal_validation_1.object)((0, util_1.project)(fields.balance, {
99
+ transactionIndex: util_internal_validation_1.NAT,
100
+ account: util_internal_validation_1.B58,
101
+ pre: util_internal_validation_1.BIG_NAT,
102
+ post: util_internal_validation_1.BIG_NAT,
103
+ }));
104
+ }
105
+ function getTokenBalanceSchema(fields) {
106
+ return (0, util_internal_validation_1.object)((0, util_1.project)(fields.tokenBalance, {
107
+ transactionIndex: util_internal_validation_1.NAT,
108
+ account: util_internal_validation_1.B58,
109
+ preProgramId: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
110
+ postProgramId: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
111
+ preMint: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
112
+ postMint: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
113
+ preDecimals: (0, util_internal_validation_1.option)(util_internal_validation_1.NAT),
114
+ postDecimals: (0, util_internal_validation_1.option)(util_internal_validation_1.NAT),
115
+ preOwner: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
116
+ postOwner: (0, util_internal_validation_1.option)(util_internal_validation_1.B58),
117
+ preAmount: (0, util_internal_validation_1.option)(util_internal_validation_1.BIG_NAT),
118
+ postAmount: (0, util_internal_validation_1.option)(util_internal_validation_1.BIG_NAT),
119
+ }));
120
+ }
121
+ function getRewardSchema(fields) {
122
+ return (0, util_internal_validation_1.object)((0, util_1.project)(fields.reward, {
123
+ pubkey: util_internal_validation_1.B58,
124
+ lamports: util_internal_validation_1.BIG_NAT,
125
+ postBalance: util_internal_validation_1.BIG_NAT,
126
+ rewardType: (0, util_internal_validation_1.option)(util_internal_validation_1.STRING),
127
+ commission: (0, util_internal_validation_1.option)(util_internal_validation_1.NAT),
128
+ }));
129
+ }
130
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/query/solana/schema.ts"],"names":[],"mappings":"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"}