@solana/rpc-graphql 2.0.0-experimental.fe07532 → 2.0.0-experimental.ff8c65b
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/README.md +1088 -30
- package/dist/index.browser.cjs +2754 -1936
- package/dist/index.browser.cjs.map +1 -1
- package/dist/index.browser.js +2750 -1937
- package/dist/index.browser.js.map +1 -1
- package/dist/index.native.js +2750 -1933
- package/dist/index.native.js.map +1 -1
- package/dist/index.node.cjs +2754 -1932
- package/dist/index.node.cjs.map +1 -1
- package/dist/index.node.js +2750 -1933
- package/dist/index.node.js.map +1 -1
- package/dist/types/context.d.ts +17 -16
- package/dist/types/loaders/account.d.ts +28 -0
- package/dist/types/loaders/block.d.ts +16 -0
- package/dist/types/loaders/common/resolve-info.d.ts +3 -0
- package/dist/types/loaders/program-accounts.d.ts +28 -0
- package/dist/types/loaders/transaction.d.ts +39 -0
- package/dist/types/resolvers/account.d.ts +8 -0
- package/dist/types/rpc.d.ts +7 -2
- package/dist/types/schema/account.d.ts +124 -0
- package/dist/types/schema/block.d.ts +17 -0
- package/dist/types/schema/common/inputs.d.ts +10 -0
- package/dist/types/schema/common/scalars.d.ts +13 -0
- package/dist/types/schema/common/types.d.ts +12 -0
- package/dist/types/schema/index.d.ts +2 -0
- package/dist/types/schema/instruction.d.ts +954 -0
- package/dist/types/schema/program-accounts.d.ts +12 -0
- package/dist/types/schema/transaction.d.ts +16 -0
- package/package.json +10 -6
- package/dist/types/cache.d.ts +0 -7
- package/dist/types/cache.d.ts.map +0 -1
- package/dist/types/context.d.ts.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/rpc.d.ts.map +0 -1
- package/dist/types/schema/account/index.d.ts +0 -3
- package/dist/types/schema/account/index.d.ts.map +0 -1
- package/dist/types/schema/account/query.d.ts +0 -38
- package/dist/types/schema/account/query.d.ts.map +0 -1
- package/dist/types/schema/account/types.d.ts +0 -5
- package/dist/types/schema/account/types.d.ts.map +0 -1
- package/dist/types/schema/block/index.d.ts +0 -3
- package/dist/types/schema/block/index.d.ts.map +0 -1
- package/dist/types/schema/block/query.d.ts +0 -42
- package/dist/types/schema/block/query.d.ts.map +0 -1
- package/dist/types/schema/block/types.d.ts +0 -7
- package/dist/types/schema/block/types.d.ts.map +0 -1
- package/dist/types/schema/inputs.d.ts +0 -9
- package/dist/types/schema/inputs.d.ts.map +0 -1
- package/dist/types/schema/picks.d.ts +0 -36
- package/dist/types/schema/picks.d.ts.map +0 -1
- package/dist/types/schema/program-accounts/index.d.ts +0 -2
- package/dist/types/schema/program-accounts/index.d.ts.map +0 -1
- package/dist/types/schema/program-accounts/query.d.ts +0 -47
- package/dist/types/schema/program-accounts/query.d.ts.map +0 -1
- package/dist/types/schema/program-accounts/types.d.ts +0 -3
- package/dist/types/schema/program-accounts/types.d.ts.map +0 -1
- package/dist/types/schema/scalars.d.ts +0 -3
- package/dist/types/schema/scalars.d.ts.map +0 -1
- package/dist/types/schema/transaction/index.d.ts +0 -3
- package/dist/types/schema/transaction/index.d.ts.map +0 -1
- package/dist/types/schema/transaction/query.d.ts +0 -33
- package/dist/types/schema/transaction/query.d.ts.map +0 -1
- package/dist/types/schema/transaction/types.d.ts +0 -12
- package/dist/types/schema/transaction/types.d.ts.map +0 -1
package/dist/index.browser.js
CHANGED
|
@@ -1,44 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { graphql, Kind } from 'graphql';
|
|
2
|
+
import DataLoader from 'dataloader';
|
|
3
|
+
import fastStableStringify from 'fast-stable-stringify';
|
|
4
|
+
import { makeExecutableSchema } from '@graphql-tools/schema';
|
|
2
5
|
|
|
3
6
|
// src/rpc.ts
|
|
4
7
|
|
|
5
|
-
// src/
|
|
6
|
-
|
|
7
|
-
if (typeof value2 === "bigint") {
|
|
8
|
-
return value2.toString() + "n";
|
|
9
|
-
}
|
|
10
|
-
return value2;
|
|
11
|
-
});
|
|
12
|
-
var parseValue = (value) => JSON.parse(value, (_, value2) => {
|
|
13
|
-
if (typeof value2 === "string" && /\d+n$/.test(value2)) {
|
|
14
|
-
return BigInt(value2.slice(0, -1));
|
|
15
|
-
}
|
|
16
|
-
return value2;
|
|
17
|
-
});
|
|
18
|
-
var cacheKey = (key, variables) => `GraphQLCache:${stringifyValue(key)}:${stringifyValue(variables)}`;
|
|
19
|
-
function createGraphQLCache() {
|
|
20
|
-
return {
|
|
21
|
-
// Browser
|
|
22
|
-
flush: () => {
|
|
23
|
-
for (let i = localStorage.length - 1; i >= 0; i--) {
|
|
24
|
-
const storageKey = localStorage.key(i);
|
|
25
|
-
if (storageKey && storageKey.startsWith("GraphQLCache:")) {
|
|
26
|
-
localStorage.removeItem(storageKey);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
get: (key, variables) => {
|
|
31
|
-
const value = localStorage.getItem(cacheKey(key, variables));
|
|
32
|
-
return value === null ? null : parseValue(value);
|
|
33
|
-
},
|
|
34
|
-
insert: (key, variables, value) => {
|
|
35
|
-
localStorage.setItem(cacheKey(key, variables), stringifyValue(value));
|
|
36
|
-
}
|
|
37
|
-
} ;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
// src/context.ts
|
|
41
|
-
async function resolveAccount({ address, encoding = "jsonParsed", ...config }, cache, rpc, info) {
|
|
8
|
+
// src/loaders/common/resolve-info.ts
|
|
9
|
+
function onlyPresentFieldRequested(fieldName, info) {
|
|
42
10
|
if (info && info.fieldNodes[0].selectionSet) {
|
|
43
11
|
const selectionSet = info.fieldNodes[0].selectionSet;
|
|
44
12
|
const requestedFields = selectionSet.selections.map((field) => {
|
|
@@ -47,2167 +15,3012 @@ async function resolveAccount({ address, encoding = "jsonParsed", ...config }, c
|
|
|
47
15
|
}
|
|
48
16
|
return null;
|
|
49
17
|
});
|
|
50
|
-
if (requestedFields && requestedFields.length === 1 && requestedFields[0] ===
|
|
51
|
-
return
|
|
18
|
+
if (requestedFields && requestedFields.length === 1 && requestedFields[0] === fieldName) {
|
|
19
|
+
return true;
|
|
52
20
|
}
|
|
53
21
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
const
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// src/loaders/account.ts
|
|
26
|
+
function normalizeArgs(args) {
|
|
27
|
+
const { address, commitment, dataSlice, encoding, minContextSlot } = args;
|
|
28
|
+
return {
|
|
29
|
+
address,
|
|
30
|
+
commitment: commitment ?? "confirmed",
|
|
31
|
+
dataSlice,
|
|
32
|
+
encoding: encoding ?? "jsonParsed",
|
|
33
|
+
minContextSlot
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function refineJsonParsedAccountData(jsonParsedAccountData) {
|
|
37
|
+
const meta = {
|
|
38
|
+
program: jsonParsedAccountData.program,
|
|
39
|
+
space: jsonParsedAccountData.space,
|
|
40
|
+
type: jsonParsedAccountData.parsed.type
|
|
41
|
+
};
|
|
42
|
+
const data = jsonParsedAccountData.parsed.info;
|
|
43
|
+
return { data, meta };
|
|
44
|
+
}
|
|
45
|
+
function processQueryResponse({ address, account, encoding }) {
|
|
46
|
+
const [refinedData, responseEncoding] = Array.isArray(account.data) ? encoding === "jsonParsed" ? [account.data[0], "base64"] : [account.data[0], encoding] : [refineJsonParsedAccountData(account.data), "jsonParsed"];
|
|
47
|
+
const responseBase = {
|
|
69
48
|
...account,
|
|
70
49
|
address,
|
|
71
|
-
data,
|
|
72
50
|
encoding: responseEncoding
|
|
73
51
|
};
|
|
74
|
-
|
|
75
|
-
|
|
52
|
+
return typeof refinedData === "object" && "meta" in refinedData ? {
|
|
53
|
+
...responseBase,
|
|
54
|
+
data: refinedData.data,
|
|
55
|
+
meta: refinedData.meta
|
|
56
|
+
} : {
|
|
57
|
+
...responseBase,
|
|
58
|
+
data: refinedData
|
|
59
|
+
};
|
|
76
60
|
}
|
|
77
|
-
async function
|
|
78
|
-
const
|
|
79
|
-
const
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
if (block === null) {
|
|
85
|
-
return null;
|
|
61
|
+
async function loadAccount(rpc, { address, ...config }) {
|
|
62
|
+
const { encoding } = config;
|
|
63
|
+
const account = await rpc.getAccountInfo(address, config).send().then((res) => res.value).catch((e) => {
|
|
64
|
+
throw e;
|
|
65
|
+
});
|
|
66
|
+
if (account === null) {
|
|
67
|
+
return { address };
|
|
86
68
|
}
|
|
87
|
-
|
|
88
|
-
|
|
69
|
+
return processQueryResponse({ account, address, encoding });
|
|
70
|
+
}
|
|
71
|
+
function createAccountBatchLoadFn(rpc) {
|
|
72
|
+
const resolveAccountUsingRpc = loadAccount.bind(null, rpc);
|
|
73
|
+
return async (accountQueryArgs) => {
|
|
74
|
+
return await Promise.all(accountQueryArgs.map(async (args) => await resolveAccountUsingRpc(args)));
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function createAccountLoader(rpc) {
|
|
78
|
+
const loader = new DataLoader(createAccountBatchLoadFn(rpc), { cacheKeyFn: fastStableStringify });
|
|
79
|
+
return {
|
|
80
|
+
load: async (args, info) => {
|
|
81
|
+
if (onlyPresentFieldRequested("address", info)) {
|
|
82
|
+
return { address: args.address };
|
|
83
|
+
}
|
|
84
|
+
return loader.load(normalizeArgs(args));
|
|
85
|
+
}
|
|
86
|
+
};
|
|
89
87
|
}
|
|
90
|
-
|
|
91
|
-
const
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
88
|
+
function normalizeArgs2(args) {
|
|
89
|
+
const { commitment, encoding, signature } = args;
|
|
90
|
+
return {
|
|
91
|
+
commitment: commitment ?? "confirmed",
|
|
92
|
+
encoding: encoding ?? "jsonParsed",
|
|
93
|
+
// Always use 0 to avoid silly errors
|
|
94
|
+
maxSupportedTransactionVersion: 0,
|
|
95
|
+
signature
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
function refineJsonParsedInstructionData(jsonParsedInstructionData) {
|
|
99
|
+
if ("parsed" in jsonParsedInstructionData) {
|
|
100
|
+
const meta = {
|
|
101
|
+
program: jsonParsedInstructionData.program,
|
|
102
|
+
type: jsonParsedInstructionData.parsed.type
|
|
103
|
+
};
|
|
104
|
+
const programId = jsonParsedInstructionData.programId;
|
|
105
|
+
const data = jsonParsedInstructionData.parsed.info;
|
|
106
|
+
return { data, meta, programId };
|
|
107
|
+
} else {
|
|
108
|
+
return jsonParsedInstructionData;
|
|
95
109
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
110
|
+
}
|
|
111
|
+
function refineJsonParsedTransactionData(jsonParsedTransactionData) {
|
|
112
|
+
const refinedInstructions = jsonParsedTransactionData.message.instructions.map(
|
|
113
|
+
(instruction) => refineJsonParsedInstructionData(instruction)
|
|
114
|
+
);
|
|
115
|
+
const message = {
|
|
116
|
+
...jsonParsedTransactionData.message,
|
|
117
|
+
instructions: refinedInstructions
|
|
118
|
+
};
|
|
119
|
+
return { message, signatures: jsonParsedTransactionData.signatures };
|
|
120
|
+
}
|
|
121
|
+
function refineJsonParsedTransactionMeta(jsonParsedTransactionMeta) {
|
|
122
|
+
const refinedInnerInstructions = jsonParsedTransactionMeta.innerInstructions.map(
|
|
123
|
+
({ index, instructions }) => {
|
|
124
|
+
return {
|
|
125
|
+
index,
|
|
126
|
+
instructions: instructions.map((instruction) => refineJsonParsedInstructionData(instruction))
|
|
127
|
+
};
|
|
99
128
|
}
|
|
100
|
-
|
|
101
|
-
|
|
129
|
+
);
|
|
130
|
+
return {
|
|
131
|
+
...jsonParsedTransactionMeta,
|
|
132
|
+
innerInstructions: refinedInnerInstructions
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
function refineJsonParsedTransaction({ encoding, transaction }) {
|
|
136
|
+
const [transactionData, transactionMeta] = Array.isArray(transaction.transaction) ? [transaction.transaction[0], transaction.meta] : [refineJsonParsedTransactionData(transaction.transaction), refineJsonParsedTransactionMeta(transaction.meta)];
|
|
137
|
+
return {
|
|
138
|
+
data: transactionData,
|
|
139
|
+
encoding,
|
|
140
|
+
meta: transactionMeta,
|
|
141
|
+
slot: transaction.slot,
|
|
142
|
+
version: transaction.version
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
function processQueryResponse2({ encoding, transaction }) {
|
|
146
|
+
return refineJsonParsedTransaction({ encoding, transaction });
|
|
147
|
+
}
|
|
148
|
+
async function loadTransaction(rpc, { signature, ...config }) {
|
|
149
|
+
const { encoding } = config;
|
|
150
|
+
let transaction = await rpc.getTransaction(signature, config).send().catch((e) => {
|
|
102
151
|
throw e;
|
|
103
152
|
});
|
|
104
|
-
const queryResponse = programAccounts.map((programAccount2) => {
|
|
105
|
-
const [data, responseEncoding] = Array.isArray(programAccount2.account.data) ? encoding === "jsonParsed" ? [programAccount2.account.data[0], "base64"] : [programAccount2.account.data[0], encoding] : [programAccount2.account.data, "jsonParsed"];
|
|
106
|
-
const pubkey = programAccount2.pubkey;
|
|
107
|
-
const account = { ...programAccount2.account, data, encoding: responseEncoding };
|
|
108
|
-
return {
|
|
109
|
-
account,
|
|
110
|
-
pubkey
|
|
111
|
-
};
|
|
112
|
-
});
|
|
113
|
-
cache.insert(programAddress, requestConfig, queryResponse);
|
|
114
|
-
return queryResponse;
|
|
115
|
-
}
|
|
116
|
-
async function resolveTransaction({ signature, encoding = "jsonParsed", ...config }, cache, rpc) {
|
|
117
|
-
const requestConfig = { encoding, ...config };
|
|
118
|
-
const cached = cache.get(signature, requestConfig);
|
|
119
|
-
if (cached !== null) {
|
|
120
|
-
return cached;
|
|
121
|
-
}
|
|
122
|
-
const transaction = await rpc.getTransaction(signature, requestConfig).send();
|
|
123
153
|
if (transaction === null) {
|
|
124
154
|
return null;
|
|
125
155
|
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
156
|
+
if (encoding !== "jsonParsed") {
|
|
157
|
+
const transactionJsonParsed = await rpc.getTransaction(signature, config).send().catch((e) => {
|
|
158
|
+
throw e;
|
|
159
|
+
});
|
|
160
|
+
if (transactionJsonParsed === null) {
|
|
161
|
+
return null;
|
|
162
|
+
}
|
|
163
|
+
transaction = {
|
|
164
|
+
...transaction,
|
|
165
|
+
meta: transactionJsonParsed.meta
|
|
166
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
167
|
+
};
|
|
132
168
|
}
|
|
133
|
-
const queryResponse = {
|
|
134
|
-
...transaction,
|
|
135
|
-
encoding: responseEncoding,
|
|
136
|
-
transaction: transactionData
|
|
137
|
-
};
|
|
138
|
-
cache.insert(signature, requestConfig, queryResponse);
|
|
169
|
+
const queryResponse = processQueryResponse2({ encoding, transaction });
|
|
139
170
|
return queryResponse;
|
|
140
171
|
}
|
|
141
|
-
function
|
|
142
|
-
const
|
|
143
|
-
return {
|
|
144
|
-
|
|
145
|
-
resolveAccount(args, info) {
|
|
146
|
-
return resolveAccount(args, this.cache, this.rpc, info);
|
|
147
|
-
},
|
|
148
|
-
resolveBlock(args) {
|
|
149
|
-
return resolveBlock(args, this.cache, this.rpc);
|
|
150
|
-
},
|
|
151
|
-
resolveProgramAccounts(args) {
|
|
152
|
-
return resolveProgramAccounts(args, this.cache, this.rpc);
|
|
153
|
-
},
|
|
154
|
-
resolveTransaction(args) {
|
|
155
|
-
return resolveTransaction(args, this.cache, this.rpc);
|
|
156
|
-
},
|
|
157
|
-
rpc
|
|
172
|
+
function createTransactionBatchLoadFn(rpc) {
|
|
173
|
+
const resolveTransactionUsingRpc = loadTransaction.bind(null, rpc);
|
|
174
|
+
return async (transactionQueryArgs) => {
|
|
175
|
+
return await Promise.all(transactionQueryArgs.map(async (args) => await resolveTransactionUsingRpc(args)));
|
|
158
176
|
};
|
|
159
177
|
}
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
178
|
+
function createTransactionLoader(rpc) {
|
|
179
|
+
const loader = new DataLoader(createTransactionBatchLoadFn(rpc), { cacheKeyFn: fastStableStringify });
|
|
180
|
+
return {
|
|
181
|
+
load: async (args, info) => {
|
|
182
|
+
if (onlyPresentFieldRequested("signature", info)) {
|
|
183
|
+
return { signature: args.signature };
|
|
184
|
+
}
|
|
185
|
+
return loader.load(normalizeArgs2(args));
|
|
165
186
|
}
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
parseValue(value) {
|
|
169
|
-
return BigInt(value);
|
|
170
|
-
},
|
|
171
|
-
serialize(value) {
|
|
172
|
-
return BigInt(value);
|
|
173
|
-
}
|
|
174
|
-
});
|
|
187
|
+
};
|
|
188
|
+
}
|
|
175
189
|
|
|
176
|
-
// src/
|
|
177
|
-
function
|
|
178
|
-
|
|
190
|
+
// src/loaders/block.ts
|
|
191
|
+
function normalizeArgs3(args) {
|
|
192
|
+
const { commitment, encoding, slot, transactionDetails } = args;
|
|
193
|
+
return {
|
|
194
|
+
commitment: commitment ?? "confirmed",
|
|
195
|
+
encoding: encoding ?? "jsonParsed",
|
|
196
|
+
// Always use 0 to avoid silly errors
|
|
197
|
+
maxSupportedTransactionVersion: 0,
|
|
198
|
+
slot,
|
|
199
|
+
transactionDetails: transactionDetails ?? "full"
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
function refineJsonParsedTransactionForAccounts({ transaction }) {
|
|
203
|
+
return {
|
|
204
|
+
data: transaction.transaction,
|
|
205
|
+
meta: transaction.meta,
|
|
206
|
+
version: transaction.version
|
|
207
|
+
};
|
|
179
208
|
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
209
|
+
function processQueryResponse3({
|
|
210
|
+
encoding,
|
|
211
|
+
block,
|
|
212
|
+
transactionDetails
|
|
213
|
+
}) {
|
|
214
|
+
if (typeof block === "object" && "transactions" in block) {
|
|
215
|
+
const refinedBlock = {
|
|
216
|
+
...block,
|
|
217
|
+
transactions: block.transactions.map((transaction) => {
|
|
218
|
+
if (transactionDetails === "accounts") {
|
|
219
|
+
return refineJsonParsedTransactionForAccounts({ transaction });
|
|
220
|
+
} else {
|
|
221
|
+
return refineJsonParsedTransaction({ encoding, transaction });
|
|
222
|
+
}
|
|
223
|
+
})
|
|
224
|
+
};
|
|
225
|
+
block = refinedBlock;
|
|
226
|
+
}
|
|
227
|
+
return {
|
|
228
|
+
...block,
|
|
229
|
+
encoding,
|
|
230
|
+
transactionDetails
|
|
231
|
+
};
|
|
185
232
|
}
|
|
186
|
-
function
|
|
187
|
-
|
|
233
|
+
async function loadBlock(rpc, { slot, ...config }) {
|
|
234
|
+
const { encoding, transactionDetails } = config;
|
|
235
|
+
const block = await rpc.getBlock(slot, config).send().catch((e) => {
|
|
236
|
+
throw e;
|
|
237
|
+
});
|
|
238
|
+
if (block === null) {
|
|
239
|
+
return { slot };
|
|
240
|
+
}
|
|
241
|
+
const queryResponse = processQueryResponse3({ block, encoding, transactionDetails });
|
|
242
|
+
return queryResponse;
|
|
188
243
|
}
|
|
189
|
-
function
|
|
190
|
-
|
|
244
|
+
function createBlockBatchLoadFn(rpc) {
|
|
245
|
+
const resolveBlockUsingRpc = loadBlock.bind(null, rpc);
|
|
246
|
+
return async (blockQueryArgs) => {
|
|
247
|
+
return await Promise.all(blockQueryArgs.map(async (args) => await resolveBlockUsingRpc(args)));
|
|
248
|
+
};
|
|
191
249
|
}
|
|
192
|
-
function
|
|
250
|
+
function createBlockLoader(rpc) {
|
|
251
|
+
const loader = new DataLoader(createBlockBatchLoadFn(rpc), { cacheKeyFn: fastStableStringify });
|
|
193
252
|
return {
|
|
194
|
-
|
|
253
|
+
load: async (args, info) => {
|
|
254
|
+
if (onlyPresentFieldRequested("slot", info)) {
|
|
255
|
+
return { slot: args.slot };
|
|
256
|
+
}
|
|
257
|
+
return loader.load(normalizeArgs3(args));
|
|
258
|
+
}
|
|
195
259
|
};
|
|
196
260
|
}
|
|
197
|
-
function
|
|
261
|
+
function normalizeArgs4(args) {
|
|
262
|
+
const { commitment, dataSlice, encoding, filters, minContextSlot, programAddress } = args;
|
|
198
263
|
return {
|
|
199
|
-
|
|
264
|
+
commitment: commitment ?? "confirmed",
|
|
265
|
+
dataSlice,
|
|
266
|
+
encoding: encoding ?? "jsonParsed",
|
|
267
|
+
filters,
|
|
268
|
+
minContextSlot,
|
|
269
|
+
programAddress
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
function processQueryResponse4({ encoding, programAccounts }) {
|
|
273
|
+
return programAccounts.map((programAccount) => {
|
|
274
|
+
const [refinedData, responseEncoding] = Array.isArray(programAccount.account.data) ? encoding === "jsonParsed" ? [programAccount.account.data[0], "base64"] : [programAccount.account.data[0], encoding] : [refineJsonParsedAccountData(programAccount.account.data), "jsonParsed"];
|
|
275
|
+
const pubkey = programAccount.pubkey;
|
|
276
|
+
const responseBase = {
|
|
277
|
+
...programAccount.account,
|
|
278
|
+
address: pubkey,
|
|
279
|
+
encoding: responseEncoding
|
|
280
|
+
};
|
|
281
|
+
return typeof refinedData === "object" && "meta" in refinedData ? {
|
|
282
|
+
...responseBase,
|
|
283
|
+
data: refinedData.data,
|
|
284
|
+
meta: refinedData.meta
|
|
285
|
+
} : {
|
|
286
|
+
...responseBase,
|
|
287
|
+
data: refinedData
|
|
288
|
+
};
|
|
289
|
+
});
|
|
290
|
+
}
|
|
291
|
+
async function loadProgramAccounts(rpc, { programAddress, ...config }) {
|
|
292
|
+
const { encoding } = config;
|
|
293
|
+
const programAccounts = await rpc.getProgramAccounts(programAddress, config).send().then((res) => {
|
|
294
|
+
if ("value" in res) {
|
|
295
|
+
return res.value;
|
|
296
|
+
}
|
|
297
|
+
return res;
|
|
298
|
+
}).catch((e) => {
|
|
299
|
+
throw e;
|
|
300
|
+
});
|
|
301
|
+
const queryResponse = processQueryResponse4({ encoding, programAccounts });
|
|
302
|
+
return queryResponse;
|
|
303
|
+
}
|
|
304
|
+
function createProgramAccountsBatchLoadFn(rpc) {
|
|
305
|
+
const resolveProgramAccountsUsingRpc = loadProgramAccounts.bind(null, rpc);
|
|
306
|
+
return async (programAccountsQueryArgs) => {
|
|
307
|
+
return await Promise.all(
|
|
308
|
+
programAccountsQueryArgs.map(async (args) => await resolveProgramAccountsUsingRpc(args))
|
|
309
|
+
);
|
|
200
310
|
};
|
|
201
311
|
}
|
|
202
|
-
function
|
|
312
|
+
function createProgramAccountsLoader(rpc) {
|
|
313
|
+
const loader = new DataLoader(createProgramAccountsBatchLoadFn(rpc), { cacheKeyFn: fastStableStringify });
|
|
203
314
|
return {
|
|
204
|
-
|
|
315
|
+
load: async (args, info) => {
|
|
316
|
+
if (onlyPresentFieldRequested("programAddress", info)) {
|
|
317
|
+
return { programAddress: args.programAddress };
|
|
318
|
+
}
|
|
319
|
+
return loader.load(normalizeArgs4(args));
|
|
320
|
+
}
|
|
205
321
|
};
|
|
206
322
|
}
|
|
207
|
-
|
|
323
|
+
|
|
324
|
+
// src/context.ts
|
|
325
|
+
function createSolanaGraphQLContext(rpc) {
|
|
208
326
|
return {
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
327
|
+
loaders: {
|
|
328
|
+
account: createAccountLoader(rpc),
|
|
329
|
+
block: createBlockLoader(rpc),
|
|
330
|
+
programAccounts: createProgramAccountsLoader(rpc),
|
|
331
|
+
transaction: createTransactionLoader(rpc)
|
|
332
|
+
},
|
|
333
|
+
rpc
|
|
213
334
|
};
|
|
214
335
|
}
|
|
215
336
|
|
|
216
|
-
// src/
|
|
217
|
-
var
|
|
218
|
-
|
|
219
|
-
if (!memoisedAccountEncodingInputType)
|
|
220
|
-
memoisedAccountEncodingInputType = new GraphQLEnumType({
|
|
221
|
-
name: "AccountEncoding",
|
|
222
|
-
values: {
|
|
223
|
-
base58: {
|
|
224
|
-
value: "base58"
|
|
225
|
-
},
|
|
226
|
-
base64: {
|
|
227
|
-
value: "base64"
|
|
228
|
-
},
|
|
229
|
-
base64Zstd: {
|
|
230
|
-
value: "base64+zstd"
|
|
231
|
-
},
|
|
232
|
-
jsonParsed: {
|
|
233
|
-
value: "jsonParsed"
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
});
|
|
237
|
-
return memoisedAccountEncodingInputType;
|
|
337
|
+
// src/resolvers/account.ts
|
|
338
|
+
var resolveAccount = (fieldName) => {
|
|
339
|
+
return (parent, args, context, info) => parent[fieldName] === null ? null : context.loaders.account.load({ ...args, address: parent[fieldName] }, info);
|
|
238
340
|
};
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
341
|
+
|
|
342
|
+
// src/schema/account.ts
|
|
343
|
+
var accountTypeDefs = (
|
|
344
|
+
/* GraphQL */
|
|
345
|
+
`
|
|
346
|
+
# Account interface
|
|
347
|
+
interface Account {
|
|
348
|
+
address: String
|
|
349
|
+
encoding: String
|
|
350
|
+
executable: Boolean
|
|
351
|
+
lamports: BigInt
|
|
352
|
+
owner: Account
|
|
353
|
+
rentEpoch: BigInt
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
# An account with base58 encoded data
|
|
357
|
+
type AccountBase58 implements Account {
|
|
358
|
+
address: String
|
|
359
|
+
data: String
|
|
360
|
+
encoding: String
|
|
361
|
+
executable: Boolean
|
|
362
|
+
lamports: BigInt
|
|
363
|
+
owner: Account
|
|
364
|
+
rentEpoch: BigInt
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
# An account with base64 encoded data
|
|
368
|
+
type AccountBase64 implements Account {
|
|
369
|
+
address: String
|
|
370
|
+
data: String
|
|
371
|
+
encoding: String
|
|
372
|
+
executable: Boolean
|
|
373
|
+
lamports: BigInt
|
|
374
|
+
owner: Account
|
|
375
|
+
rentEpoch: BigInt
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
# An account with base64+zstd encoded data
|
|
379
|
+
type AccountBase64Zstd implements Account {
|
|
380
|
+
address: String
|
|
381
|
+
data: String
|
|
382
|
+
encoding: String
|
|
383
|
+
executable: Boolean
|
|
384
|
+
lamports: BigInt
|
|
385
|
+
owner: Account
|
|
386
|
+
rentEpoch: BigInt
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
# Interface for JSON-parsed meta
|
|
390
|
+
type JsonParsedAccountMeta {
|
|
391
|
+
program: String
|
|
392
|
+
space: BigInt
|
|
393
|
+
type: String
|
|
394
|
+
}
|
|
395
|
+
interface AccountJsonParsed {
|
|
396
|
+
meta: JsonParsedAccountMeta
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
# A nonce account
|
|
400
|
+
type NonceAccountFeeCalculator {
|
|
401
|
+
lamportsPerSignature: String
|
|
402
|
+
}
|
|
403
|
+
type NonceAccountData {
|
|
404
|
+
authority: Account
|
|
405
|
+
blockhash: String
|
|
406
|
+
feeCalculator: NonceAccountFeeCalculator
|
|
407
|
+
}
|
|
408
|
+
type NonceAccount implements Account & AccountJsonParsed {
|
|
409
|
+
address: String
|
|
410
|
+
data: NonceAccountData
|
|
411
|
+
encoding: String
|
|
412
|
+
executable: Boolean
|
|
413
|
+
lamports: BigInt
|
|
414
|
+
meta: JsonParsedAccountMeta
|
|
415
|
+
owner: Account
|
|
416
|
+
rentEpoch: BigInt
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
# A lookup table account
|
|
420
|
+
type LookupTableAccountData {
|
|
421
|
+
addresses: [String]
|
|
422
|
+
authority: Account
|
|
423
|
+
deactivationSlot: String
|
|
424
|
+
lastExtendedSlot: String
|
|
425
|
+
lastExtendedSlotStartIndex: Int
|
|
426
|
+
}
|
|
427
|
+
type LookupTableAccount implements Account & AccountJsonParsed {
|
|
428
|
+
address: String
|
|
429
|
+
data: LookupTableAccountData
|
|
430
|
+
encoding: String
|
|
431
|
+
executable: Boolean
|
|
432
|
+
lamports: BigInt
|
|
433
|
+
meta: JsonParsedAccountMeta
|
|
434
|
+
owner: Account
|
|
435
|
+
rentEpoch: BigInt
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
# A mint account
|
|
439
|
+
type MintAccountData {
|
|
440
|
+
decimals: Int
|
|
441
|
+
freezeAuthority: Account
|
|
442
|
+
isInitialized: Boolean
|
|
443
|
+
mintAuthority: Account
|
|
444
|
+
supply: String
|
|
445
|
+
}
|
|
446
|
+
type MintAccount implements Account & AccountJsonParsed {
|
|
447
|
+
address: String
|
|
448
|
+
data: MintAccountData
|
|
449
|
+
encoding: String
|
|
450
|
+
executable: Boolean
|
|
451
|
+
lamports: BigInt
|
|
452
|
+
meta: JsonParsedAccountMeta
|
|
453
|
+
owner: Account
|
|
454
|
+
rentEpoch: BigInt
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
# A token account
|
|
458
|
+
type TokenAccountData {
|
|
459
|
+
isNative: Boolean
|
|
460
|
+
mint: Account
|
|
461
|
+
owner: Account
|
|
462
|
+
state: String
|
|
463
|
+
tokenAmount: TokenAmount
|
|
464
|
+
}
|
|
465
|
+
type TokenAccount implements Account & AccountJsonParsed {
|
|
466
|
+
address: String
|
|
467
|
+
data: TokenAccountData
|
|
468
|
+
encoding: String
|
|
469
|
+
executable: Boolean
|
|
470
|
+
lamports: BigInt
|
|
471
|
+
meta: JsonParsedAccountMeta
|
|
472
|
+
owner: Account
|
|
473
|
+
rentEpoch: BigInt
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
# A stake account
|
|
477
|
+
type StakeAccountDataMetaAuthorized {
|
|
478
|
+
staker: Account
|
|
479
|
+
withdrawer: Account
|
|
480
|
+
}
|
|
481
|
+
type StakeAccountDataMetaLockup {
|
|
482
|
+
custodian: Account
|
|
483
|
+
epoch: BigInt
|
|
484
|
+
unixTimestamp: BigInt
|
|
485
|
+
}
|
|
486
|
+
type StakeAccountDataMeta {
|
|
487
|
+
authorized: StakeAccountDataMetaAuthorized
|
|
488
|
+
lockup: StakeAccountDataMetaLockup
|
|
489
|
+
rentExemptReserve: String
|
|
490
|
+
}
|
|
491
|
+
type StakeAccountDataStakeDelegation {
|
|
492
|
+
activationEpoch: BigInt
|
|
493
|
+
deactivationEpoch: BigInt
|
|
494
|
+
stake: String
|
|
495
|
+
voter: Account
|
|
496
|
+
warmupCooldownRate: Int
|
|
497
|
+
}
|
|
498
|
+
type StakeAccountDataStake {
|
|
499
|
+
creditsObserved: BigInt
|
|
500
|
+
delegation: StakeAccountDataStakeDelegation
|
|
501
|
+
}
|
|
502
|
+
type StakeAccountData {
|
|
503
|
+
meta: StakeAccountDataMeta
|
|
504
|
+
stake: StakeAccountDataStake
|
|
505
|
+
}
|
|
506
|
+
type StakeAccount implements Account & AccountJsonParsed {
|
|
507
|
+
address: String
|
|
508
|
+
data: StakeAccountData
|
|
509
|
+
encoding: String
|
|
510
|
+
executable: Boolean
|
|
511
|
+
lamports: BigInt
|
|
512
|
+
meta: JsonParsedAccountMeta
|
|
513
|
+
owner: Account
|
|
514
|
+
rentEpoch: BigInt
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
# A vote account
|
|
518
|
+
type VoteAccountDataAuthorizedVoter {
|
|
519
|
+
authorizedVoter: Account
|
|
520
|
+
epoch: BigInt
|
|
521
|
+
}
|
|
522
|
+
type VoteAccountDataEpochCredit {
|
|
523
|
+
credits: String
|
|
524
|
+
epoch: BigInt
|
|
525
|
+
previousCredits: String
|
|
526
|
+
}
|
|
527
|
+
type VoteAccountDataLastTimestamp {
|
|
528
|
+
slot: BigInt
|
|
529
|
+
timestamp: BigInt
|
|
530
|
+
}
|
|
531
|
+
type VoteAccountDataVote {
|
|
532
|
+
confirmationCount: Int
|
|
533
|
+
slot: BigInt
|
|
534
|
+
}
|
|
535
|
+
type VoteAccountData {
|
|
536
|
+
authorizedVoters: [VoteAccountDataAuthorizedVoter]
|
|
537
|
+
authorizedWithdrawer: Account
|
|
538
|
+
commission: Int
|
|
539
|
+
epochCredits: [VoteAccountDataEpochCredit]
|
|
540
|
+
lastTimestamp: VoteAccountDataLastTimestamp
|
|
541
|
+
node: Account
|
|
542
|
+
priorVoters: [String]
|
|
543
|
+
rootSlot: BigInt
|
|
544
|
+
votes: [VoteAccountDataVote]
|
|
545
|
+
}
|
|
546
|
+
type VoteAccount implements Account & AccountJsonParsed {
|
|
547
|
+
address: String
|
|
548
|
+
data: VoteAccountData
|
|
549
|
+
encoding: String
|
|
550
|
+
executable: Boolean
|
|
551
|
+
lamports: BigInt
|
|
552
|
+
meta: JsonParsedAccountMeta
|
|
553
|
+
owner: Account
|
|
554
|
+
rentEpoch: BigInt
|
|
555
|
+
}
|
|
556
|
+
`
|
|
557
|
+
);
|
|
558
|
+
var accountResolvers = {
|
|
559
|
+
Account: {
|
|
560
|
+
__resolveType(account) {
|
|
561
|
+
if (account.encoding === "base58") {
|
|
562
|
+
return "AccountBase58";
|
|
257
563
|
}
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
};
|
|
261
|
-
var memoisedCommitmentInputType;
|
|
262
|
-
var commitmentInputType = () => {
|
|
263
|
-
if (!memoisedCommitmentInputType)
|
|
264
|
-
memoisedCommitmentInputType = new GraphQLEnumType({
|
|
265
|
-
name: "Commitment",
|
|
266
|
-
values: {
|
|
267
|
-
confirmed: {
|
|
268
|
-
value: "confirmed"
|
|
269
|
-
},
|
|
270
|
-
finalized: {
|
|
271
|
-
value: "finalized"
|
|
272
|
-
},
|
|
273
|
-
processed: {
|
|
274
|
-
value: "processed"
|
|
275
|
-
}
|
|
564
|
+
if (account.encoding === "base64") {
|
|
565
|
+
return "AccountBase64";
|
|
276
566
|
}
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
};
|
|
280
|
-
var memoisedDataSliceInputType;
|
|
281
|
-
var dataSliceInputType = () => {
|
|
282
|
-
if (!memoisedDataSliceInputType)
|
|
283
|
-
memoisedDataSliceInputType = new GraphQLInputObjectType({
|
|
284
|
-
fields: {
|
|
285
|
-
length: number(),
|
|
286
|
-
offset: number()
|
|
287
|
-
},
|
|
288
|
-
name: "DataSliceConfig"
|
|
289
|
-
});
|
|
290
|
-
return memoisedDataSliceInputType;
|
|
291
|
-
};
|
|
292
|
-
var memoisedMaxSupportedTransactionVersionInputType;
|
|
293
|
-
var maxSupportedTransactionVersionInputType = () => {
|
|
294
|
-
if (!memoisedMaxSupportedTransactionVersionInputType)
|
|
295
|
-
memoisedMaxSupportedTransactionVersionInputType = new GraphQLEnumType({
|
|
296
|
-
name: "MaxSupportedTransactionVersion",
|
|
297
|
-
values: {
|
|
298
|
-
legacy: {
|
|
299
|
-
value: "legacy"
|
|
300
|
-
},
|
|
301
|
-
zero: {
|
|
302
|
-
value: "0"
|
|
303
|
-
}
|
|
567
|
+
if (account.encoding === "base64+zstd") {
|
|
568
|
+
return "AccountBase64Zstd";
|
|
304
569
|
}
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
var memoisedProgramAccountFilterInputType;
|
|
309
|
-
var programAccountFilterInputType = () => {
|
|
310
|
-
if (!memoisedProgramAccountFilterInputType)
|
|
311
|
-
memoisedProgramAccountFilterInputType = new GraphQLInputObjectType({
|
|
312
|
-
fields: {
|
|
313
|
-
bytes: bigint(),
|
|
314
|
-
dataSize: bigint(),
|
|
315
|
-
encoding: string(),
|
|
316
|
-
offset: bigint()
|
|
317
|
-
},
|
|
318
|
-
name: "ProgramAccountFilter"
|
|
319
|
-
});
|
|
320
|
-
return memoisedProgramAccountFilterInputType;
|
|
321
|
-
};
|
|
322
|
-
var memoisedTransactionEncodingInputType;
|
|
323
|
-
var transactionEncodingInputType = () => {
|
|
324
|
-
if (!memoisedTransactionEncodingInputType)
|
|
325
|
-
memoisedTransactionEncodingInputType = new GraphQLEnumType({
|
|
326
|
-
name: "TransactionEncoding",
|
|
327
|
-
values: {
|
|
328
|
-
base58: {
|
|
329
|
-
value: "base58"
|
|
330
|
-
},
|
|
331
|
-
base64: {
|
|
332
|
-
value: "base64"
|
|
333
|
-
},
|
|
334
|
-
json: {
|
|
335
|
-
value: "json"
|
|
336
|
-
},
|
|
337
|
-
jsonParsed: {
|
|
338
|
-
value: "jsonParsed"
|
|
570
|
+
if (account.encoding === "jsonParsed") {
|
|
571
|
+
if (account.meta.program === "nonce") {
|
|
572
|
+
return "NonceAccount";
|
|
339
573
|
}
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
return memoisedTransactionEncodingInputType;
|
|
343
|
-
};
|
|
344
|
-
var memoisedTokenAmountType;
|
|
345
|
-
var tokenAmountType = () => {
|
|
346
|
-
if (!memoisedTokenAmountType) {
|
|
347
|
-
memoisedTokenAmountType = new GraphQLObjectType({
|
|
348
|
-
fields: {
|
|
349
|
-
amount: string(),
|
|
350
|
-
decimals: number(),
|
|
351
|
-
uiAmount: bigint(),
|
|
352
|
-
uiAmountString: string()
|
|
353
|
-
},
|
|
354
|
-
name: "TokenAmount"
|
|
355
|
-
});
|
|
356
|
-
}
|
|
357
|
-
return memoisedTokenAmountType;
|
|
358
|
-
};
|
|
359
|
-
var memoisedAccountInterfaceFields;
|
|
360
|
-
var accountInterfaceFields = () => {
|
|
361
|
-
if (!memoisedAccountInterfaceFields) {
|
|
362
|
-
memoisedAccountInterfaceFields = {
|
|
363
|
-
address: string(),
|
|
364
|
-
encoding: string(),
|
|
365
|
-
executable: boolean(),
|
|
366
|
-
lamports: bigint(),
|
|
367
|
-
rentEpoch: bigint()
|
|
368
|
-
};
|
|
369
|
-
}
|
|
370
|
-
return memoisedAccountInterfaceFields;
|
|
371
|
-
};
|
|
372
|
-
var memoisedAccountInterface;
|
|
373
|
-
var accountInterface = () => {
|
|
374
|
-
if (!memoisedAccountInterface) {
|
|
375
|
-
memoisedAccountInterface = new GraphQLInterfaceType({
|
|
376
|
-
description: "A Solana account",
|
|
377
|
-
fields: () => ({
|
|
378
|
-
...accountInterfaceFields(),
|
|
379
|
-
owner: type(accountInterface())
|
|
380
|
-
}),
|
|
381
|
-
name: "Account",
|
|
382
|
-
resolveType(account) {
|
|
383
|
-
if (account.encoding === "base58") {
|
|
384
|
-
return "AccountBase58";
|
|
574
|
+
if (account.meta.type === "mint" && account.meta.program === "spl-token") {
|
|
575
|
+
return "MintAccount";
|
|
385
576
|
}
|
|
386
|
-
if (account.
|
|
387
|
-
return "
|
|
577
|
+
if (account.meta.type === "account" && account.meta.program === "spl-token") {
|
|
578
|
+
return "TokenAccount";
|
|
388
579
|
}
|
|
389
|
-
if (account.
|
|
390
|
-
return "
|
|
580
|
+
if (account.meta.program === "stake") {
|
|
581
|
+
return "StakeAccount";
|
|
391
582
|
}
|
|
392
|
-
if (account.
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
return "TokenAccount";
|
|
398
|
-
}
|
|
399
|
-
if (account.data.program === "nonce") {
|
|
400
|
-
return "NonceAccount";
|
|
401
|
-
}
|
|
402
|
-
if (account.data.program === "stake") {
|
|
403
|
-
return "StakeAccount";
|
|
404
|
-
}
|
|
405
|
-
if (account.data.parsed.type === "vote" && account.data.program === "vote") {
|
|
406
|
-
return "VoteAccount";
|
|
407
|
-
}
|
|
408
|
-
if (account.data.parsed.type === "lookupTable" && account.data.program === "address-lookup-table") {
|
|
409
|
-
return "LookupTableAccount";
|
|
410
|
-
}
|
|
583
|
+
if (account.meta.type === "vote" && account.meta.program === "vote") {
|
|
584
|
+
return "VoteAccount";
|
|
585
|
+
}
|
|
586
|
+
if (account.meta.type === "lookupTable" && account.meta.program === "address-lookup-table") {
|
|
587
|
+
return "LookupTableAccount";
|
|
411
588
|
}
|
|
412
|
-
return "AccountBase64";
|
|
413
589
|
}
|
|
414
|
-
|
|
590
|
+
return "AccountBase64";
|
|
591
|
+
}
|
|
592
|
+
},
|
|
593
|
+
AccountBase58: {
|
|
594
|
+
owner: resolveAccount("owner")
|
|
595
|
+
},
|
|
596
|
+
AccountBase64: {
|
|
597
|
+
owner: resolveAccount("owner")
|
|
598
|
+
},
|
|
599
|
+
AccountBase64Zstd: {
|
|
600
|
+
owner: resolveAccount("owner")
|
|
601
|
+
},
|
|
602
|
+
NonceAccountData: {
|
|
603
|
+
authority: resolveAccount("authority")
|
|
604
|
+
},
|
|
605
|
+
NonceAccount: {
|
|
606
|
+
owner: resolveAccount("owner")
|
|
607
|
+
},
|
|
608
|
+
LookupTableAccountData: {
|
|
609
|
+
authority: resolveAccount("authority")
|
|
610
|
+
},
|
|
611
|
+
LookupTableAccount: {
|
|
612
|
+
owner: resolveAccount("owner")
|
|
613
|
+
},
|
|
614
|
+
MintAccountData: {
|
|
615
|
+
freezeAuthority: resolveAccount("freezeAuthority"),
|
|
616
|
+
mintAuthority: resolveAccount("mintAuthority")
|
|
617
|
+
},
|
|
618
|
+
MintAccount: {
|
|
619
|
+
owner: resolveAccount("owner")
|
|
620
|
+
},
|
|
621
|
+
TokenAccountData: {
|
|
622
|
+
mint: resolveAccount("mint"),
|
|
623
|
+
owner: resolveAccount("owner")
|
|
624
|
+
},
|
|
625
|
+
TokenAccount: {
|
|
626
|
+
owner: resolveAccount("owner")
|
|
627
|
+
},
|
|
628
|
+
StakeAccountDataMetaAuthorized: {
|
|
629
|
+
staker: resolveAccount("staker"),
|
|
630
|
+
withdrawer: resolveAccount("withdrawer")
|
|
631
|
+
},
|
|
632
|
+
StakeAccountDataMetaLockup: {
|
|
633
|
+
custodian: resolveAccount("custodian")
|
|
634
|
+
},
|
|
635
|
+
StakeAccountDataStakeDelegation: {
|
|
636
|
+
voter: resolveAccount("voter")
|
|
637
|
+
},
|
|
638
|
+
StakeAccount: {
|
|
639
|
+
owner: resolveAccount("owner")
|
|
640
|
+
},
|
|
641
|
+
VoteAccountDataAuthorizedVoter: {
|
|
642
|
+
authorizedVoter: resolveAccount("authorizedVoter")
|
|
643
|
+
},
|
|
644
|
+
VoteAccountData: {
|
|
645
|
+
authorizedWithdrawer: resolveAccount("authorizedWithdrawer"),
|
|
646
|
+
node: resolveAccount("nodePubkey")
|
|
647
|
+
},
|
|
648
|
+
VoteAccount: {
|
|
649
|
+
owner: resolveAccount("owner")
|
|
415
650
|
}
|
|
416
|
-
return memoisedAccountInterface;
|
|
417
651
|
};
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
}
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
652
|
+
|
|
653
|
+
// src/schema/block.ts
|
|
654
|
+
var blockTypeDefs = (
|
|
655
|
+
/* GraphQL */
|
|
656
|
+
`
|
|
657
|
+
type TransactionMetaForAccounts {
|
|
658
|
+
err: String
|
|
659
|
+
fee: BigInt
|
|
660
|
+
postBalances: [BigInt]
|
|
661
|
+
postTokenBalances: [TokenBalance]
|
|
662
|
+
preBalances: [BigInt]
|
|
663
|
+
preTokenBalances: [TokenBalance]
|
|
664
|
+
status: TransactionStatus
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
type TransactionDataForAccounts {
|
|
668
|
+
accountKeys: [String]
|
|
669
|
+
signatures: [String]
|
|
670
|
+
}
|
|
671
|
+
|
|
672
|
+
type BlockTransactionAccounts {
|
|
673
|
+
meta: TransactionMetaForAccounts
|
|
674
|
+
data: TransactionDataForAccounts
|
|
675
|
+
version: String
|
|
676
|
+
}
|
|
677
|
+
|
|
678
|
+
# Block interface
|
|
679
|
+
interface Block {
|
|
680
|
+
blockhash: String
|
|
681
|
+
blockHeight: BigInt
|
|
682
|
+
blockTime: Int
|
|
683
|
+
parentSlot: BigInt
|
|
684
|
+
previousBlockhash: String
|
|
685
|
+
rewards: [Reward]
|
|
686
|
+
transactionDetails: String
|
|
687
|
+
}
|
|
688
|
+
|
|
689
|
+
# A block with account transaction details
|
|
690
|
+
type BlockWithAccounts implements Block {
|
|
691
|
+
blockhash: String
|
|
692
|
+
blockHeight: BigInt
|
|
693
|
+
blockTime: Int
|
|
694
|
+
parentSlot: BigInt
|
|
695
|
+
previousBlockhash: String
|
|
696
|
+
rewards: [Reward]
|
|
697
|
+
transactions: [BlockTransactionAccounts]
|
|
698
|
+
transactionDetails: String
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
# A block with full transaction details
|
|
702
|
+
type BlockWithFull implements Block {
|
|
703
|
+
blockhash: String
|
|
704
|
+
blockHeight: BigInt
|
|
705
|
+
blockTime: Int
|
|
706
|
+
parentSlot: BigInt
|
|
707
|
+
previousBlockhash: String
|
|
708
|
+
rewards: [Reward]
|
|
709
|
+
transactions: [Transaction]
|
|
710
|
+
transactionDetails: String
|
|
711
|
+
}
|
|
712
|
+
|
|
713
|
+
# A block with none transaction details
|
|
714
|
+
type BlockWithNone implements Block {
|
|
715
|
+
blockhash: String
|
|
716
|
+
blockHeight: BigInt
|
|
717
|
+
blockTime: Int
|
|
718
|
+
parentSlot: BigInt
|
|
719
|
+
previousBlockhash: String
|
|
720
|
+
rewards: [Reward]
|
|
721
|
+
transactionDetails: String
|
|
722
|
+
}
|
|
723
|
+
|
|
724
|
+
# A block with signature transaction details
|
|
725
|
+
type BlockWithSignatures implements Block {
|
|
726
|
+
blockhash: String
|
|
727
|
+
blockHeight: BigInt
|
|
728
|
+
blockTime: Int
|
|
729
|
+
parentSlot: BigInt
|
|
730
|
+
previousBlockhash: String
|
|
731
|
+
rewards: [Reward]
|
|
732
|
+
signatures: [String]
|
|
733
|
+
transactionDetails: String
|
|
734
|
+
}
|
|
735
|
+
`
|
|
736
|
+
);
|
|
737
|
+
var blockResolvers = {
|
|
738
|
+
Block: {
|
|
739
|
+
__resolveType(block) {
|
|
740
|
+
switch (block.transactionDetails) {
|
|
741
|
+
case "accounts":
|
|
742
|
+
return "BlockWithAccounts";
|
|
743
|
+
case "none":
|
|
744
|
+
return "BlockWithNone";
|
|
745
|
+
case "signatures":
|
|
746
|
+
return "BlockWithSignatures";
|
|
747
|
+
default:
|
|
748
|
+
return "BlockWithFull";
|
|
749
|
+
}
|
|
750
|
+
}
|
|
751
|
+
}
|
|
450
752
|
};
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
753
|
+
|
|
754
|
+
// src/schema/common/inputs.ts
|
|
755
|
+
var inputTypeDefs = (
|
|
756
|
+
/* GraphQL */
|
|
757
|
+
`
|
|
758
|
+
enum AccountEncoding {
|
|
759
|
+
base58
|
|
760
|
+
base64
|
|
761
|
+
base64Zstd
|
|
762
|
+
jsonParsed
|
|
763
|
+
}
|
|
764
|
+
|
|
765
|
+
enum BlockTransactionDetails {
|
|
766
|
+
accounts
|
|
767
|
+
full
|
|
768
|
+
none
|
|
769
|
+
signatures
|
|
770
|
+
}
|
|
771
|
+
|
|
772
|
+
enum Commitment {
|
|
773
|
+
confirmed
|
|
774
|
+
finalized
|
|
775
|
+
processed
|
|
776
|
+
}
|
|
777
|
+
|
|
778
|
+
input DataSlice {
|
|
779
|
+
offset: Int
|
|
780
|
+
length: Int
|
|
781
|
+
}
|
|
782
|
+
|
|
783
|
+
input ProgramAccountsFilter {
|
|
784
|
+
bytes: BigInt
|
|
785
|
+
dataSize: BigInt
|
|
786
|
+
encoding: String
|
|
787
|
+
offset: BigInt
|
|
788
|
+
}
|
|
789
|
+
|
|
790
|
+
enum TransactionEncoding {
|
|
791
|
+
base58
|
|
792
|
+
base64
|
|
793
|
+
jsonParsed
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
enum TransactionVersion {
|
|
797
|
+
legacy
|
|
798
|
+
zero
|
|
799
|
+
}
|
|
800
|
+
`
|
|
801
|
+
);
|
|
802
|
+
var inputResolvers = {
|
|
803
|
+
AccountEncoding: {
|
|
804
|
+
base64Zstd: "base64+zstd"
|
|
805
|
+
},
|
|
806
|
+
TransactionVersion: {
|
|
807
|
+
zero: 0
|
|
808
|
+
}
|
|
456
809
|
};
|
|
457
|
-
var
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
})
|
|
479
|
-
})
|
|
480
|
-
);
|
|
481
|
-
return memoisedAccountNonceAccount;
|
|
482
|
-
};
|
|
483
|
-
var memoisedAccountLookupTable;
|
|
484
|
-
var accountLookupTable = () => {
|
|
485
|
-
if (!memoisedAccountLookupTable)
|
|
486
|
-
memoisedAccountLookupTable = accountType(
|
|
487
|
-
"LookupTableAccount",
|
|
488
|
-
"An address lookup table account",
|
|
489
|
-
accountDataJsonParsed("LookupTable", {
|
|
490
|
-
addresses: list(string()),
|
|
491
|
-
authority: string(),
|
|
492
|
-
deactivationSlot: string(),
|
|
493
|
-
lastExtendedSlot: string(),
|
|
494
|
-
lastExtendedSlotStartIndex: number()
|
|
495
|
-
})
|
|
496
|
-
);
|
|
497
|
-
return memoisedAccountLookupTable;
|
|
498
|
-
};
|
|
499
|
-
var memoisedAccountMint;
|
|
500
|
-
var accountMint = () => {
|
|
501
|
-
if (!memoisedAccountMint)
|
|
502
|
-
memoisedAccountMint = accountType(
|
|
503
|
-
"MintAccount",
|
|
504
|
-
"An SPL mint",
|
|
505
|
-
accountDataJsonParsed("Mint", {
|
|
506
|
-
decimals: number(),
|
|
507
|
-
freezeAuthority: string(),
|
|
508
|
-
isInitialized: boolean(),
|
|
509
|
-
mintAuthority: string(),
|
|
510
|
-
supply: string()
|
|
511
|
-
})
|
|
512
|
-
);
|
|
513
|
-
return memoisedAccountMint;
|
|
514
|
-
};
|
|
515
|
-
var memoisedAccountTokenAccount;
|
|
516
|
-
var accountTokenAccount = () => {
|
|
517
|
-
if (!memoisedAccountTokenAccount)
|
|
518
|
-
memoisedAccountTokenAccount = accountType(
|
|
519
|
-
"TokenAccount",
|
|
520
|
-
"An SPL token account",
|
|
521
|
-
accountDataJsonParsed("TokenAccount", {
|
|
522
|
-
isNative: boolean(),
|
|
523
|
-
mint: string(),
|
|
524
|
-
owner: string(),
|
|
525
|
-
state: string(),
|
|
526
|
-
tokenAmount: type(tokenAmountType())
|
|
527
|
-
})
|
|
528
|
-
);
|
|
529
|
-
return memoisedAccountTokenAccount;
|
|
530
|
-
};
|
|
531
|
-
var memoisedAccountStakeAccount;
|
|
532
|
-
var accountStakeAccount = () => {
|
|
533
|
-
if (!memoisedAccountStakeAccount)
|
|
534
|
-
memoisedAccountStakeAccount = accountType(
|
|
535
|
-
"StakeAccount",
|
|
536
|
-
"A stake account",
|
|
537
|
-
accountDataJsonParsed("Stake", {
|
|
538
|
-
meta: object("StakeMeta", {
|
|
539
|
-
authorized: object("StakeMetaAuthorized", {
|
|
540
|
-
staker: string(),
|
|
541
|
-
withdrawer: string()
|
|
542
|
-
}),
|
|
543
|
-
lockup: object("StakeMetaLockup", {
|
|
544
|
-
custodian: string(),
|
|
545
|
-
epoch: bigint(),
|
|
546
|
-
unixTimestamp: bigint()
|
|
547
|
-
}),
|
|
548
|
-
rentExemptReserve: string()
|
|
549
|
-
}),
|
|
550
|
-
stake: object("StakeStake", {
|
|
551
|
-
creditsObserved: bigint(),
|
|
552
|
-
delegation: object("StakeStakeDelegation", {
|
|
553
|
-
activationEpoch: bigint(),
|
|
554
|
-
deactivationEpoch: bigint(),
|
|
555
|
-
stake: string(),
|
|
556
|
-
voter: string(),
|
|
557
|
-
warmupCooldownRate: number()
|
|
558
|
-
})
|
|
559
|
-
})
|
|
560
|
-
})
|
|
561
|
-
);
|
|
562
|
-
return memoisedAccountStakeAccount;
|
|
563
|
-
};
|
|
564
|
-
var memoisedAccountVoteAccount;
|
|
565
|
-
var accountVoteAccount = () => {
|
|
566
|
-
if (!memoisedAccountVoteAccount)
|
|
567
|
-
memoisedAccountVoteAccount = accountType(
|
|
568
|
-
"VoteAccount",
|
|
569
|
-
"A vote account",
|
|
570
|
-
accountDataJsonParsed("Vote", {
|
|
571
|
-
authorizedVoters: list(
|
|
572
|
-
object("VoteAuthorizedVoter", {
|
|
573
|
-
authorizedVoter: string(),
|
|
574
|
-
epoch: bigint()
|
|
575
|
-
})
|
|
576
|
-
),
|
|
577
|
-
authorizedWithdrawer: string(),
|
|
578
|
-
commission: number(),
|
|
579
|
-
epochCredits: list(
|
|
580
|
-
object("VoteEpochCredits", {
|
|
581
|
-
credits: string(),
|
|
582
|
-
epoch: bigint(),
|
|
583
|
-
previousCredits: string()
|
|
584
|
-
})
|
|
585
|
-
),
|
|
586
|
-
lastTimestamp: object("VoteLastTimestamp", {
|
|
587
|
-
slot: bigint(),
|
|
588
|
-
timestamp: bigint()
|
|
589
|
-
}),
|
|
590
|
-
nodePubkey: string(),
|
|
591
|
-
priorVoters: list(string()),
|
|
592
|
-
rootSlot: bigint(),
|
|
593
|
-
votes: list(
|
|
594
|
-
object("VoteVote", {
|
|
595
|
-
confirmationCount: number(),
|
|
596
|
-
slot: bigint()
|
|
597
|
-
})
|
|
598
|
-
)
|
|
599
|
-
})
|
|
600
|
-
);
|
|
601
|
-
return memoisedAccountVoteAccount;
|
|
810
|
+
var scalarTypeDefs = (
|
|
811
|
+
/* GraphQL */
|
|
812
|
+
`
|
|
813
|
+
scalar BigInt
|
|
814
|
+
`
|
|
815
|
+
);
|
|
816
|
+
var scalarResolvers = {
|
|
817
|
+
BigInt: {
|
|
818
|
+
__parseLiteral(ast) {
|
|
819
|
+
if (ast.kind === Kind.STRING) {
|
|
820
|
+
return BigInt(ast.value);
|
|
821
|
+
}
|
|
822
|
+
return null;
|
|
823
|
+
},
|
|
824
|
+
__parseValue(value) {
|
|
825
|
+
return BigInt(value);
|
|
826
|
+
},
|
|
827
|
+
__serialize(value) {
|
|
828
|
+
return BigInt(value);
|
|
829
|
+
}
|
|
830
|
+
}
|
|
602
831
|
};
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
832
|
+
|
|
833
|
+
// src/schema/common/types.ts
|
|
834
|
+
var commonTypeDefs = (
|
|
835
|
+
/* GraphQL */
|
|
836
|
+
`
|
|
837
|
+
type ReturnData {
|
|
838
|
+
data: String
|
|
839
|
+
programId: String
|
|
840
|
+
}
|
|
841
|
+
|
|
842
|
+
type Reward {
|
|
843
|
+
commission: Int
|
|
844
|
+
lamports: BigInt
|
|
845
|
+
postBalance: BigInt
|
|
846
|
+
pubkey: String
|
|
847
|
+
rewardType: String
|
|
848
|
+
}
|
|
849
|
+
|
|
850
|
+
type TokenAmount {
|
|
851
|
+
amount: String
|
|
852
|
+
decimals: Int
|
|
853
|
+
uiAmount: BigInt
|
|
854
|
+
uiAmountString: String
|
|
855
|
+
}
|
|
856
|
+
|
|
857
|
+
type TokenBalance {
|
|
858
|
+
accountIndex: Int
|
|
859
|
+
mint: Account
|
|
860
|
+
owner: Account
|
|
861
|
+
programId: String
|
|
862
|
+
uiTokenAmount: TokenAmount
|
|
863
|
+
}
|
|
864
|
+
`
|
|
865
|
+
);
|
|
866
|
+
var commonResolvers = {
|
|
867
|
+
TokenBalance: {
|
|
868
|
+
mint: resolveAccount("mint"),
|
|
869
|
+
owner: resolveAccount("owner")
|
|
870
|
+
}
|
|
618
871
|
};
|
|
619
872
|
|
|
620
|
-
// src/schema/
|
|
621
|
-
var
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
}
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
}
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
}
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
}
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
873
|
+
// src/schema/instruction.ts
|
|
874
|
+
var instructionTypeDefs = (
|
|
875
|
+
/* GraphQL */
|
|
876
|
+
`
|
|
877
|
+
type JsonParsedInstructionMeta {
|
|
878
|
+
program: String
|
|
879
|
+
type: String
|
|
880
|
+
}
|
|
881
|
+
|
|
882
|
+
# Transaction instruction interface
|
|
883
|
+
interface TransactionInstruction {
|
|
884
|
+
programId: String
|
|
885
|
+
}
|
|
886
|
+
|
|
887
|
+
# Generic transaction instruction
|
|
888
|
+
type GenericInstruction implements TransactionInstruction {
|
|
889
|
+
accounts: [String]
|
|
890
|
+
data: String
|
|
891
|
+
programId: String
|
|
892
|
+
}
|
|
893
|
+
|
|
894
|
+
# AddressLookupTable: CreateLookupTable
|
|
895
|
+
type CreateLookupTableInstructionData {
|
|
896
|
+
bumpSeed: BigInt # FIXME:*
|
|
897
|
+
lookupTableAccount: Account
|
|
898
|
+
lookupTableAuthority: Account
|
|
899
|
+
payerAccount: Account
|
|
900
|
+
recentSlot: BigInt
|
|
901
|
+
systemProgram: Account
|
|
902
|
+
}
|
|
903
|
+
type CreateLookupTableInstruction implements TransactionInstruction {
|
|
904
|
+
data: CreateLookupTableInstructionData
|
|
905
|
+
meta: JsonParsedInstructionMeta
|
|
906
|
+
programId: String
|
|
907
|
+
}
|
|
908
|
+
|
|
909
|
+
# AddressLookupTable: ExtendLookupTable
|
|
910
|
+
type ExtendLookupTableInstructionData {
|
|
911
|
+
lookupTableAccount: Account
|
|
912
|
+
lookupTableAuthority: Account
|
|
913
|
+
newAddresses: [String]
|
|
914
|
+
payerAccount: Account
|
|
915
|
+
systemProgram: Account
|
|
916
|
+
}
|
|
917
|
+
type ExtendLookupTableInstruction implements TransactionInstruction {
|
|
918
|
+
data: ExtendLookupTableInstructionData
|
|
919
|
+
meta: JsonParsedInstructionMeta
|
|
920
|
+
programId: String
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
# AddressLookupTable: FreezeLookupTable
|
|
924
|
+
type FreezeLookupTableInstructionData {
|
|
925
|
+
lookupTableAccount: Account
|
|
926
|
+
lookupTableAuthority: Account
|
|
927
|
+
}
|
|
928
|
+
type FreezeLookupTableInstruction implements TransactionInstruction {
|
|
929
|
+
data: FreezeLookupTableInstructionData
|
|
930
|
+
meta: JsonParsedInstructionMeta
|
|
931
|
+
programId: String
|
|
932
|
+
}
|
|
933
|
+
|
|
934
|
+
# AddressLookupTable: DeactivateLookupTable
|
|
935
|
+
type DeactivateLookupTableInstructionData {
|
|
936
|
+
lookupTableAccount: Account
|
|
937
|
+
lookupTableAuthority: Account
|
|
938
|
+
}
|
|
939
|
+
type DeactivateLookupTableInstruction implements TransactionInstruction {
|
|
940
|
+
data: DeactivateLookupTableInstructionData
|
|
941
|
+
meta: JsonParsedInstructionMeta
|
|
942
|
+
programId: String
|
|
943
|
+
}
|
|
944
|
+
|
|
945
|
+
# AddressLookupTable: CloseLookupTable
|
|
946
|
+
type CloseLookupTableInstructionData {
|
|
947
|
+
lookupTableAccount: Account
|
|
948
|
+
lookupTableAuthority: Account
|
|
949
|
+
recipient: Account
|
|
950
|
+
}
|
|
951
|
+
type CloseLookupTableInstruction implements TransactionInstruction {
|
|
952
|
+
data: CloseLookupTableInstructionData
|
|
953
|
+
meta: JsonParsedInstructionMeta
|
|
954
|
+
programId: String
|
|
955
|
+
}
|
|
956
|
+
|
|
957
|
+
# BpfLoader: Write
|
|
958
|
+
type BpfLoaderWriteInstructionData {
|
|
959
|
+
account: Account
|
|
960
|
+
bytes: String
|
|
961
|
+
offset: BigInt # FIXME:*
|
|
962
|
+
}
|
|
963
|
+
type BpfLoaderWriteInstruction implements TransactionInstruction {
|
|
964
|
+
data: BpfLoaderWriteInstructionData
|
|
965
|
+
meta: JsonParsedInstructionMeta
|
|
966
|
+
programId: String
|
|
967
|
+
}
|
|
968
|
+
|
|
969
|
+
# BpfLoader: Finalize
|
|
970
|
+
type BpfLoaderFinalizeInstructionData {
|
|
971
|
+
account: Account
|
|
972
|
+
}
|
|
973
|
+
type BpfLoaderFinalizeInstruction implements TransactionInstruction {
|
|
974
|
+
data: BpfLoaderFinalizeInstructionData
|
|
975
|
+
meta: JsonParsedInstructionMeta
|
|
976
|
+
programId: String
|
|
977
|
+
}
|
|
978
|
+
|
|
979
|
+
# BpfUpgradeableLoader: InitializeBuffer
|
|
980
|
+
type BpfUpgradeableLoaderInitializeBufferInstructionData {
|
|
981
|
+
account: Account
|
|
982
|
+
}
|
|
983
|
+
type BpfUpgradeableLoaderInitializeBufferInstruction implements TransactionInstruction {
|
|
984
|
+
data: BpfUpgradeableLoaderInitializeBufferInstructionData
|
|
985
|
+
meta: JsonParsedInstructionMeta
|
|
986
|
+
programId: String
|
|
987
|
+
}
|
|
988
|
+
|
|
989
|
+
# BpfUpgradeableLoader: Write
|
|
990
|
+
type BpfUpgradeableLoaderWriteInstructionData {
|
|
991
|
+
account: Account
|
|
992
|
+
authority: Account
|
|
993
|
+
bytes: String
|
|
994
|
+
offset: BigInt # FIXME:*
|
|
995
|
+
}
|
|
996
|
+
type BpfUpgradeableLoaderWriteInstruction implements TransactionInstruction {
|
|
997
|
+
data: BpfUpgradeableLoaderWriteInstructionData
|
|
998
|
+
meta: JsonParsedInstructionMeta
|
|
999
|
+
programId: String
|
|
1000
|
+
}
|
|
1001
|
+
|
|
1002
|
+
# BpfUpgradeableLoader: DeployWithMaxDataLen
|
|
1003
|
+
type BpfUpgradeableLoaderDeployWithMaxDataLenInstructionData {
|
|
1004
|
+
authority: Account
|
|
1005
|
+
bufferAccount: Account
|
|
1006
|
+
clockSysvar: String
|
|
1007
|
+
maxDataLen: BigInt
|
|
1008
|
+
payerAccount: Account
|
|
1009
|
+
programAccount: Account
|
|
1010
|
+
programDataAccount: Account
|
|
1011
|
+
rentSysvar: String
|
|
1012
|
+
}
|
|
1013
|
+
type BpfUpgradeableLoaderDeployWithMaxDataLenInstruction implements TransactionInstruction {
|
|
1014
|
+
data: BpfUpgradeableLoaderDeployWithMaxDataLenInstructionData
|
|
1015
|
+
meta: JsonParsedInstructionMeta
|
|
1016
|
+
programId: String
|
|
1017
|
+
}
|
|
1018
|
+
|
|
1019
|
+
# BpfUpgradeableLoader: Upgrade
|
|
1020
|
+
type BpfUpgradeableLoaderUpgradeInstructionData {
|
|
1021
|
+
authority: Account
|
|
1022
|
+
bufferAccount: Account
|
|
1023
|
+
clockSysvar: String
|
|
1024
|
+
programAccount: Account
|
|
1025
|
+
programDataAccount: Account
|
|
1026
|
+
rentSysvar: String
|
|
1027
|
+
spillAccount: Account
|
|
1028
|
+
}
|
|
1029
|
+
type BpfUpgradeableLoaderUpgradeInstruction implements TransactionInstruction {
|
|
1030
|
+
data: BpfUpgradeableLoaderUpgradeInstructionData
|
|
1031
|
+
meta: JsonParsedInstructionMeta
|
|
1032
|
+
programId: String
|
|
1033
|
+
}
|
|
1034
|
+
|
|
1035
|
+
# BpfUpgradeableLoader: SetAuthority
|
|
1036
|
+
type BpfUpgradeableLoaderSetAuthorityInstructionData {
|
|
1037
|
+
account: Account
|
|
1038
|
+
authority: Account
|
|
1039
|
+
newAuthority: Account
|
|
1040
|
+
}
|
|
1041
|
+
type BpfUpgradeableLoaderSetAuthorityInstruction implements TransactionInstruction {
|
|
1042
|
+
data: BpfUpgradeableLoaderSetAuthorityInstructionData
|
|
1043
|
+
meta: JsonParsedInstructionMeta
|
|
1044
|
+
programId: String
|
|
1045
|
+
}
|
|
1046
|
+
|
|
1047
|
+
# BpfUpgradeableLoader: SetAuthorityChecked
|
|
1048
|
+
type BpfUpgradeableLoaderSetAuthorityCheckedInstructionData {
|
|
1049
|
+
account: Account
|
|
1050
|
+
authority: Account
|
|
1051
|
+
newAuthority: Account
|
|
1052
|
+
}
|
|
1053
|
+
type BpfUpgradeableLoaderSetAuthorityCheckedInstruction implements TransactionInstruction {
|
|
1054
|
+
data: BpfUpgradeableLoaderSetAuthorityCheckedInstructionData
|
|
1055
|
+
meta: JsonParsedInstructionMeta
|
|
1056
|
+
programId: String
|
|
1057
|
+
}
|
|
1058
|
+
|
|
1059
|
+
# BpfUpgradeableLoader: Close
|
|
1060
|
+
type BpfUpgradeableLoaderCloseInstructionData {
|
|
1061
|
+
account: Account
|
|
1062
|
+
authority: Account
|
|
1063
|
+
programAccount: Account
|
|
1064
|
+
recipient: Account
|
|
1065
|
+
}
|
|
1066
|
+
type BpfUpgradeableLoaderCloseInstruction implements TransactionInstruction {
|
|
1067
|
+
data: BpfUpgradeableLoaderCloseInstructionData
|
|
1068
|
+
meta: JsonParsedInstructionMeta
|
|
1069
|
+
programId: String
|
|
1070
|
+
}
|
|
1071
|
+
|
|
1072
|
+
# BpfUpgradeableLoader: ExtendProgram
|
|
1073
|
+
type BpfUpgradeableLoaderExtendProgramInstructionData {
|
|
1074
|
+
additionalBytes: BigInt
|
|
1075
|
+
payerAccount: Account
|
|
1076
|
+
programAccount: Account
|
|
1077
|
+
programDataAccount: Account
|
|
1078
|
+
systemProgram: Account
|
|
1079
|
+
}
|
|
1080
|
+
type BpfUpgradeableLoaderExtendProgramInstruction implements TransactionInstruction {
|
|
1081
|
+
data: BpfUpgradeableLoaderExtendProgramInstructionData
|
|
1082
|
+
meta: JsonParsedInstructionMeta
|
|
1083
|
+
programId: String
|
|
1084
|
+
}
|
|
1085
|
+
|
|
1086
|
+
# SplAssociatedTokenAccount: Create
|
|
1087
|
+
type SplAssociatedTokenCreateInstructionData {
|
|
1088
|
+
account: Account
|
|
1089
|
+
mint: String
|
|
1090
|
+
source: Account
|
|
1091
|
+
systemProgram: Account
|
|
1092
|
+
tokenProgram: Account
|
|
1093
|
+
wallet: Account
|
|
1094
|
+
}
|
|
1095
|
+
type SplAssociatedTokenCreateInstruction implements TransactionInstruction {
|
|
1096
|
+
data: SplAssociatedTokenCreateInstructionData
|
|
1097
|
+
meta: JsonParsedInstructionMeta
|
|
1098
|
+
programId: String
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
# SplAssociatedTokenAccount: CreateIdempotent
|
|
1102
|
+
type SplAssociatedTokenCreateIdempotentInstructionData {
|
|
1103
|
+
account: Account
|
|
1104
|
+
mint: String
|
|
1105
|
+
source: Account
|
|
1106
|
+
systemProgram: Account
|
|
1107
|
+
tokenProgram: Account
|
|
1108
|
+
wallet: Account
|
|
1109
|
+
}
|
|
1110
|
+
type SplAssociatedTokenCreateIdempotentInstruction implements TransactionInstruction {
|
|
1111
|
+
data: SplAssociatedTokenCreateIdempotentInstructionData
|
|
1112
|
+
meta: JsonParsedInstructionMeta
|
|
1113
|
+
programId: String
|
|
1114
|
+
}
|
|
1115
|
+
|
|
1116
|
+
# SplAssociatedTokenAccount: RecoverNested
|
|
1117
|
+
type SplAssociatedTokenRecoverNestedInstructionData {
|
|
1118
|
+
destination: Account
|
|
1119
|
+
nestedMint: Account
|
|
1120
|
+
nestedOwner: Account
|
|
1121
|
+
nestedSource: Account
|
|
1122
|
+
ownerMint: Account
|
|
1123
|
+
tokenProgram: Account
|
|
1124
|
+
wallet: Account
|
|
1125
|
+
}
|
|
1126
|
+
type SplAssociatedTokenRecoverNestedInstruction implements TransactionInstruction {
|
|
1127
|
+
data: SplAssociatedTokenRecoverNestedInstructionData
|
|
1128
|
+
meta: JsonParsedInstructionMeta
|
|
1129
|
+
programId: String
|
|
1130
|
+
}
|
|
1131
|
+
|
|
1132
|
+
# SplMemo
|
|
1133
|
+
type SplMemoInstructionData {
|
|
1134
|
+
data: String
|
|
1135
|
+
}
|
|
1136
|
+
type SplMemoInstruction implements TransactionInstruction {
|
|
1137
|
+
data: SplMemoInstructionData
|
|
1138
|
+
meta: JsonParsedInstructionMeta
|
|
1139
|
+
programId: String
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
# SplToken: InitializeMint
|
|
1143
|
+
type SplTokenInitializeMintInstructionData {
|
|
1144
|
+
decimals: BigInt # FIXME:*
|
|
1145
|
+
freezeAuthority: Account
|
|
1146
|
+
mint: Account
|
|
1147
|
+
mintAuthority: Account
|
|
1148
|
+
rentSysvar: String
|
|
1149
|
+
}
|
|
1150
|
+
type SplTokenInitializeMintInstruction implements TransactionInstruction {
|
|
1151
|
+
data: SplTokenInitializeMintInstructionData
|
|
1152
|
+
meta: JsonParsedInstructionMeta
|
|
1153
|
+
programId: String
|
|
1154
|
+
}
|
|
1155
|
+
|
|
1156
|
+
# SplToken: InitializeMint2
|
|
1157
|
+
type SplTokenInitializeMint2InstructionData {
|
|
1158
|
+
decimals: BigInt # FIXME:*
|
|
1159
|
+
freezeAuthority: Account
|
|
1160
|
+
mint: Account
|
|
1161
|
+
mintAuthority: Account
|
|
1162
|
+
}
|
|
1163
|
+
type SplTokenInitializeMint2Instruction implements TransactionInstruction {
|
|
1164
|
+
data: SplTokenInitializeMint2InstructionData
|
|
1165
|
+
meta: JsonParsedInstructionMeta
|
|
1166
|
+
programId: String
|
|
1167
|
+
}
|
|
1168
|
+
|
|
1169
|
+
# SplToken: InitializeAccount
|
|
1170
|
+
type SplTokenInitializeAccountInstructionData {
|
|
1171
|
+
account: Account
|
|
1172
|
+
mint: Account
|
|
1173
|
+
owner: Account
|
|
1174
|
+
rentSysvar: String
|
|
1175
|
+
}
|
|
1176
|
+
type SplTokenInitializeAccountInstruction implements TransactionInstruction {
|
|
1177
|
+
data: SplTokenInitializeAccountInstructionData
|
|
1178
|
+
meta: JsonParsedInstructionMeta
|
|
1179
|
+
programId: String
|
|
1180
|
+
}
|
|
1181
|
+
|
|
1182
|
+
# SplToken: InitializeAccount2
|
|
1183
|
+
type SplTokenInitializeAccount2InstructionData {
|
|
1184
|
+
account: Account
|
|
1185
|
+
mint: Account
|
|
1186
|
+
owner: Account
|
|
1187
|
+
rentSysvar: String
|
|
1188
|
+
}
|
|
1189
|
+
type SplTokenInitializeAccount2Instruction implements TransactionInstruction {
|
|
1190
|
+
data: SplTokenInitializeAccount2InstructionData
|
|
1191
|
+
meta: JsonParsedInstructionMeta
|
|
1192
|
+
programId: String
|
|
1193
|
+
}
|
|
1194
|
+
|
|
1195
|
+
# SplToken: InitializeAccount3
|
|
1196
|
+
type SplTokenInitializeAccount3InstructionData {
|
|
1197
|
+
account: Account
|
|
1198
|
+
mint: Account
|
|
1199
|
+
owner: Account
|
|
1200
|
+
}
|
|
1201
|
+
type SplTokenInitializeAccount3Instruction implements TransactionInstruction {
|
|
1202
|
+
data: SplTokenInitializeAccount3InstructionData
|
|
1203
|
+
meta: JsonParsedInstructionMeta
|
|
1204
|
+
programId: String
|
|
1205
|
+
}
|
|
1206
|
+
|
|
1207
|
+
# SplToken: InitializeMultisig
|
|
1208
|
+
type SplTokenInitializeMultisigInstructionData {
|
|
1209
|
+
m: BigInt # FIXME:*
|
|
1210
|
+
multisig: Account
|
|
1211
|
+
rentSysvar: String
|
|
1212
|
+
signers: [String]
|
|
1213
|
+
}
|
|
1214
|
+
type SplTokenInitializeMultisigInstruction implements TransactionInstruction {
|
|
1215
|
+
data: SplTokenInitializeMultisigInstructionData
|
|
1216
|
+
meta: JsonParsedInstructionMeta
|
|
1217
|
+
programId: String
|
|
1218
|
+
}
|
|
1219
|
+
|
|
1220
|
+
# SplToken: InitializeMultisig2
|
|
1221
|
+
type SplTokenInitializeMultisig2InstructionData {
|
|
1222
|
+
m: BigInt # FIXME:*
|
|
1223
|
+
multisig: Account
|
|
1224
|
+
signers: [String]
|
|
1225
|
+
}
|
|
1226
|
+
type SplTokenInitializeMultisig2Instruction implements TransactionInstruction {
|
|
1227
|
+
data: SplTokenInitializeMultisig2InstructionData
|
|
1228
|
+
meta: JsonParsedInstructionMeta
|
|
1229
|
+
programId: String
|
|
1230
|
+
}
|
|
1231
|
+
|
|
1232
|
+
# SplToken: Transfer
|
|
1233
|
+
type SplTokenTransferInstructionData {
|
|
1234
|
+
amount: String
|
|
1235
|
+
authority: Account
|
|
1236
|
+
destination: Account
|
|
1237
|
+
multisigAuthority: Account
|
|
1238
|
+
source: Account
|
|
1239
|
+
}
|
|
1240
|
+
type SplTokenTransferInstruction implements TransactionInstruction {
|
|
1241
|
+
data: SplTokenTransferInstructionData
|
|
1242
|
+
meta: JsonParsedInstructionMeta
|
|
1243
|
+
programId: String
|
|
1244
|
+
}
|
|
1245
|
+
|
|
1246
|
+
# SplToken: Approve
|
|
1247
|
+
type SplTokenApproveInstructionData {
|
|
1248
|
+
amount: String
|
|
1249
|
+
delegate: Account
|
|
1250
|
+
multisigOwner: Account
|
|
1251
|
+
owner: Account
|
|
1252
|
+
source: Account
|
|
1253
|
+
}
|
|
1254
|
+
type SplTokenApproveInstruction implements TransactionInstruction {
|
|
1255
|
+
data: SplTokenApproveInstructionData
|
|
1256
|
+
meta: JsonParsedInstructionMeta
|
|
1257
|
+
programId: String
|
|
1258
|
+
}
|
|
1259
|
+
|
|
1260
|
+
# SplToken: Revoke
|
|
1261
|
+
type SplTokenRevokeInstructionData {
|
|
1262
|
+
multisigOwner: Account
|
|
1263
|
+
owner: Account
|
|
1264
|
+
source: Account
|
|
1265
|
+
}
|
|
1266
|
+
type SplTokenRevokeInstruction implements TransactionInstruction {
|
|
1267
|
+
data: SplTokenRevokeInstructionData
|
|
1268
|
+
meta: JsonParsedInstructionMeta
|
|
1269
|
+
programId: String
|
|
1270
|
+
}
|
|
1271
|
+
|
|
1272
|
+
# SplToken: SetAuthority
|
|
1273
|
+
type SplTokenSetAuthorityInstructionData {
|
|
1274
|
+
authority: Account
|
|
1275
|
+
authorityType: String
|
|
1276
|
+
multisigAuthority: Account
|
|
1277
|
+
newAuthority: Account
|
|
1278
|
+
}
|
|
1279
|
+
type SplTokenSetAuthorityInstruction implements TransactionInstruction {
|
|
1280
|
+
data: SplTokenSetAuthorityInstructionData
|
|
1281
|
+
meta: JsonParsedInstructionMeta
|
|
1282
|
+
programId: String
|
|
1283
|
+
}
|
|
1284
|
+
|
|
1285
|
+
# SplToken: MintTo
|
|
1286
|
+
type SplTokenMintToInstructionData {
|
|
1287
|
+
account: Account
|
|
1288
|
+
amount: String
|
|
1289
|
+
authority: Account
|
|
1290
|
+
mint: Account
|
|
1291
|
+
mintAuthority: Account
|
|
1292
|
+
multisigMintAuthority: Account
|
|
1293
|
+
}
|
|
1294
|
+
type SplTokenMintToInstruction implements TransactionInstruction {
|
|
1295
|
+
data: SplTokenMintToInstructionData
|
|
1296
|
+
meta: JsonParsedInstructionMeta
|
|
1297
|
+
programId: String
|
|
1298
|
+
}
|
|
1299
|
+
|
|
1300
|
+
# SplToken: Burn
|
|
1301
|
+
type SplTokenBurnInstructionData {
|
|
1302
|
+
account: Account
|
|
1303
|
+
amount: String
|
|
1304
|
+
authority: Account
|
|
1305
|
+
mint: Account
|
|
1306
|
+
multisigAuthority: Account
|
|
1307
|
+
}
|
|
1308
|
+
type SplTokenBurnInstruction implements TransactionInstruction {
|
|
1309
|
+
data: SplTokenBurnInstructionData
|
|
1310
|
+
meta: JsonParsedInstructionMeta
|
|
1311
|
+
programId: String
|
|
1312
|
+
}
|
|
1313
|
+
|
|
1314
|
+
# SplToken: CloseAccount
|
|
1315
|
+
type SplTokenCloseAccountInstructionData {
|
|
1316
|
+
account: Account
|
|
1317
|
+
destination: Account
|
|
1318
|
+
multisigOwner: Account
|
|
1319
|
+
owner: Account
|
|
1320
|
+
}
|
|
1321
|
+
type SplTokenCloseAccountInstruction implements TransactionInstruction {
|
|
1322
|
+
data: SplTokenCloseAccountInstructionData
|
|
1323
|
+
meta: JsonParsedInstructionMeta
|
|
1324
|
+
programId: String
|
|
1325
|
+
}
|
|
1326
|
+
|
|
1327
|
+
# SplToken: FreezeAccount
|
|
1328
|
+
type SplTokenFreezeAccountInstructionData {
|
|
1329
|
+
account: Account
|
|
1330
|
+
freezeAuthority: Account
|
|
1331
|
+
mint: Account
|
|
1332
|
+
multisigFreezeAuthority: Account
|
|
1333
|
+
}
|
|
1334
|
+
type SplTokenFreezeAccountInstruction implements TransactionInstruction {
|
|
1335
|
+
data: SplTokenFreezeAccountInstructionData
|
|
1336
|
+
meta: JsonParsedInstructionMeta
|
|
1337
|
+
programId: String
|
|
1338
|
+
}
|
|
1339
|
+
|
|
1340
|
+
# SplToken: ThawAccount
|
|
1341
|
+
type SplTokenThawAccountInstructionData {
|
|
1342
|
+
account: Account
|
|
1343
|
+
freezeAuthority: Account
|
|
1344
|
+
mint: Account
|
|
1345
|
+
multisigFreezeAuthority: Account
|
|
1346
|
+
}
|
|
1347
|
+
type SplTokenThawAccountInstruction implements TransactionInstruction {
|
|
1348
|
+
data: SplTokenThawAccountInstructionData
|
|
1349
|
+
meta: JsonParsedInstructionMeta
|
|
1350
|
+
programId: String
|
|
1351
|
+
}
|
|
1352
|
+
|
|
1353
|
+
# SplToken: TransferChecked
|
|
1354
|
+
type SplTokenTransferCheckedInstructionData {
|
|
1355
|
+
amount: String
|
|
1356
|
+
authority: Account
|
|
1357
|
+
decimals: BigInt # FIXME:*
|
|
1358
|
+
destination: Account
|
|
1359
|
+
mint: Account
|
|
1360
|
+
multisigAuthority: Account
|
|
1361
|
+
source: Account
|
|
1362
|
+
tokenAmount: String
|
|
1363
|
+
}
|
|
1364
|
+
type SplTokenTransferCheckedInstruction implements TransactionInstruction {
|
|
1365
|
+
data: SplTokenTransferCheckedInstructionData
|
|
1366
|
+
meta: JsonParsedInstructionMeta
|
|
1367
|
+
programId: String
|
|
1368
|
+
}
|
|
1369
|
+
|
|
1370
|
+
# SplToken: ApproveChecked
|
|
1371
|
+
type SplTokenApproveCheckedInstructionData {
|
|
1372
|
+
delegate: Account
|
|
1373
|
+
mint: Account
|
|
1374
|
+
multisigOwner: Account
|
|
1375
|
+
owner: Account
|
|
1376
|
+
source: Account
|
|
1377
|
+
tokenAmount: String
|
|
1378
|
+
}
|
|
1379
|
+
type SplTokenApproveCheckedInstruction implements TransactionInstruction {
|
|
1380
|
+
data: SplTokenApproveCheckedInstructionData
|
|
1381
|
+
meta: JsonParsedInstructionMeta
|
|
1382
|
+
programId: String
|
|
1383
|
+
}
|
|
1384
|
+
|
|
1385
|
+
# SplToken: MintToChecked
|
|
1386
|
+
type SplTokenMintToCheckedInstructionData {
|
|
1387
|
+
account: Account
|
|
1388
|
+
authority: Account
|
|
1389
|
+
mint: Account
|
|
1390
|
+
mintAuthority: Account
|
|
1391
|
+
multisigMintAuthority: Account
|
|
1392
|
+
tokenAmount: String
|
|
1393
|
+
}
|
|
1394
|
+
type SplTokenMintToCheckedInstruction implements TransactionInstruction {
|
|
1395
|
+
data: SplTokenMintToCheckedInstructionData
|
|
1396
|
+
meta: JsonParsedInstructionMeta
|
|
1397
|
+
programId: String
|
|
1398
|
+
}
|
|
1399
|
+
|
|
1400
|
+
# SplToken: BurnChecked
|
|
1401
|
+
type SplTokenBurnCheckedInstructionData {
|
|
1402
|
+
account: Account
|
|
1403
|
+
authority: Account
|
|
1404
|
+
mint: Account
|
|
1405
|
+
multisigAuthority: Account
|
|
1406
|
+
tokenAmount: String
|
|
1407
|
+
}
|
|
1408
|
+
type SplTokenBurnCheckedInstruction implements TransactionInstruction {
|
|
1409
|
+
data: SplTokenBurnCheckedInstructionData
|
|
1410
|
+
meta: JsonParsedInstructionMeta
|
|
1411
|
+
programId: String
|
|
1412
|
+
}
|
|
1413
|
+
|
|
1414
|
+
# SplToken: SyncNative
|
|
1415
|
+
type SplTokenSyncNativeInstructionData {
|
|
1416
|
+
account: Account
|
|
1417
|
+
}
|
|
1418
|
+
type SplTokenSyncNativeInstruction implements TransactionInstruction {
|
|
1419
|
+
data: SplTokenSyncNativeInstructionData
|
|
1420
|
+
meta: JsonParsedInstructionMeta
|
|
1421
|
+
programId: String
|
|
1422
|
+
}
|
|
1423
|
+
|
|
1424
|
+
# SplToken: GetAccountDataSize
|
|
1425
|
+
type SplTokenGetAccountDataSizeInstructionData {
|
|
1426
|
+
extensionTypes: [String]
|
|
1427
|
+
mint: Account
|
|
1428
|
+
}
|
|
1429
|
+
type SplTokenGetAccountDataSizeInstruction implements TransactionInstruction {
|
|
1430
|
+
data: SplTokenGetAccountDataSizeInstructionData
|
|
1431
|
+
meta: JsonParsedInstructionMeta
|
|
1432
|
+
programId: String
|
|
1433
|
+
}
|
|
1434
|
+
|
|
1435
|
+
# SplToken: InitializeImmutableOwner
|
|
1436
|
+
type SplTokenInitializeImmutableOwnerInstructionData {
|
|
1437
|
+
account: Account
|
|
1438
|
+
}
|
|
1439
|
+
type SplTokenInitializeImmutableOwnerInstruction implements TransactionInstruction {
|
|
1440
|
+
data: SplTokenInitializeImmutableOwnerInstructionData
|
|
1441
|
+
meta: JsonParsedInstructionMeta
|
|
1442
|
+
programId: String
|
|
1443
|
+
}
|
|
1444
|
+
|
|
1445
|
+
# SplToken: AmountToUiAmount
|
|
1446
|
+
type SplTokenAmountToUiAmountInstructionData {
|
|
1447
|
+
amount: String
|
|
1448
|
+
mint: Account
|
|
1449
|
+
}
|
|
1450
|
+
type SplTokenAmountToUiAmountInstruction implements TransactionInstruction {
|
|
1451
|
+
data: SplTokenAmountToUiAmountInstructionData
|
|
1452
|
+
meta: JsonParsedInstructionMeta
|
|
1453
|
+
programId: String
|
|
1454
|
+
}
|
|
1455
|
+
|
|
1456
|
+
# SplToken: UiAmountToAmount
|
|
1457
|
+
type SplTokenUiAmountToAmountInstructionData {
|
|
1458
|
+
mint: Account
|
|
1459
|
+
uiAmount: String
|
|
1460
|
+
}
|
|
1461
|
+
type SplTokenUiAmountToAmountInstruction implements TransactionInstruction {
|
|
1462
|
+
data: SplTokenUiAmountToAmountInstructionData
|
|
1463
|
+
meta: JsonParsedInstructionMeta
|
|
1464
|
+
programId: String
|
|
1465
|
+
}
|
|
1466
|
+
|
|
1467
|
+
# SplToken: InitializeMintCloseAuthority
|
|
1468
|
+
type SplTokenInitializeMintCloseAuthorityInstructionData {
|
|
1469
|
+
mint: Account
|
|
1470
|
+
newAuthority: Account
|
|
1471
|
+
}
|
|
1472
|
+
type SplTokenInitializeMintCloseAuthorityInstruction implements TransactionInstruction {
|
|
1473
|
+
data: SplTokenInitializeMintCloseAuthorityInstructionData
|
|
1474
|
+
meta: JsonParsedInstructionMeta
|
|
1475
|
+
programId: String
|
|
1476
|
+
}
|
|
1477
|
+
|
|
1478
|
+
# TODO: Extensions!
|
|
1479
|
+
# - TransferFeeExtension
|
|
1480
|
+
# - ConfidentialTransferFeeExtension
|
|
1481
|
+
# - DefaultAccountStateExtension
|
|
1482
|
+
# - Reallocate
|
|
1483
|
+
# - MemoTransferExtension
|
|
1484
|
+
# - CreateNativeMint
|
|
1485
|
+
# - InitializeNonTransferableMint
|
|
1486
|
+
# - InterestBearingMintExtension
|
|
1487
|
+
# - CpiGuardExtension
|
|
1488
|
+
# - InitializePermanentDelegate
|
|
1489
|
+
# - TransferHookExtension
|
|
1490
|
+
# - ConfidentialTransferFeeExtension
|
|
1491
|
+
# - WithdrawExcessLamports
|
|
1492
|
+
# - MetadataPointerExtension
|
|
1493
|
+
|
|
1494
|
+
type Lockup {
|
|
1495
|
+
custodian: Account
|
|
1496
|
+
epoch: BigInt
|
|
1497
|
+
unixTimestamp: BigInt
|
|
1498
|
+
}
|
|
1499
|
+
|
|
1500
|
+
# Stake: Initialize
|
|
1501
|
+
type StakeInitializeInstructionDataAuthorized {
|
|
1502
|
+
staker: Account
|
|
1503
|
+
withdrawer: Account
|
|
1504
|
+
}
|
|
1505
|
+
type StakeInitializeInstructionData {
|
|
1506
|
+
authorized: StakeInitializeInstructionDataAuthorized
|
|
1507
|
+
lockup: Lockup
|
|
1508
|
+
rentSysvar: String
|
|
1509
|
+
stakeAccount: Account
|
|
1510
|
+
}
|
|
1511
|
+
type StakeInitializeInstruction implements TransactionInstruction {
|
|
1512
|
+
data: StakeInitializeInstructionData
|
|
1513
|
+
meta: JsonParsedInstructionMeta
|
|
1514
|
+
programId: String
|
|
1515
|
+
}
|
|
1516
|
+
|
|
1517
|
+
# Stake: Authorize
|
|
1518
|
+
type StakeAuthorizeInstructionData {
|
|
1519
|
+
authority: Account
|
|
1520
|
+
authorityType: String
|
|
1521
|
+
clockSysvar: String
|
|
1522
|
+
custodian: Account
|
|
1523
|
+
newAuthority: Account
|
|
1524
|
+
stakeAccount: Account
|
|
1525
|
+
}
|
|
1526
|
+
type StakeAuthorizeInstruction implements TransactionInstruction {
|
|
1527
|
+
data: StakeAuthorizeInstructionData
|
|
1528
|
+
meta: JsonParsedInstructionMeta
|
|
1529
|
+
programId: String
|
|
1530
|
+
}
|
|
1531
|
+
|
|
1532
|
+
# Stake: DelegateStake
|
|
1533
|
+
type StakeDelegateStakeInstructionData {
|
|
1534
|
+
clockSysvar: String
|
|
1535
|
+
stakeAccount: Account
|
|
1536
|
+
stakeAuthority: Account
|
|
1537
|
+
stakeConfigAccount: Account
|
|
1538
|
+
stakeHistorySysvar: String
|
|
1539
|
+
voteAccount: Account
|
|
1540
|
+
}
|
|
1541
|
+
type StakeDelegateStakeInstruction implements TransactionInstruction {
|
|
1542
|
+
data: StakeDelegateStakeInstructionData
|
|
1543
|
+
meta: JsonParsedInstructionMeta
|
|
1544
|
+
programId: String
|
|
1545
|
+
}
|
|
1546
|
+
|
|
1547
|
+
# Stake: Split
|
|
1548
|
+
type StakeSplitInstructionData {
|
|
1549
|
+
lamports: BigInt
|
|
1550
|
+
newSplitAccount: Account
|
|
1551
|
+
stakeAccount: Account
|
|
1552
|
+
stakeAuthority: Account
|
|
1553
|
+
}
|
|
1554
|
+
type StakeSplitInstruction implements TransactionInstruction {
|
|
1555
|
+
data: StakeSplitInstructionData
|
|
1556
|
+
meta: JsonParsedInstructionMeta
|
|
1557
|
+
programId: String
|
|
1558
|
+
}
|
|
1559
|
+
|
|
1560
|
+
# Stake: Withdraw
|
|
1561
|
+
type StakeWithdrawInstructionData {
|
|
1562
|
+
clockSysvar: String
|
|
1563
|
+
destination: Account
|
|
1564
|
+
lamports: BigInt
|
|
1565
|
+
stakeAccount: Account
|
|
1566
|
+
withdrawAuthority: Account
|
|
1567
|
+
}
|
|
1568
|
+
type StakeWithdrawInstruction implements TransactionInstruction {
|
|
1569
|
+
data: StakeWithdrawInstructionData
|
|
1570
|
+
meta: JsonParsedInstructionMeta
|
|
1571
|
+
programId: String
|
|
1572
|
+
}
|
|
1573
|
+
|
|
1574
|
+
# Stake: Deactivate
|
|
1575
|
+
type StakeDeactivateInstructionData {
|
|
1576
|
+
clockSysvar: String
|
|
1577
|
+
stakeAccount: Account
|
|
1578
|
+
stakeAuthority: Account
|
|
1579
|
+
}
|
|
1580
|
+
type StakeDeactivateInstruction implements TransactionInstruction {
|
|
1581
|
+
data: StakeDeactivateInstructionData
|
|
1582
|
+
meta: JsonParsedInstructionMeta
|
|
1583
|
+
programId: String
|
|
1584
|
+
}
|
|
1585
|
+
|
|
1586
|
+
# Stake: SetLockup
|
|
1587
|
+
type StakeSetLockupInstructionData {
|
|
1588
|
+
custodian: Account
|
|
1589
|
+
lockup: Lockup
|
|
1590
|
+
stakeAccount: Account
|
|
1591
|
+
}
|
|
1592
|
+
type StakeSetLockupInstruction implements TransactionInstruction {
|
|
1593
|
+
data: StakeSetLockupInstructionData
|
|
1594
|
+
meta: JsonParsedInstructionMeta
|
|
1595
|
+
programId: String
|
|
1596
|
+
}
|
|
1597
|
+
|
|
1598
|
+
# Stake: Merge
|
|
1599
|
+
type StakeMergeInstructionData {
|
|
1600
|
+
clockSysvar: String
|
|
1601
|
+
destination: Account
|
|
1602
|
+
source: Account
|
|
1603
|
+
stakeAuthority: Account
|
|
1604
|
+
stakeHistorySysvar: String
|
|
1605
|
+
}
|
|
1606
|
+
type StakeMergeInstruction implements TransactionInstruction {
|
|
1607
|
+
data: StakeMergeInstructionData
|
|
1608
|
+
meta: JsonParsedInstructionMeta
|
|
1609
|
+
programId: String
|
|
1610
|
+
}
|
|
1611
|
+
|
|
1612
|
+
# Stake: AuthorizeWithSeed
|
|
1613
|
+
type StakeAuthorizeWithSeedInstructionData {
|
|
1614
|
+
authorityBase: Account
|
|
1615
|
+
authorityOwner: Account
|
|
1616
|
+
authoritySeed: String
|
|
1617
|
+
authorityType: String
|
|
1618
|
+
clockSysvar: String
|
|
1619
|
+
custodian: Account
|
|
1620
|
+
newAuthorized: Account
|
|
1621
|
+
stakeAccount: Account
|
|
1622
|
+
}
|
|
1623
|
+
type StakeAuthorizeWithSeedInstruction implements TransactionInstruction {
|
|
1624
|
+
data: StakeAuthorizeWithSeedInstructionData
|
|
1625
|
+
meta: JsonParsedInstructionMeta
|
|
1626
|
+
programId: String
|
|
1627
|
+
}
|
|
1628
|
+
|
|
1629
|
+
# Stake: InitializeChecked
|
|
1630
|
+
type StakeInitializeCheckedInstructionDataAuthorized {
|
|
1631
|
+
rentSysvar: String
|
|
1632
|
+
stakeAccount: Account
|
|
1633
|
+
staker: Account
|
|
1634
|
+
withdrawer: Account
|
|
1635
|
+
}
|
|
1636
|
+
type StakeInitializeCheckedInstruction implements TransactionInstruction {
|
|
1637
|
+
data: StakeInitializeCheckedInstructionDataAuthorized
|
|
1638
|
+
meta: JsonParsedInstructionMeta
|
|
1639
|
+
programId: String
|
|
1640
|
+
}
|
|
1641
|
+
|
|
1642
|
+
# Stake: AuthorizeChecked
|
|
1643
|
+
type StakeAuthorizeCheckedInstructionData {
|
|
1644
|
+
authority: Account
|
|
1645
|
+
authorityType: String
|
|
1646
|
+
clockSysvar: String
|
|
1647
|
+
custodian: Account
|
|
1648
|
+
newAuthority: Account
|
|
1649
|
+
stakeAccount: Account
|
|
1650
|
+
}
|
|
1651
|
+
type StakeAuthorizeCheckedInstruction implements TransactionInstruction {
|
|
1652
|
+
data: StakeAuthorizeCheckedInstructionData
|
|
1653
|
+
meta: JsonParsedInstructionMeta
|
|
1654
|
+
programId: String
|
|
1655
|
+
}
|
|
1656
|
+
|
|
1657
|
+
# Stake: AuthorizeCheckedWithSeed
|
|
1658
|
+
type StakeAuthorizeCheckedWithSeedInstructionData {
|
|
1659
|
+
authorityBase: Account
|
|
1660
|
+
authorityOwner: Account
|
|
1661
|
+
authoritySeed: String
|
|
1662
|
+
authorityType: String
|
|
1663
|
+
clockSysvar: String
|
|
1664
|
+
custodian: Account
|
|
1665
|
+
newAuthorized: Account
|
|
1666
|
+
stakeAccount: Account
|
|
1667
|
+
}
|
|
1668
|
+
type StakeAuthorizeCheckedWithSeedInstruction implements TransactionInstruction {
|
|
1669
|
+
data: StakeAuthorizeCheckedWithSeedInstructionData
|
|
1670
|
+
meta: JsonParsedInstructionMeta
|
|
1671
|
+
programId: String
|
|
1672
|
+
}
|
|
1673
|
+
|
|
1674
|
+
# Stake: SetLockupChecked
|
|
1675
|
+
type StakeSetLockupCheckedInstructionData {
|
|
1676
|
+
custodian: Account
|
|
1677
|
+
lockup: Lockup
|
|
1678
|
+
stakeAccount: Account
|
|
1679
|
+
}
|
|
1680
|
+
type StakeSetLockupCheckedInstruction implements TransactionInstruction {
|
|
1681
|
+
data: StakeSetLockupCheckedInstructionData
|
|
1682
|
+
meta: JsonParsedInstructionMeta
|
|
1683
|
+
programId: String
|
|
1684
|
+
}
|
|
1685
|
+
|
|
1686
|
+
# Stake: DeactivateDelinquent
|
|
1687
|
+
type StakeDeactivateDelinquentInstructionData {
|
|
1688
|
+
referenceVoteAccount: Account
|
|
1689
|
+
stakeAccount: Account
|
|
1690
|
+
voteAccount: Account
|
|
1691
|
+
}
|
|
1692
|
+
type StakeDeactivateDelinquentInstruction implements TransactionInstruction {
|
|
1693
|
+
data: StakeDeactivateDelinquentInstructionData
|
|
1694
|
+
meta: JsonParsedInstructionMeta
|
|
1695
|
+
programId: String
|
|
1696
|
+
}
|
|
1697
|
+
|
|
1698
|
+
# Stake: Redelegate
|
|
1699
|
+
type StakeRedelegateInstructionData {
|
|
1700
|
+
newStakeAccount: Account
|
|
1701
|
+
stakeAccount: Account
|
|
1702
|
+
stakeAuthority: Account
|
|
1703
|
+
stakeConfigAccount: Account
|
|
1704
|
+
voteAccount: Account
|
|
1705
|
+
}
|
|
1706
|
+
type StakeRedelegateInstruction implements TransactionInstruction {
|
|
1707
|
+
data: StakeRedelegateInstructionData
|
|
1708
|
+
meta: JsonParsedInstructionMeta
|
|
1709
|
+
programId: String
|
|
1710
|
+
}
|
|
1711
|
+
|
|
1712
|
+
# System: CreateAccount
|
|
1713
|
+
type CreateAccountInstructionData {
|
|
1714
|
+
lamports: BigInt
|
|
1715
|
+
newAccount: Account
|
|
1716
|
+
owner: Account
|
|
1717
|
+
source: Account
|
|
1718
|
+
space: BigInt
|
|
1719
|
+
}
|
|
1720
|
+
type CreateAccountInstruction implements TransactionInstruction {
|
|
1721
|
+
data: CreateAccountInstructionData
|
|
1722
|
+
meta: JsonParsedInstructionMeta
|
|
1723
|
+
programId: String
|
|
1724
|
+
}
|
|
1725
|
+
|
|
1726
|
+
# System: Assign
|
|
1727
|
+
type AssignInstructionData {
|
|
1728
|
+
account: Account
|
|
1729
|
+
owner: Account
|
|
1730
|
+
}
|
|
1731
|
+
type AssignInstruction implements TransactionInstruction {
|
|
1732
|
+
data: AssignInstructionData
|
|
1733
|
+
meta: JsonParsedInstructionMeta
|
|
1734
|
+
programId: String
|
|
1735
|
+
}
|
|
1736
|
+
|
|
1737
|
+
# System: Transfer
|
|
1738
|
+
type TransferInstructionData {
|
|
1739
|
+
destination: Account
|
|
1740
|
+
lamports: BigInt
|
|
1741
|
+
source: Account
|
|
1742
|
+
}
|
|
1743
|
+
type TransferInstruction implements TransactionInstruction {
|
|
1744
|
+
data: TransferInstructionData
|
|
1745
|
+
meta: JsonParsedInstructionMeta
|
|
1746
|
+
programId: String
|
|
1747
|
+
}
|
|
1748
|
+
|
|
1749
|
+
# System: CreateAccountWithSeed
|
|
1750
|
+
type CreateAccountWithSeedInstructionData {
|
|
1751
|
+
base: Account
|
|
1752
|
+
lamports: BigInt
|
|
1753
|
+
owner: Account
|
|
1754
|
+
seed: String
|
|
1755
|
+
space: BigInt
|
|
1756
|
+
}
|
|
1757
|
+
type CreateAccountWithSeedInstruction implements TransactionInstruction {
|
|
1758
|
+
data: CreateAccountWithSeedInstructionData
|
|
1759
|
+
meta: JsonParsedInstructionMeta
|
|
1760
|
+
programId: String
|
|
1761
|
+
}
|
|
1762
|
+
|
|
1763
|
+
# System: AdvanceNonceAccount
|
|
1764
|
+
type AdvanceNonceAccountInstructionData {
|
|
1765
|
+
nonceAccount: Account
|
|
1766
|
+
nonceAuthority: Account
|
|
1767
|
+
recentBlockhashesSysvar: String
|
|
1768
|
+
}
|
|
1769
|
+
type AdvanceNonceAccountInstruction implements TransactionInstruction {
|
|
1770
|
+
data: AdvanceNonceAccountInstructionData
|
|
1771
|
+
meta: JsonParsedInstructionMeta
|
|
1772
|
+
programId: String
|
|
1773
|
+
}
|
|
1774
|
+
|
|
1775
|
+
# System: WithdrawNonceAccount
|
|
1776
|
+
type WithdrawNonceAccountInstructionData {
|
|
1777
|
+
destination: Account
|
|
1778
|
+
lamports: BigInt
|
|
1779
|
+
nonceAccount: Account
|
|
1780
|
+
nonceAuthority: Account
|
|
1781
|
+
recentBlockhashesSysvar: String
|
|
1782
|
+
rentSysvar: String
|
|
1783
|
+
}
|
|
1784
|
+
type WithdrawNonceAccountInstruction implements TransactionInstruction {
|
|
1785
|
+
data: WithdrawNonceAccountInstructionData
|
|
1786
|
+
meta: JsonParsedInstructionMeta
|
|
1787
|
+
programId: String
|
|
1788
|
+
}
|
|
1789
|
+
|
|
1790
|
+
# System: InitializeNonceAccount
|
|
1791
|
+
type InitializeNonceAccountInstructionData {
|
|
1792
|
+
nonceAccount: Account
|
|
1793
|
+
nonceAuthority: Account
|
|
1794
|
+
recentBlockhashesSysvar: String
|
|
1795
|
+
rentSysvar: String
|
|
1796
|
+
}
|
|
1797
|
+
type InitializeNonceAccountInstruction implements TransactionInstruction {
|
|
1798
|
+
data: InitializeNonceAccountInstructionData
|
|
1799
|
+
meta: JsonParsedInstructionMeta
|
|
1800
|
+
programId: String
|
|
1801
|
+
}
|
|
1802
|
+
|
|
1803
|
+
# System: AuthorizeNonceAccount
|
|
1804
|
+
type AuthorizeNonceAccountInstructionData {
|
|
1805
|
+
newAuthorized: Account
|
|
1806
|
+
nonceAccount: Account
|
|
1807
|
+
nonceAuthority: Account
|
|
1808
|
+
}
|
|
1809
|
+
type AuthorizeNonceAccountInstruction implements TransactionInstruction {
|
|
1810
|
+
data: AuthorizeNonceAccountInstructionData
|
|
1811
|
+
meta: JsonParsedInstructionMeta
|
|
1812
|
+
programId: String
|
|
1813
|
+
}
|
|
1814
|
+
|
|
1815
|
+
# System: UpgradeNonceAccount
|
|
1816
|
+
type UpgradeNonceAccountInstructionData {
|
|
1817
|
+
nonceAccount: Account
|
|
1818
|
+
nonceAuthority: Account
|
|
1819
|
+
}
|
|
1820
|
+
type UpgradeNonceAccountInstruction implements TransactionInstruction {
|
|
1821
|
+
data: UpgradeNonceAccountInstructionData
|
|
1822
|
+
meta: JsonParsedInstructionMeta
|
|
1823
|
+
programId: String
|
|
1824
|
+
}
|
|
1825
|
+
|
|
1826
|
+
# System: Allocate
|
|
1827
|
+
type AllocateInstructionData {
|
|
1828
|
+
account: Account
|
|
1829
|
+
space: BigInt
|
|
1830
|
+
}
|
|
1831
|
+
type AllocateInstruction implements TransactionInstruction {
|
|
1832
|
+
data: AllocateInstructionData
|
|
1833
|
+
meta: JsonParsedInstructionMeta
|
|
1834
|
+
programId: String
|
|
1835
|
+
}
|
|
1836
|
+
|
|
1837
|
+
# System: AllocateWithSeed
|
|
1838
|
+
type AllocateWithSeedInstructionData {
|
|
1839
|
+
account: Account
|
|
1840
|
+
base: String
|
|
1841
|
+
owner: Account
|
|
1842
|
+
seed: String
|
|
1843
|
+
space: BigInt
|
|
1844
|
+
}
|
|
1845
|
+
type AllocateWithSeedInstruction implements TransactionInstruction {
|
|
1846
|
+
data: AllocateWithSeedInstructionData
|
|
1847
|
+
meta: JsonParsedInstructionMeta
|
|
1848
|
+
programId: String
|
|
1849
|
+
}
|
|
1850
|
+
|
|
1851
|
+
# System: AssignWithSeed
|
|
1852
|
+
type AssignWithSeedInstructionData {
|
|
1853
|
+
account: Account
|
|
1854
|
+
base: String
|
|
1855
|
+
owner: Account
|
|
1856
|
+
seed: String
|
|
1857
|
+
}
|
|
1858
|
+
type AssignWithSeedInstruction implements TransactionInstruction {
|
|
1859
|
+
data: AssignWithSeedInstructionData
|
|
1860
|
+
meta: JsonParsedInstructionMeta
|
|
1861
|
+
programId: String
|
|
1862
|
+
}
|
|
1863
|
+
|
|
1864
|
+
# System: TransferWithSeed
|
|
1865
|
+
type TransferWithSeedInstructionData {
|
|
1866
|
+
destination: Account
|
|
1867
|
+
lamports: BigInt
|
|
1868
|
+
source: Account
|
|
1869
|
+
sourceBase: String
|
|
1870
|
+
sourceOwner: Account
|
|
1871
|
+
sourceSeed: String
|
|
1872
|
+
}
|
|
1873
|
+
type TransferWithSeedInstruction implements TransactionInstruction {
|
|
1874
|
+
data: TransferWithSeedInstructionData
|
|
1875
|
+
meta: JsonParsedInstructionMeta
|
|
1876
|
+
programId: String
|
|
1877
|
+
}
|
|
1878
|
+
|
|
1879
|
+
# Vote: InitializeAccount
|
|
1880
|
+
type VoteInitializeAccountInstructionData {
|
|
1881
|
+
authorizedVoter: Account
|
|
1882
|
+
authorizedWithdrawer: Account
|
|
1883
|
+
clockSysvar: String
|
|
1884
|
+
commission: BigInt # FIXME:*
|
|
1885
|
+
node: Account
|
|
1886
|
+
rentSysvar: String
|
|
1887
|
+
voteAccount: Account
|
|
1888
|
+
}
|
|
1889
|
+
type VoteInitializeAccountInstruction implements TransactionInstruction {
|
|
1890
|
+
data: VoteInitializeAccountInstructionData
|
|
1891
|
+
meta: JsonParsedInstructionMeta
|
|
1892
|
+
programId: String
|
|
1893
|
+
}
|
|
1894
|
+
|
|
1895
|
+
# Vote: Authorize
|
|
1896
|
+
type VoteAuthorizeInstructionData {
|
|
1897
|
+
authority: Account
|
|
1898
|
+
authorityType: String
|
|
1899
|
+
clockSysvar: String
|
|
1900
|
+
newAuthority: Account
|
|
1901
|
+
voteAccount: Account
|
|
1902
|
+
}
|
|
1903
|
+
type VoteAuthorizeInstruction implements TransactionInstruction {
|
|
1904
|
+
data: VoteAuthorizeInstructionData
|
|
1905
|
+
meta: JsonParsedInstructionMeta
|
|
1906
|
+
programId: String
|
|
1907
|
+
}
|
|
1908
|
+
|
|
1909
|
+
# Vote: AuthorizeWithSeed
|
|
1910
|
+
type VoteAuthorizeWithSeedInstructionData {
|
|
1911
|
+
authorityBaseKey: String
|
|
1912
|
+
authorityOwner: Account
|
|
1913
|
+
authoritySeed: String
|
|
1914
|
+
authorityType: String
|
|
1915
|
+
clockSysvar: String
|
|
1916
|
+
newAuthority: Account
|
|
1917
|
+
voteAccount: Account
|
|
1918
|
+
}
|
|
1919
|
+
type VoteAuthorizeWithSeedInstruction implements TransactionInstruction {
|
|
1920
|
+
data: VoteAuthorizeWithSeedInstructionData
|
|
1921
|
+
meta: JsonParsedInstructionMeta
|
|
1922
|
+
programId: String
|
|
1923
|
+
}
|
|
1924
|
+
|
|
1925
|
+
# Vote: AuthorizeCheckedWithSeed
|
|
1926
|
+
type VoteAuthorizeCheckedWithSeedInstructionData {
|
|
1927
|
+
authorityBaseKey: String
|
|
1928
|
+
authorityOwner: Account
|
|
1929
|
+
authoritySeed: String
|
|
1930
|
+
authorityType: String
|
|
1931
|
+
clockSysvar: String
|
|
1932
|
+
newAuthority: Account
|
|
1933
|
+
voteAccount: Account
|
|
1934
|
+
}
|
|
1935
|
+
type VoteAuthorizeCheckedWithSeedInstruction implements TransactionInstruction {
|
|
1936
|
+
data: VoteAuthorizeCheckedWithSeedInstructionData
|
|
1937
|
+
meta: JsonParsedInstructionMeta
|
|
1938
|
+
programId: String
|
|
1939
|
+
}
|
|
1940
|
+
|
|
1941
|
+
type Vote {
|
|
1942
|
+
hash: String
|
|
1943
|
+
slots: [BigInt]
|
|
1944
|
+
timestamp: BigInt
|
|
1945
|
+
}
|
|
1946
|
+
|
|
1947
|
+
# Vote: Vote
|
|
1948
|
+
type VoteVoteInstructionData {
|
|
1949
|
+
clockSysvar: String
|
|
1950
|
+
slotHashesSysvar: String
|
|
1951
|
+
vote: Vote
|
|
1952
|
+
voteAccount: Account
|
|
1953
|
+
voteAuthority: Account
|
|
1954
|
+
}
|
|
1955
|
+
type VoteVoteInstruction implements TransactionInstruction {
|
|
1956
|
+
data: VoteVoteInstructionData
|
|
1957
|
+
meta: JsonParsedInstructionMeta
|
|
1958
|
+
programId: String
|
|
1959
|
+
}
|
|
1960
|
+
|
|
1961
|
+
type VoteStateUpdateLockout {
|
|
1962
|
+
confirmationCount: BigInt # FIXME:*
|
|
1963
|
+
slot: BigInt
|
|
1964
|
+
}
|
|
1965
|
+
type VoteStateUpdate {
|
|
1966
|
+
hash: String
|
|
1967
|
+
lockouts: [VoteStateUpdateLockout]
|
|
1968
|
+
root: BigInt
|
|
1969
|
+
timestamp: BigInt
|
|
1970
|
+
}
|
|
1971
|
+
|
|
1972
|
+
# Vote: UpdateVoteState
|
|
1973
|
+
type VoteUpdateVoteStateInstructionData {
|
|
1974
|
+
hash: String
|
|
1975
|
+
voteAccount: Account
|
|
1976
|
+
voteAuthority: Account
|
|
1977
|
+
voteStateUpdate: VoteStateUpdate
|
|
1978
|
+
}
|
|
1979
|
+
type VoteUpdateVoteStateInstruction implements TransactionInstruction {
|
|
1980
|
+
data: VoteUpdateVoteStateInstructionData
|
|
1981
|
+
meta: JsonParsedInstructionMeta
|
|
1982
|
+
programId: String
|
|
1983
|
+
}
|
|
1984
|
+
|
|
1985
|
+
# Vote: UpdateVoteStateSwitch
|
|
1986
|
+
type VoteUpdateVoteStateSwitchInstructionData {
|
|
1987
|
+
hash: String
|
|
1988
|
+
voteAccount: Account
|
|
1989
|
+
voteAuthority: Account
|
|
1990
|
+
voteStateUpdate: VoteStateUpdate
|
|
1991
|
+
}
|
|
1992
|
+
type VoteUpdateVoteStateSwitchInstruction implements TransactionInstruction {
|
|
1993
|
+
data: VoteUpdateVoteStateSwitchInstructionData
|
|
1994
|
+
meta: JsonParsedInstructionMeta
|
|
1995
|
+
programId: String
|
|
1996
|
+
}
|
|
1997
|
+
|
|
1998
|
+
# Vote: CompactUpdateVoteState
|
|
1999
|
+
type VoteCompactUpdateVoteStateInstructionData {
|
|
2000
|
+
hash: String
|
|
2001
|
+
voteAccount: Account
|
|
2002
|
+
voteAuthority: Account
|
|
2003
|
+
voteStateUpdate: VoteStateUpdate
|
|
2004
|
+
}
|
|
2005
|
+
type VoteCompactUpdateVoteStateInstruction implements TransactionInstruction {
|
|
2006
|
+
data: VoteCompactUpdateVoteStateInstructionData
|
|
2007
|
+
meta: JsonParsedInstructionMeta
|
|
2008
|
+
programId: String
|
|
2009
|
+
}
|
|
2010
|
+
|
|
2011
|
+
# Vote: CompactUpdateVoteStateSwitch
|
|
2012
|
+
type VoteCompactUpdateVoteStateSwitchInstructionData {
|
|
2013
|
+
hash: String
|
|
2014
|
+
voteAccount: Account
|
|
2015
|
+
voteAuthority: Account
|
|
2016
|
+
voteStateUpdate: VoteStateUpdate
|
|
2017
|
+
}
|
|
2018
|
+
type VoteCompactUpdateVoteStateSwitchInstruction implements TransactionInstruction {
|
|
2019
|
+
data: VoteCompactUpdateVoteStateSwitchInstructionData
|
|
2020
|
+
meta: JsonParsedInstructionMeta
|
|
2021
|
+
programId: String
|
|
2022
|
+
}
|
|
2023
|
+
|
|
2024
|
+
# Vote: Withdraw
|
|
2025
|
+
type VoteWithdrawInstructionData {
|
|
2026
|
+
destination: Account
|
|
2027
|
+
lamports: BigInt
|
|
2028
|
+
voteAccount: Account
|
|
2029
|
+
withdrawAuthority: Account
|
|
2030
|
+
}
|
|
2031
|
+
type VoteWithdrawInstruction implements TransactionInstruction {
|
|
2032
|
+
data: VoteWithdrawInstructionData
|
|
2033
|
+
meta: JsonParsedInstructionMeta
|
|
2034
|
+
programId: String
|
|
2035
|
+
}
|
|
2036
|
+
|
|
2037
|
+
# Vote: UpdateValidatorIdentity
|
|
2038
|
+
type VoteUpdateValidatorIdentityInstructionData {
|
|
2039
|
+
newValidatorIdentity: Account
|
|
2040
|
+
voteAccount: Account
|
|
2041
|
+
withdrawAuthority: Account
|
|
2042
|
+
}
|
|
2043
|
+
type VoteUpdateValidatorIdentityInstruction implements TransactionInstruction {
|
|
2044
|
+
data: VoteUpdateValidatorIdentityInstructionData
|
|
2045
|
+
meta: JsonParsedInstructionMeta
|
|
2046
|
+
programId: String
|
|
2047
|
+
}
|
|
2048
|
+
|
|
2049
|
+
# Vote: UpdateCommission
|
|
2050
|
+
type VoteUpdateCommissionInstructionData {
|
|
2051
|
+
commission: BigInt # FIXME:*
|
|
2052
|
+
voteAccount: Account
|
|
2053
|
+
withdrawAuthority: Account
|
|
2054
|
+
}
|
|
2055
|
+
type VoteUpdateCommissionInstruction implements TransactionInstruction {
|
|
2056
|
+
data: VoteUpdateCommissionInstructionData
|
|
2057
|
+
meta: JsonParsedInstructionMeta
|
|
2058
|
+
programId: String
|
|
2059
|
+
}
|
|
2060
|
+
|
|
2061
|
+
# Vote: VoteSwitch
|
|
2062
|
+
type VoteVoteSwitchInstructionData {
|
|
2063
|
+
clockSysvar: String
|
|
2064
|
+
hash: String
|
|
2065
|
+
slotHashesSysvar: String
|
|
2066
|
+
vote: Vote
|
|
2067
|
+
voteAccount: Account
|
|
2068
|
+
voteAuthority: Account
|
|
2069
|
+
}
|
|
2070
|
+
type VoteVoteSwitchInstruction implements TransactionInstruction {
|
|
2071
|
+
data: VoteVoteSwitchInstructionData
|
|
2072
|
+
meta: JsonParsedInstructionMeta
|
|
2073
|
+
programId: String
|
|
2074
|
+
}
|
|
2075
|
+
|
|
2076
|
+
# Vote: AuthorizeChecked
|
|
2077
|
+
type VoteAuthorizeCheckedInstructionData {
|
|
2078
|
+
authority: Account
|
|
2079
|
+
authorityType: String
|
|
2080
|
+
clockSysvar: String
|
|
2081
|
+
newAuthority: Account
|
|
2082
|
+
voteAccount: Account
|
|
2083
|
+
}
|
|
2084
|
+
type VoteAuthorizeCheckedInstruction implements TransactionInstruction {
|
|
2085
|
+
data: VoteAuthorizeCheckedInstructionData
|
|
2086
|
+
meta: JsonParsedInstructionMeta
|
|
2087
|
+
programId: String
|
|
2088
|
+
}
|
|
2089
|
+
`
|
|
2090
|
+
);
|
|
2091
|
+
var instructionResolvers = {
|
|
2092
|
+
TransactionInstruction: {
|
|
2093
|
+
__resolveType(instruction) {
|
|
2094
|
+
if (instruction.meta) {
|
|
2095
|
+
if (instruction.meta.program === "address-lookup-table") {
|
|
2096
|
+
if (instruction.meta.type === "createLookupTable") {
|
|
750
2097
|
return "CreateLookupTableInstruction";
|
|
751
2098
|
}
|
|
752
|
-
if (instruction.
|
|
2099
|
+
if (instruction.meta.type === "freezeLookupTable") {
|
|
753
2100
|
return "FreezeLookupTableInstruction";
|
|
754
2101
|
}
|
|
755
|
-
if (instruction.
|
|
2102
|
+
if (instruction.meta.type === "extendLookupTable") {
|
|
756
2103
|
return "ExtendLookupTableInstruction";
|
|
757
2104
|
}
|
|
758
|
-
if (instruction.
|
|
2105
|
+
if (instruction.meta.type === "deactivateLookupTable") {
|
|
759
2106
|
return "DeactivateLookupTableInstruction";
|
|
760
2107
|
}
|
|
761
|
-
if (instruction.
|
|
2108
|
+
if (instruction.meta.type === "closeLookupTable") {
|
|
762
2109
|
return "CloseLookupTableInstruction";
|
|
763
2110
|
}
|
|
764
2111
|
}
|
|
765
|
-
if (instruction.program === "bpf-loader") {
|
|
766
|
-
if (instruction.
|
|
2112
|
+
if (instruction.meta.program === "bpf-loader") {
|
|
2113
|
+
if (instruction.meta.type === "write") {
|
|
767
2114
|
return "BpfLoaderWriteInstruction";
|
|
768
2115
|
}
|
|
769
|
-
if (instruction.
|
|
2116
|
+
if (instruction.meta.type === "finalize") {
|
|
770
2117
|
return "BpfLoaderFinalizeInstruction";
|
|
771
2118
|
}
|
|
772
2119
|
}
|
|
773
|
-
if (instruction.program === "bpf-upgradeable-loader") {
|
|
774
|
-
if (instruction.
|
|
2120
|
+
if (instruction.meta.program === "bpf-upgradeable-loader") {
|
|
2121
|
+
if (instruction.meta.type === "initializeBuffer") {
|
|
775
2122
|
return "BpfUpgradeableLoaderInitializeBufferInstruction";
|
|
776
2123
|
}
|
|
777
|
-
if (instruction.
|
|
2124
|
+
if (instruction.meta.type === "write") {
|
|
778
2125
|
return "BpfUpgradeableLoaderWriteInstruction";
|
|
779
2126
|
}
|
|
780
|
-
if (instruction.
|
|
2127
|
+
if (instruction.meta.type === "deployWithMaxDataLen") {
|
|
781
2128
|
return "BpfUpgradeableLoaderDeployWithMaxDataLenInstruction";
|
|
782
2129
|
}
|
|
783
|
-
if (instruction.
|
|
2130
|
+
if (instruction.meta.type === "upgrade") {
|
|
784
2131
|
return "BpfUpgradeableLoaderUpgradeInstruction";
|
|
785
2132
|
}
|
|
786
|
-
if (instruction.
|
|
2133
|
+
if (instruction.meta.type === "setAuthority") {
|
|
787
2134
|
return "BpfUpgradeableLoaderSetAuthorityInstruction";
|
|
788
2135
|
}
|
|
789
|
-
if (instruction.
|
|
2136
|
+
if (instruction.meta.type === "setAuthorityChecked") {
|
|
790
2137
|
return "BpfUpgradeableLoaderSetAuthorityCheckedInstruction";
|
|
791
2138
|
}
|
|
792
|
-
if (instruction.
|
|
2139
|
+
if (instruction.meta.type === "close") {
|
|
793
2140
|
return "BpfUpgradeableLoaderCloseInstruction";
|
|
794
2141
|
}
|
|
795
|
-
if (instruction.
|
|
2142
|
+
if (instruction.meta.type === "extendProgram") {
|
|
796
2143
|
return "BpfUpgradeableLoaderExtendProgramInstruction";
|
|
797
2144
|
}
|
|
798
2145
|
}
|
|
799
|
-
if (instruction.program === "spl-associated-token-account") {
|
|
800
|
-
if (instruction.
|
|
2146
|
+
if (instruction.meta.program === "spl-associated-token-account") {
|
|
2147
|
+
if (instruction.meta.type === "create") {
|
|
801
2148
|
return "SplAssociatedTokenCreateInstruction";
|
|
802
2149
|
}
|
|
803
|
-
if (instruction.
|
|
2150
|
+
if (instruction.meta.type === "createIdempotent") {
|
|
804
2151
|
return "SplAssociatedTokenCreateIdempotentInstruction";
|
|
805
2152
|
}
|
|
806
|
-
if (instruction.
|
|
2153
|
+
if (instruction.meta.type === "recoverNested") {
|
|
807
2154
|
return "SplAssociatedTokenRecoverNestedInstruction";
|
|
808
2155
|
}
|
|
809
2156
|
}
|
|
810
|
-
if (instruction.program === "spl-memo") {
|
|
2157
|
+
if (instruction.meta.program === "spl-memo") {
|
|
811
2158
|
return "SplMemoInstruction";
|
|
812
2159
|
}
|
|
813
|
-
if (instruction.program === "spl-token") {
|
|
814
|
-
if (instruction.
|
|
2160
|
+
if (instruction.meta.program === "spl-token") {
|
|
2161
|
+
if (instruction.meta.type === "initializeMint") {
|
|
815
2162
|
return "SplTokenInitializeMintInstruction";
|
|
816
2163
|
}
|
|
817
|
-
if (instruction.
|
|
2164
|
+
if (instruction.meta.type === "initializeMint2") {
|
|
818
2165
|
return "SplTokenInitializeMint2Instruction";
|
|
819
2166
|
}
|
|
820
|
-
if (instruction.
|
|
2167
|
+
if (instruction.meta.type === "initializeAccount") {
|
|
821
2168
|
return "SplTokenInitializeAccountInstruction";
|
|
822
2169
|
}
|
|
823
|
-
if (instruction.
|
|
2170
|
+
if (instruction.meta.type === "initializeAccount2") {
|
|
824
2171
|
return "SplTokenInitializeAccount2Instruction";
|
|
825
2172
|
}
|
|
826
|
-
if (instruction.
|
|
2173
|
+
if (instruction.meta.type === "initializeAccount3") {
|
|
827
2174
|
return "SplTokenInitializeAccount3Instruction";
|
|
828
2175
|
}
|
|
829
|
-
if (instruction.
|
|
2176
|
+
if (instruction.meta.type === "initializeMultisig") {
|
|
830
2177
|
return "SplTokenInitializeMultisigInstruction";
|
|
831
2178
|
}
|
|
832
|
-
if (instruction.
|
|
2179
|
+
if (instruction.meta.type === "initializeMultisig2") {
|
|
833
2180
|
return "SplTokenInitializeMultisig2Instruction";
|
|
834
2181
|
}
|
|
835
|
-
if (instruction.
|
|
2182
|
+
if (instruction.meta.type === "transfer") {
|
|
836
2183
|
return "SplTokenTransferInstruction";
|
|
837
2184
|
}
|
|
838
|
-
if (instruction.
|
|
2185
|
+
if (instruction.meta.type === "approve") {
|
|
839
2186
|
return "SplTokenApproveInstruction";
|
|
840
2187
|
}
|
|
841
|
-
if (instruction.
|
|
2188
|
+
if (instruction.meta.type === "revoke") {
|
|
842
2189
|
return "SplTokenRevokeInstruction";
|
|
843
2190
|
}
|
|
844
|
-
if (instruction.
|
|
2191
|
+
if (instruction.meta.type === "setAuthority") {
|
|
845
2192
|
return "SplTokenSetAuthorityInstruction";
|
|
846
2193
|
}
|
|
847
|
-
if (instruction.
|
|
2194
|
+
if (instruction.meta.type === "mintTo") {
|
|
848
2195
|
return "SplTokenMintToInstruction";
|
|
849
2196
|
}
|
|
850
|
-
if (instruction.
|
|
2197
|
+
if (instruction.meta.type === "burn") {
|
|
851
2198
|
return "SplTokenBurnInstruction";
|
|
852
2199
|
}
|
|
853
|
-
if (instruction.
|
|
2200
|
+
if (instruction.meta.type === "closeAccount") {
|
|
854
2201
|
return "SplTokenCloseAccountInstruction";
|
|
855
2202
|
}
|
|
856
|
-
if (instruction.
|
|
2203
|
+
if (instruction.meta.type === "freezeAccount") {
|
|
857
2204
|
return "SplTokenFreezeAccountInstruction";
|
|
858
2205
|
}
|
|
859
|
-
if (instruction.
|
|
2206
|
+
if (instruction.meta.type === "thawAccount") {
|
|
860
2207
|
return "SplTokenThawAccountInstruction";
|
|
861
2208
|
}
|
|
862
|
-
if (instruction.
|
|
2209
|
+
if (instruction.meta.type === "transferChecked") {
|
|
863
2210
|
return "SplTokenTransferCheckedInstruction";
|
|
864
2211
|
}
|
|
865
|
-
if (instruction.
|
|
2212
|
+
if (instruction.meta.type === "approveChecked") {
|
|
866
2213
|
return "SplTokenApproveCheckedInstruction";
|
|
867
2214
|
}
|
|
868
|
-
if (instruction.
|
|
2215
|
+
if (instruction.meta.type === "mintToChecked") {
|
|
869
2216
|
return "SplTokenMintToCheckedInstruction";
|
|
870
2217
|
}
|
|
871
|
-
if (instruction.
|
|
2218
|
+
if (instruction.meta.type === "burnChecked") {
|
|
872
2219
|
return "SplTokenBurnCheckedInstruction";
|
|
873
2220
|
}
|
|
874
|
-
if (instruction.
|
|
2221
|
+
if (instruction.meta.type === "syncNative") {
|
|
875
2222
|
return "SplTokenSyncNativeInstruction";
|
|
876
2223
|
}
|
|
877
|
-
if (instruction.
|
|
2224
|
+
if (instruction.meta.type === "getAccountDataSize") {
|
|
878
2225
|
return "SplTokenGetAccountDataSizeInstruction";
|
|
879
2226
|
}
|
|
880
|
-
if (instruction.
|
|
2227
|
+
if (instruction.meta.type === "initializeImmutableOwner") {
|
|
881
2228
|
return "SplTokenInitializeImmutableOwnerInstruction";
|
|
882
2229
|
}
|
|
883
|
-
if (instruction.
|
|
2230
|
+
if (instruction.meta.type === "amountToUiAmount") {
|
|
884
2231
|
return "SplTokenAmountToUiAmountInstruction";
|
|
885
2232
|
}
|
|
886
|
-
if (instruction.
|
|
2233
|
+
if (instruction.meta.type === "uiAmountToAmount") {
|
|
887
2234
|
return "SplTokenUiAmountToAmountInstruction";
|
|
888
2235
|
}
|
|
889
|
-
if (instruction.
|
|
2236
|
+
if (instruction.meta.type === "initializeMintCloseAuthority") {
|
|
890
2237
|
return "SplTokenInitializeMintCloseAuthorityInstruction";
|
|
891
2238
|
}
|
|
892
2239
|
}
|
|
893
|
-
if (instruction.program === "stake") {
|
|
894
|
-
if (instruction.
|
|
2240
|
+
if (instruction.meta.program === "stake") {
|
|
2241
|
+
if (instruction.meta.type === "initialize") {
|
|
895
2242
|
return "StakeInitializeInstruction";
|
|
896
2243
|
}
|
|
897
|
-
if (instruction.
|
|
2244
|
+
if (instruction.meta.type === "authorize") {
|
|
898
2245
|
return "StakeAuthorizeInstruction";
|
|
899
2246
|
}
|
|
900
|
-
if (instruction.
|
|
2247
|
+
if (instruction.meta.type === "delegate") {
|
|
901
2248
|
return "StakeDelegateStakeInstruction";
|
|
902
2249
|
}
|
|
903
|
-
if (instruction.
|
|
2250
|
+
if (instruction.meta.type === "split") {
|
|
904
2251
|
return "StakeSplitInstruction";
|
|
905
2252
|
}
|
|
906
|
-
if (instruction.
|
|
2253
|
+
if (instruction.meta.type === "withdraw") {
|
|
907
2254
|
return "StakeWithdrawInstruction";
|
|
908
2255
|
}
|
|
909
|
-
if (instruction.
|
|
2256
|
+
if (instruction.meta.type === "deactivate") {
|
|
910
2257
|
return "StakeDeactivateInstruction";
|
|
911
2258
|
}
|
|
912
|
-
if (instruction.
|
|
2259
|
+
if (instruction.meta.type === "setLockup") {
|
|
913
2260
|
return "StakeSetLockupInstruction";
|
|
914
2261
|
}
|
|
915
|
-
if (instruction.
|
|
2262
|
+
if (instruction.meta.type === "merge") {
|
|
916
2263
|
return "StakeMergeInstruction";
|
|
917
2264
|
}
|
|
918
|
-
if (instruction.
|
|
2265
|
+
if (instruction.meta.type === "authorizeWithSeed") {
|
|
919
2266
|
return "StakeAuthorizeWithSeedInstruction";
|
|
920
2267
|
}
|
|
921
|
-
if (instruction.
|
|
2268
|
+
if (instruction.meta.type === "initializeChecked") {
|
|
922
2269
|
return "StakeInitializeCheckedInstruction";
|
|
923
2270
|
}
|
|
924
|
-
if (instruction.
|
|
2271
|
+
if (instruction.meta.type === "authorizeChecked") {
|
|
925
2272
|
return "StakeAuthorizeCheckedInstruction";
|
|
926
2273
|
}
|
|
927
|
-
if (instruction.
|
|
2274
|
+
if (instruction.meta.type === "authorizeCheckedWithSeed") {
|
|
928
2275
|
return "StakeAuthorizeCheckedWithSeedInstruction";
|
|
929
2276
|
}
|
|
930
|
-
if (instruction.
|
|
2277
|
+
if (instruction.meta.type === "setLockupChecked") {
|
|
931
2278
|
return "StakeSetLockupCheckedInstruction";
|
|
932
2279
|
}
|
|
933
|
-
if (instruction.
|
|
2280
|
+
if (instruction.meta.type === "deactivateDelinquent") {
|
|
934
2281
|
return "StakeDeactivateDelinquentInstruction";
|
|
935
2282
|
}
|
|
936
|
-
if (instruction.
|
|
2283
|
+
if (instruction.meta.type === "redelegate") {
|
|
937
2284
|
return "StakeRedelegateInstruction";
|
|
938
2285
|
}
|
|
939
2286
|
}
|
|
940
|
-
if (instruction.program === "system") {
|
|
941
|
-
if (instruction.
|
|
2287
|
+
if (instruction.meta.program === "system") {
|
|
2288
|
+
if (instruction.meta.type === "createAccount") {
|
|
942
2289
|
return "CreateAccountInstruction";
|
|
943
2290
|
}
|
|
944
|
-
if (instruction.
|
|
2291
|
+
if (instruction.meta.type === "assign") {
|
|
945
2292
|
return "AssignInstruction";
|
|
946
2293
|
}
|
|
947
|
-
if (instruction.
|
|
2294
|
+
if (instruction.meta.type === "transfer") {
|
|
948
2295
|
return "TransferInstruction";
|
|
949
2296
|
}
|
|
950
|
-
if (instruction.
|
|
2297
|
+
if (instruction.meta.type === "createAccountWithSeed") {
|
|
951
2298
|
return "CreateAccountWithSeedInstruction";
|
|
952
2299
|
}
|
|
953
|
-
if (instruction.
|
|
2300
|
+
if (instruction.meta.type === "advanceNonceAccount") {
|
|
954
2301
|
return "AdvanceNonceAccountInstruction";
|
|
955
2302
|
}
|
|
956
|
-
if (instruction.
|
|
2303
|
+
if (instruction.meta.type === "withdrawNonceAccount") {
|
|
957
2304
|
return "WithdrawNonceAccountInstruction";
|
|
958
2305
|
}
|
|
959
|
-
if (instruction.
|
|
2306
|
+
if (instruction.meta.type === "initializeNonceAccount") {
|
|
960
2307
|
return "InitializeNonceAccountInstruction";
|
|
961
2308
|
}
|
|
962
|
-
if (instruction.
|
|
2309
|
+
if (instruction.meta.type === "authorizeNonceAccount") {
|
|
963
2310
|
return "AuthorizeNonceAccountInstruction";
|
|
964
2311
|
}
|
|
965
|
-
if (instruction.
|
|
2312
|
+
if (instruction.meta.type === "upgradeNonceAccount") {
|
|
966
2313
|
return "UpgradeNonceAccountInstruction";
|
|
967
2314
|
}
|
|
968
|
-
if (instruction.
|
|
2315
|
+
if (instruction.meta.type === "allocate") {
|
|
969
2316
|
return "AllocateInstruction";
|
|
970
2317
|
}
|
|
971
|
-
if (instruction.
|
|
2318
|
+
if (instruction.meta.type === "allocateWithSeed") {
|
|
972
2319
|
return "AllocateWithSeedInstruction";
|
|
973
2320
|
}
|
|
974
|
-
if (instruction.
|
|
2321
|
+
if (instruction.meta.type === "assignWithSeed") {
|
|
975
2322
|
return "AssignWithSeedInstruction";
|
|
976
2323
|
}
|
|
977
|
-
if (instruction.
|
|
2324
|
+
if (instruction.meta.type === "transferWithSeed") {
|
|
978
2325
|
return "TransferWithSeedInstruction";
|
|
979
2326
|
}
|
|
980
2327
|
}
|
|
981
|
-
if (instruction.program === "vote") {
|
|
982
|
-
if (instruction.
|
|
2328
|
+
if (instruction.meta.program === "vote") {
|
|
2329
|
+
if (instruction.meta.type === "initialize") {
|
|
983
2330
|
return "VoteInitializeAccountInstruction";
|
|
984
2331
|
}
|
|
985
|
-
if (instruction.
|
|
2332
|
+
if (instruction.meta.type === "authorize") {
|
|
986
2333
|
return "VoteAuthorizeInstruction";
|
|
987
2334
|
}
|
|
988
|
-
if (instruction.
|
|
2335
|
+
if (instruction.meta.type === "authorizeWithSeed") {
|
|
989
2336
|
return "VoteAuthorizeWithSeedInstruction";
|
|
990
2337
|
}
|
|
991
|
-
if (instruction.
|
|
2338
|
+
if (instruction.meta.type === "authorizeCheckedWithSeed") {
|
|
992
2339
|
return "VoteAuthorizeCheckedWithSeedInstruction";
|
|
993
2340
|
}
|
|
994
|
-
if (instruction.
|
|
2341
|
+
if (instruction.meta.type === "vote") {
|
|
995
2342
|
return "VoteVoteInstruction";
|
|
996
2343
|
}
|
|
997
|
-
if (instruction.
|
|
2344
|
+
if (instruction.meta.type === "updatevotestate") {
|
|
998
2345
|
return "VoteUpdateVoteStateInstruction";
|
|
999
2346
|
}
|
|
1000
|
-
if (instruction.
|
|
2347
|
+
if (instruction.meta.type === "updatevotestateswitch") {
|
|
1001
2348
|
return "VoteUpdateVoteStateSwitchInstruction";
|
|
1002
2349
|
}
|
|
1003
|
-
if (instruction.
|
|
2350
|
+
if (instruction.meta.type === "compactupdatevotestate") {
|
|
1004
2351
|
return "VoteCompactUpdateVoteStateInstruction";
|
|
1005
2352
|
}
|
|
1006
|
-
if (instruction.
|
|
2353
|
+
if (instruction.meta.type === "compactupdatevotestateswitch") {
|
|
1007
2354
|
return "VoteCompactUpdateVoteStateSwitchInstruction";
|
|
1008
2355
|
}
|
|
1009
|
-
if (instruction.
|
|
2356
|
+
if (instruction.meta.type === "withdraw") {
|
|
1010
2357
|
return "VoteWithdrawInstruction";
|
|
1011
2358
|
}
|
|
1012
|
-
if (instruction.
|
|
2359
|
+
if (instruction.meta.type === "updateValidatorIdentity") {
|
|
1013
2360
|
return "VoteUpdateValidatorIdentityInstruction";
|
|
1014
2361
|
}
|
|
1015
|
-
if (instruction.
|
|
2362
|
+
if (instruction.meta.type === "updateCommission") {
|
|
1016
2363
|
return "VoteUpdateCommissionInstruction";
|
|
1017
2364
|
}
|
|
1018
|
-
if (instruction.
|
|
2365
|
+
if (instruction.meta.type === "voteSwitch") {
|
|
1019
2366
|
return "VoteVoteSwitchInstruction";
|
|
1020
2367
|
}
|
|
1021
|
-
if (instruction.
|
|
2368
|
+
if (instruction.meta.type === "authorizeChecked") {
|
|
1022
2369
|
return "VoteAuthorizeCheckedInstruction";
|
|
1023
2370
|
}
|
|
1024
2371
|
}
|
|
1025
|
-
return "PartiallyDecodedInstruction";
|
|
1026
|
-
}
|
|
1027
|
-
});
|
|
1028
|
-
return memoisedParsedTransactionInstructionInterface;
|
|
1029
|
-
};
|
|
1030
|
-
var parsedTransactionInstructionType = (name, parsedInfoFields) => new GraphQLObjectType({
|
|
1031
|
-
fields: {
|
|
1032
|
-
parsed: object(name + "Parsed", {
|
|
1033
|
-
info: object(name + "ParsedInfo", parsedInfoFields),
|
|
1034
|
-
type: string()
|
|
1035
|
-
}),
|
|
1036
|
-
program: string(),
|
|
1037
|
-
programId: string()
|
|
1038
|
-
},
|
|
1039
|
-
interfaces: [parsedTransactionInstructionInterface()],
|
|
1040
|
-
name
|
|
1041
|
-
});
|
|
1042
|
-
var memoisedPartiallyDecodedTransactionInstruction;
|
|
1043
|
-
var partiallyDecodedTransactionInstruction = () => {
|
|
1044
|
-
if (!memoisedPartiallyDecodedTransactionInstruction)
|
|
1045
|
-
memoisedPartiallyDecodedTransactionInstruction = new GraphQLObjectType({
|
|
1046
|
-
fields: {
|
|
1047
|
-
accounts: list(string()),
|
|
1048
|
-
data: string(),
|
|
1049
|
-
programId: string()
|
|
1050
|
-
},
|
|
1051
|
-
interfaces: [parsedTransactionInstructionInterface()],
|
|
1052
|
-
name: "PartiallyDecodedInstruction"
|
|
1053
|
-
});
|
|
1054
|
-
return memoisedPartiallyDecodedTransactionInstruction;
|
|
1055
|
-
};
|
|
1056
|
-
var memoisedParsedInstructionsAddressLookupTable;
|
|
1057
|
-
var parsedInstructionsAddressLookupTable = () => {
|
|
1058
|
-
if (!memoisedParsedInstructionsAddressLookupTable)
|
|
1059
|
-
memoisedParsedInstructionsAddressLookupTable = [
|
|
1060
|
-
parsedTransactionInstructionType("CreateLookupTableInstruction", {
|
|
1061
|
-
bumpSeed: number(),
|
|
1062
|
-
lookupTableAccount: string(),
|
|
1063
|
-
lookupTableAuthority: string(),
|
|
1064
|
-
payerAccount: string(),
|
|
1065
|
-
recentSlot: bigint(),
|
|
1066
|
-
systemProgram: string()
|
|
1067
|
-
}),
|
|
1068
|
-
parsedTransactionInstructionType("FreezeLookupTableInstruction", {
|
|
1069
|
-
lookupTableAccount: string(),
|
|
1070
|
-
lookupTableAuthority: string()
|
|
1071
|
-
}),
|
|
1072
|
-
parsedTransactionInstructionType("ExtendLookupTableInstruction", {
|
|
1073
|
-
lookupTableAccount: string(),
|
|
1074
|
-
lookupTableAuthority: string(),
|
|
1075
|
-
newAddresses: list(string()),
|
|
1076
|
-
payerAccount: string(),
|
|
1077
|
-
systemProgram: string()
|
|
1078
|
-
}),
|
|
1079
|
-
parsedTransactionInstructionType("DeactivateLookupTableInstruction", {
|
|
1080
|
-
lookupTableAccount: string(),
|
|
1081
|
-
lookupTableAuthority: string()
|
|
1082
|
-
}),
|
|
1083
|
-
parsedTransactionInstructionType("CloseLookupTableInstruction", {
|
|
1084
|
-
lookupTableAccount: string(),
|
|
1085
|
-
lookupTableAuthority: string(),
|
|
1086
|
-
recipient: string()
|
|
1087
|
-
})
|
|
1088
|
-
];
|
|
1089
|
-
return memoisedParsedInstructionsAddressLookupTable;
|
|
1090
|
-
};
|
|
1091
|
-
var memoisedParsedInstructionsBpfLoader;
|
|
1092
|
-
var parsedInstructionsBpfLoader = () => {
|
|
1093
|
-
if (!memoisedParsedInstructionsBpfLoader)
|
|
1094
|
-
memoisedParsedInstructionsBpfLoader = [
|
|
1095
|
-
parsedTransactionInstructionType("BpfLoaderWriteInstruction", {
|
|
1096
|
-
account: string(),
|
|
1097
|
-
bytes: string(),
|
|
1098
|
-
offset: number()
|
|
1099
|
-
}),
|
|
1100
|
-
parsedTransactionInstructionType("BpfLoaderFinalizeInstruction", {
|
|
1101
|
-
account: string()
|
|
1102
|
-
})
|
|
1103
|
-
];
|
|
1104
|
-
return memoisedParsedInstructionsBpfLoader;
|
|
1105
|
-
};
|
|
1106
|
-
var memoisedParsedInstructionsBpfUpgradeableLoader;
|
|
1107
|
-
var parsedInstructionsBpfUpgradeableLoader = () => {
|
|
1108
|
-
if (!memoisedParsedInstructionsBpfUpgradeableLoader)
|
|
1109
|
-
memoisedParsedInstructionsBpfUpgradeableLoader = [
|
|
1110
|
-
parsedTransactionInstructionType("BpfUpgradeableLoaderInitializeBufferInstruction", {
|
|
1111
|
-
account: string()
|
|
1112
|
-
}),
|
|
1113
|
-
parsedTransactionInstructionType("BpfUpgradeableLoaderWriteInstruction", {
|
|
1114
|
-
account: string(),
|
|
1115
|
-
authority: string(),
|
|
1116
|
-
bytes: string(),
|
|
1117
|
-
offset: number()
|
|
1118
|
-
}),
|
|
1119
|
-
parsedTransactionInstructionType("BpfUpgradeableLoaderDeployWithMaxDataLenInstruction", {
|
|
1120
|
-
authority: string(),
|
|
1121
|
-
bufferAccount: string(),
|
|
1122
|
-
clockSysvar: string(),
|
|
1123
|
-
maxDataLen: bigint(),
|
|
1124
|
-
payerAccount: string(),
|
|
1125
|
-
programAccount: string(),
|
|
1126
|
-
programDataAccount: string(),
|
|
1127
|
-
rentSysvar: string()
|
|
1128
|
-
}),
|
|
1129
|
-
parsedTransactionInstructionType("BpfUpgradeableLoaderUpgradeInstruction", {
|
|
1130
|
-
authority: string(),
|
|
1131
|
-
bufferAccount: string(),
|
|
1132
|
-
clockSysvar: string(),
|
|
1133
|
-
programAccount: string(),
|
|
1134
|
-
programDataAccount: string(),
|
|
1135
|
-
rentSysvar: string(),
|
|
1136
|
-
spillAccount: string()
|
|
1137
|
-
}),
|
|
1138
|
-
parsedTransactionInstructionType("BpfUpgradeableLoaderSetAuthorityInstruction", {
|
|
1139
|
-
account: string(),
|
|
1140
|
-
authority: string(),
|
|
1141
|
-
newAuthority: string()
|
|
1142
|
-
}),
|
|
1143
|
-
parsedTransactionInstructionType("BpfUpgradeableLoaderSetAuthorityCheckedInstruction", {
|
|
1144
|
-
account: string(),
|
|
1145
|
-
authority: string(),
|
|
1146
|
-
newAuthority: string()
|
|
1147
|
-
}),
|
|
1148
|
-
parsedTransactionInstructionType("BpfUpgradeableLoaderCloseInstruction", {
|
|
1149
|
-
account: string(),
|
|
1150
|
-
authority: string(),
|
|
1151
|
-
programAccount: string(),
|
|
1152
|
-
recipient: string()
|
|
1153
|
-
}),
|
|
1154
|
-
parsedTransactionInstructionType("BpfUpgradeableLoaderExtendProgramInstruction", {
|
|
1155
|
-
additionalBytes: bigint(),
|
|
1156
|
-
payerAccount: string(),
|
|
1157
|
-
programAccount: string(),
|
|
1158
|
-
programDataAccount: string(),
|
|
1159
|
-
systemProgram: string()
|
|
1160
|
-
})
|
|
1161
|
-
];
|
|
1162
|
-
return memoisedParsedInstructionsBpfUpgradeableLoader;
|
|
1163
|
-
};
|
|
1164
|
-
var memoisedParsedInstructionsSplAssociatedToken;
|
|
1165
|
-
var parsedInstructionsSplAssociatedToken = () => {
|
|
1166
|
-
if (!memoisedParsedInstructionsSplAssociatedToken)
|
|
1167
|
-
memoisedParsedInstructionsSplAssociatedToken = [
|
|
1168
|
-
parsedTransactionInstructionType("SplAssociatedTokenCreateInstruction", {
|
|
1169
|
-
account: string(),
|
|
1170
|
-
mint: string(),
|
|
1171
|
-
source: string(),
|
|
1172
|
-
systemProgram: string(),
|
|
1173
|
-
tokenProgram: string(),
|
|
1174
|
-
wallet: string()
|
|
1175
|
-
}),
|
|
1176
|
-
parsedTransactionInstructionType("SplAssociatedTokenCreateIdempotentInstruction", {
|
|
1177
|
-
account: string(),
|
|
1178
|
-
mint: string(),
|
|
1179
|
-
source: string(),
|
|
1180
|
-
systemProgram: string(),
|
|
1181
|
-
tokenProgram: string(),
|
|
1182
|
-
wallet: string()
|
|
1183
|
-
}),
|
|
1184
|
-
parsedTransactionInstructionType("SplAssociatedTokenRecoverNestedInstruction", {
|
|
1185
|
-
destination: string(),
|
|
1186
|
-
nestedMint: string(),
|
|
1187
|
-
nestedOwner: string(),
|
|
1188
|
-
nestedSource: string(),
|
|
1189
|
-
ownerMint: string(),
|
|
1190
|
-
tokenProgram: string(),
|
|
1191
|
-
wallet: string()
|
|
1192
|
-
})
|
|
1193
|
-
];
|
|
1194
|
-
return memoisedParsedInstructionsSplAssociatedToken;
|
|
1195
|
-
};
|
|
1196
|
-
var memoisedParsedInstructionSplMemo;
|
|
1197
|
-
var parsedInstructionSplMemo = () => {
|
|
1198
|
-
if (!memoisedParsedInstructionSplMemo)
|
|
1199
|
-
memoisedParsedInstructionSplMemo = new GraphQLObjectType({
|
|
1200
|
-
fields: {
|
|
1201
|
-
parsed: string(),
|
|
1202
|
-
program: string(),
|
|
1203
|
-
programId: string()
|
|
1204
|
-
},
|
|
1205
|
-
interfaces: [parsedTransactionInstructionInterface()],
|
|
1206
|
-
name: "SplMemoInstruction"
|
|
1207
|
-
});
|
|
1208
|
-
return memoisedParsedInstructionSplMemo;
|
|
1209
|
-
};
|
|
1210
|
-
var memoisedParsedInstructionsSplToken;
|
|
1211
|
-
var parsedInstructionsSplToken = () => {
|
|
1212
|
-
if (!memoisedParsedInstructionsSplToken)
|
|
1213
|
-
memoisedParsedInstructionsSplToken = [
|
|
1214
|
-
parsedTransactionInstructionType("SplTokenInitializeMintInstruction", {
|
|
1215
|
-
decimals: number(),
|
|
1216
|
-
freezeAuthority: string(),
|
|
1217
|
-
mint: string(),
|
|
1218
|
-
mintAuthority: string(),
|
|
1219
|
-
rentSysvar: string()
|
|
1220
|
-
}),
|
|
1221
|
-
parsedTransactionInstructionType("SplTokenInitializeMint2Instruction", {
|
|
1222
|
-
decimals: number(),
|
|
1223
|
-
freezeAuthority: string(),
|
|
1224
|
-
mint: string(),
|
|
1225
|
-
mintAuthority: string()
|
|
1226
|
-
}),
|
|
1227
|
-
parsedTransactionInstructionType("SplTokenInitializeAccountInstruction", {
|
|
1228
|
-
account: string(),
|
|
1229
|
-
mint: string(),
|
|
1230
|
-
owner: string(),
|
|
1231
|
-
rentSysvar: string()
|
|
1232
|
-
}),
|
|
1233
|
-
parsedTransactionInstructionType("SplTokenInitializeAccount2Instruction", {
|
|
1234
|
-
account: string(),
|
|
1235
|
-
mint: string(),
|
|
1236
|
-
owner: string(),
|
|
1237
|
-
rentSysvar: string()
|
|
1238
|
-
}),
|
|
1239
|
-
parsedTransactionInstructionType("SplTokenInitializeAccount3Instruction", {
|
|
1240
|
-
account: string(),
|
|
1241
|
-
mint: string(),
|
|
1242
|
-
owner: string()
|
|
1243
|
-
}),
|
|
1244
|
-
parsedTransactionInstructionType("SplTokenInitializeMultisigInstruction", {
|
|
1245
|
-
m: number(),
|
|
1246
|
-
multisig: string(),
|
|
1247
|
-
rentSysvar: string(),
|
|
1248
|
-
signers: list(string())
|
|
1249
|
-
}),
|
|
1250
|
-
parsedTransactionInstructionType("SplTokenInitializeMultisig2Instruction", {
|
|
1251
|
-
m: number(),
|
|
1252
|
-
multisig: string(),
|
|
1253
|
-
signers: list(string())
|
|
1254
|
-
}),
|
|
1255
|
-
parsedTransactionInstructionType("SplTokenTransferInstruction", {
|
|
1256
|
-
amount: string(),
|
|
1257
|
-
authority: string(),
|
|
1258
|
-
destination: string(),
|
|
1259
|
-
multisigAuthority: string(),
|
|
1260
|
-
source: string()
|
|
1261
|
-
}),
|
|
1262
|
-
parsedTransactionInstructionType("SplTokenApproveInstruction", {
|
|
1263
|
-
amount: string(),
|
|
1264
|
-
delegate: string(),
|
|
1265
|
-
multisigOwner: string(),
|
|
1266
|
-
owner: string(),
|
|
1267
|
-
source: string()
|
|
1268
|
-
}),
|
|
1269
|
-
parsedTransactionInstructionType("SplTokenRevokeInstruction", {
|
|
1270
|
-
multisigOwner: string(),
|
|
1271
|
-
owner: string(),
|
|
1272
|
-
source: string()
|
|
1273
|
-
}),
|
|
1274
|
-
parsedTransactionInstructionType("SplTokenSetAuthorityInstruction", {
|
|
1275
|
-
authority: string(),
|
|
1276
|
-
authorityType: string(),
|
|
1277
|
-
multisigAuthority: string(),
|
|
1278
|
-
newAuthority: string()
|
|
1279
|
-
}),
|
|
1280
|
-
parsedTransactionInstructionType("SplTokenMintToInstruction", {
|
|
1281
|
-
account: string(),
|
|
1282
|
-
amount: string(),
|
|
1283
|
-
authority: string(),
|
|
1284
|
-
mint: string(),
|
|
1285
|
-
mintAuthority: string(),
|
|
1286
|
-
multisigMintAuthority: string()
|
|
1287
|
-
}),
|
|
1288
|
-
parsedTransactionInstructionType("SplTokenBurnInstruction", {
|
|
1289
|
-
account: string(),
|
|
1290
|
-
amount: string(),
|
|
1291
|
-
authority: string(),
|
|
1292
|
-
mint: string(),
|
|
1293
|
-
multisigAuthority: string()
|
|
1294
|
-
}),
|
|
1295
|
-
parsedTransactionInstructionType("SplTokenCloseAccountInstruction", {
|
|
1296
|
-
account: string(),
|
|
1297
|
-
destination: string(),
|
|
1298
|
-
multisigOwner: string(),
|
|
1299
|
-
owner: string()
|
|
1300
|
-
}),
|
|
1301
|
-
parsedTransactionInstructionType("SplTokenFreezeAccountInstruction", {
|
|
1302
|
-
account: string(),
|
|
1303
|
-
freezeAuthority: string(),
|
|
1304
|
-
mint: string(),
|
|
1305
|
-
multisigFreezeAuthority: string()
|
|
1306
|
-
}),
|
|
1307
|
-
parsedTransactionInstructionType("SplTokenThawAccountInstruction", {
|
|
1308
|
-
account: string(),
|
|
1309
|
-
freezeAuthority: string(),
|
|
1310
|
-
mint: string(),
|
|
1311
|
-
multisigFreezeAuthority: string()
|
|
1312
|
-
}),
|
|
1313
|
-
parsedTransactionInstructionType("SplTokenTransferCheckedInstruction", {
|
|
1314
|
-
authority: string(),
|
|
1315
|
-
destination: string(),
|
|
1316
|
-
mint: string(),
|
|
1317
|
-
multisigAuthority: string(),
|
|
1318
|
-
source: string(),
|
|
1319
|
-
tokenAmount: string()
|
|
1320
|
-
}),
|
|
1321
|
-
parsedTransactionInstructionType("SplTokenApproveCheckedInstruction", {
|
|
1322
|
-
delegate: string(),
|
|
1323
|
-
mint: string(),
|
|
1324
|
-
multisigOwner: string(),
|
|
1325
|
-
owner: string(),
|
|
1326
|
-
source: string(),
|
|
1327
|
-
tokenAmount: string()
|
|
1328
|
-
}),
|
|
1329
|
-
parsedTransactionInstructionType("SplTokenMintToCheckedInstruction", {
|
|
1330
|
-
account: string(),
|
|
1331
|
-
authority: string(),
|
|
1332
|
-
mint: string(),
|
|
1333
|
-
mintAuthority: string(),
|
|
1334
|
-
multisigMintAuthority: string(),
|
|
1335
|
-
tokenAmount: string()
|
|
1336
|
-
}),
|
|
1337
|
-
parsedTransactionInstructionType("SplTokenBurnCheckedInstruction", {
|
|
1338
|
-
account: string(),
|
|
1339
|
-
authority: string(),
|
|
1340
|
-
mint: string(),
|
|
1341
|
-
multisigAuthority: string(),
|
|
1342
|
-
tokenAmount: string()
|
|
1343
|
-
}),
|
|
1344
|
-
parsedTransactionInstructionType("SplTokenSyncNativeInstruction", {
|
|
1345
|
-
account: string()
|
|
1346
|
-
}),
|
|
1347
|
-
parsedTransactionInstructionType("SplTokenGetAccountDataSizeInstruction", {
|
|
1348
|
-
extensionTypes: list(string()),
|
|
1349
|
-
mint: string()
|
|
1350
|
-
}),
|
|
1351
|
-
parsedTransactionInstructionType("SplTokenInitializeImmutableOwnerInstruction", {
|
|
1352
|
-
account: string()
|
|
1353
|
-
}),
|
|
1354
|
-
parsedTransactionInstructionType("SplTokenAmountToUiAmountInstruction", {
|
|
1355
|
-
amount: string(),
|
|
1356
|
-
mint: string()
|
|
1357
|
-
}),
|
|
1358
|
-
parsedTransactionInstructionType("SplTokenUiAmountToAmountInstruction", {
|
|
1359
|
-
mint: string(),
|
|
1360
|
-
uiAmount: string()
|
|
1361
|
-
}),
|
|
1362
|
-
parsedTransactionInstructionType("SplTokenInitializeMintCloseAuthorityInstruction", {
|
|
1363
|
-
mint: string(),
|
|
1364
|
-
newAuthority: string()
|
|
1365
|
-
})
|
|
1366
|
-
// TODO: Extensions!
|
|
1367
|
-
// - TransferFeeExtension
|
|
1368
|
-
// - ConfidentialTransferFeeExtension
|
|
1369
|
-
// - DefaultAccountStateExtension
|
|
1370
|
-
// - Reallocate
|
|
1371
|
-
// - MemoTransferExtension
|
|
1372
|
-
// - CreateNativeMint
|
|
1373
|
-
// - InitializeNonTransferableMint
|
|
1374
|
-
// - InterestBearingMintExtension
|
|
1375
|
-
// - CpiGuardExtension
|
|
1376
|
-
// - InitializePermanentDelegate
|
|
1377
|
-
// - TransferHookExtension
|
|
1378
|
-
// - ConfidentialTransferFeeExtension
|
|
1379
|
-
// - WithdrawExcessLamports
|
|
1380
|
-
// - MetadataPointerExtension
|
|
1381
|
-
];
|
|
1382
|
-
return memoisedParsedInstructionsSplToken;
|
|
1383
|
-
};
|
|
1384
|
-
var memoisedLockup;
|
|
1385
|
-
var lockup = () => {
|
|
1386
|
-
if (!memoisedLockup)
|
|
1387
|
-
memoisedLockup = new GraphQLObjectType({
|
|
1388
|
-
fields: {
|
|
1389
|
-
custodian: string(),
|
|
1390
|
-
epoch: bigint(),
|
|
1391
|
-
unixTimestamp: bigint()
|
|
1392
|
-
},
|
|
1393
|
-
name: "Lockup"
|
|
1394
|
-
});
|
|
1395
|
-
return memoisedLockup;
|
|
1396
|
-
};
|
|
1397
|
-
var memoisedParsedInstructionsStake;
|
|
1398
|
-
var parsedInstructionsStake = () => {
|
|
1399
|
-
if (!memoisedParsedInstructionsStake)
|
|
1400
|
-
memoisedParsedInstructionsStake = [
|
|
1401
|
-
parsedTransactionInstructionType("StakeInitializeInstruction", {
|
|
1402
|
-
authorized: object("StakeInitializeInstructionAuthorized", {
|
|
1403
|
-
staker: string(),
|
|
1404
|
-
withdrawer: string()
|
|
1405
|
-
}),
|
|
1406
|
-
lockup: object("StakeInitializeInstructionLockup", {
|
|
1407
|
-
custodian: string(),
|
|
1408
|
-
epoch: bigint(),
|
|
1409
|
-
unixTimestamp: bigint()
|
|
1410
|
-
}),
|
|
1411
|
-
rentSysvar: string(),
|
|
1412
|
-
stakeAccount: string()
|
|
1413
|
-
}),
|
|
1414
|
-
parsedTransactionInstructionType("StakeAuthorizeInstruction", {
|
|
1415
|
-
authority: string(),
|
|
1416
|
-
authorityType: string(),
|
|
1417
|
-
clockSysvar: string(),
|
|
1418
|
-
custodian: string(),
|
|
1419
|
-
newAuthority: string(),
|
|
1420
|
-
stakeAccount: string()
|
|
1421
|
-
}),
|
|
1422
|
-
parsedTransactionInstructionType("StakeDelegateStakeInstruction", {
|
|
1423
|
-
clockSysvar: string(),
|
|
1424
|
-
stakeAccount: string(),
|
|
1425
|
-
stakeAuthority: string(),
|
|
1426
|
-
stakeConfigAccount: string(),
|
|
1427
|
-
stakeHistorySysvar: string(),
|
|
1428
|
-
voteAccount: string()
|
|
1429
|
-
}),
|
|
1430
|
-
parsedTransactionInstructionType("StakeSplitInstruction", {
|
|
1431
|
-
lamports: bigint(),
|
|
1432
|
-
newSplitAccount: string(),
|
|
1433
|
-
stakeAccount: string(),
|
|
1434
|
-
stakeAuthority: string()
|
|
1435
|
-
}),
|
|
1436
|
-
parsedTransactionInstructionType("StakeWithdrawInstruction", {
|
|
1437
|
-
clockSysvar: string(),
|
|
1438
|
-
destination: string(),
|
|
1439
|
-
lamports: bigint(),
|
|
1440
|
-
stakeAccount: string(),
|
|
1441
|
-
withdrawAuthority: string()
|
|
1442
|
-
}),
|
|
1443
|
-
parsedTransactionInstructionType("StakeDeactivateInstruction", {
|
|
1444
|
-
clockSysvar: string(),
|
|
1445
|
-
stakeAccount: string(),
|
|
1446
|
-
stakeAuthority: string()
|
|
1447
|
-
}),
|
|
1448
|
-
parsedTransactionInstructionType("StakeSetLockupInstruction", {
|
|
1449
|
-
custodian: string(),
|
|
1450
|
-
lockup: type(lockup()),
|
|
1451
|
-
stakeAccount: string()
|
|
1452
|
-
}),
|
|
1453
|
-
parsedTransactionInstructionType("StakeMergeInstruction", {
|
|
1454
|
-
clockSysvar: string(),
|
|
1455
|
-
destination: string(),
|
|
1456
|
-
source: string(),
|
|
1457
|
-
stakeAuthority: string(),
|
|
1458
|
-
stakeHistorySysvar: string()
|
|
1459
|
-
}),
|
|
1460
|
-
parsedTransactionInstructionType("StakeAuthorizeWithSeedInstruction", {
|
|
1461
|
-
authorityBase: string(),
|
|
1462
|
-
authorityOwner: string(),
|
|
1463
|
-
authoritySeed: string(),
|
|
1464
|
-
authorityType: string(),
|
|
1465
|
-
clockSysvar: string(),
|
|
1466
|
-
custodian: string(),
|
|
1467
|
-
newAuthorized: string(),
|
|
1468
|
-
stakeAccount: string()
|
|
1469
|
-
}),
|
|
1470
|
-
parsedTransactionInstructionType("StakeInitializeCheckedInstruction", {
|
|
1471
|
-
rentSysvar: string(),
|
|
1472
|
-
stakeAccount: string(),
|
|
1473
|
-
staker: string(),
|
|
1474
|
-
withdrawer: string()
|
|
1475
|
-
}),
|
|
1476
|
-
parsedTransactionInstructionType("StakeAuthorizeCheckedInstruction", {
|
|
1477
|
-
authority: string(),
|
|
1478
|
-
authorityType: string(),
|
|
1479
|
-
clockSysvar: string(),
|
|
1480
|
-
custodian: string(),
|
|
1481
|
-
newAuthority: string(),
|
|
1482
|
-
stakeAccount: string()
|
|
1483
|
-
}),
|
|
1484
|
-
parsedTransactionInstructionType("StakeAuthorizeCheckedWithSeedInstruction", {
|
|
1485
|
-
authorityBase: string(),
|
|
1486
|
-
authorityOwner: string(),
|
|
1487
|
-
authoritySeed: string(),
|
|
1488
|
-
authorityType: string(),
|
|
1489
|
-
clockSysvar: string(),
|
|
1490
|
-
custodian: string(),
|
|
1491
|
-
newAuthorized: string(),
|
|
1492
|
-
stakeAccount: string()
|
|
1493
|
-
}),
|
|
1494
|
-
parsedTransactionInstructionType("StakeSetLockupCheckedInstruction", {
|
|
1495
|
-
custodian: string(),
|
|
1496
|
-
lockup: type(lockup()),
|
|
1497
|
-
stakeAccount: string()
|
|
1498
|
-
}),
|
|
1499
|
-
parsedTransactionInstructionType("StakeDeactivateDelinquentInstruction", {
|
|
1500
|
-
referenceVoteAccount: string(),
|
|
1501
|
-
stakeAccount: string(),
|
|
1502
|
-
voteAccount: string()
|
|
1503
|
-
}),
|
|
1504
|
-
parsedTransactionInstructionType("StakeRedelegateInstruction", {
|
|
1505
|
-
newStakeAccount: string(),
|
|
1506
|
-
stakeAccount: string(),
|
|
1507
|
-
stakeAuthority: string(),
|
|
1508
|
-
stakeConfigAccount: string(),
|
|
1509
|
-
voteAccount: string()
|
|
1510
|
-
})
|
|
1511
|
-
];
|
|
1512
|
-
return memoisedParsedInstructionsStake;
|
|
1513
|
-
};
|
|
1514
|
-
var memoisedParsedInstructionsSystem;
|
|
1515
|
-
var parsedInstructionsSystem = () => {
|
|
1516
|
-
if (!memoisedParsedInstructionsSystem)
|
|
1517
|
-
memoisedParsedInstructionsSystem = [
|
|
1518
|
-
parsedTransactionInstructionType("CreateAccountInstruction", {
|
|
1519
|
-
lamports: bigint(),
|
|
1520
|
-
newAccount: string(),
|
|
1521
|
-
owner: string(),
|
|
1522
|
-
source: string(),
|
|
1523
|
-
space: bigint()
|
|
1524
|
-
}),
|
|
1525
|
-
parsedTransactionInstructionType("AssignInstruction", {
|
|
1526
|
-
owner: string()
|
|
1527
|
-
}),
|
|
1528
|
-
parsedTransactionInstructionType("TransferInstruction", {
|
|
1529
|
-
amount: string(),
|
|
1530
|
-
lamports: number(),
|
|
1531
|
-
source: string()
|
|
1532
|
-
}),
|
|
1533
|
-
parsedTransactionInstructionType("CreateAccountWithSeedInstruction", {
|
|
1534
|
-
base: string(),
|
|
1535
|
-
lamports: bigint(),
|
|
1536
|
-
owner: string(),
|
|
1537
|
-
seed: string(),
|
|
1538
|
-
space: bigint()
|
|
1539
|
-
}),
|
|
1540
|
-
parsedTransactionInstructionType("AdvanceNonceAccountInstruction", {
|
|
1541
|
-
nonceAccount: string(),
|
|
1542
|
-
nonceAuthority: string(),
|
|
1543
|
-
recentBlockhashesSysvar: string()
|
|
1544
|
-
}),
|
|
1545
|
-
parsedTransactionInstructionType("WithdrawNonceAccountInstruction", {
|
|
1546
|
-
destination: string(),
|
|
1547
|
-
lamports: bigint(),
|
|
1548
|
-
nonceAccount: string(),
|
|
1549
|
-
nonceAuthority: string(),
|
|
1550
|
-
recentBlockhashesSysvar: string(),
|
|
1551
|
-
rentSysvar: string()
|
|
1552
|
-
}),
|
|
1553
|
-
parsedTransactionInstructionType("InitializeNonceAccountInstruction", {
|
|
1554
|
-
nonceAccount: string(),
|
|
1555
|
-
nonceAuthority: string(),
|
|
1556
|
-
recentBlockhashesSysvar: string(),
|
|
1557
|
-
rentSysvar: string()
|
|
1558
|
-
}),
|
|
1559
|
-
parsedTransactionInstructionType("AuthorizeNonceAccountInstruction", {
|
|
1560
|
-
newAuthorized: string(),
|
|
1561
|
-
nonceAccount: string(),
|
|
1562
|
-
nonceAuthority: string()
|
|
1563
|
-
}),
|
|
1564
|
-
parsedTransactionInstructionType("UpgradeNonceAccountInstruction", {
|
|
1565
|
-
nonceAccount: string()
|
|
1566
|
-
}),
|
|
1567
|
-
parsedTransactionInstructionType("AllocateInstruction", {
|
|
1568
|
-
account: string(),
|
|
1569
|
-
space: bigint()
|
|
1570
|
-
}),
|
|
1571
|
-
parsedTransactionInstructionType("AllocateWithSeedInstruction", {
|
|
1572
|
-
account: string(),
|
|
1573
|
-
base: string(),
|
|
1574
|
-
owner: string(),
|
|
1575
|
-
seed: string(),
|
|
1576
|
-
space: bigint()
|
|
1577
|
-
}),
|
|
1578
|
-
parsedTransactionInstructionType("AssignWithSeedInstruction", {
|
|
1579
|
-
account: string(),
|
|
1580
|
-
base: string(),
|
|
1581
|
-
owner: string(),
|
|
1582
|
-
seed: string()
|
|
1583
|
-
}),
|
|
1584
|
-
parsedTransactionInstructionType("TransferWithSeedInstruction", {
|
|
1585
|
-
destination: string(),
|
|
1586
|
-
lamports: bigint(),
|
|
1587
|
-
source: string(),
|
|
1588
|
-
sourceBase: string(),
|
|
1589
|
-
sourceOwner: string(),
|
|
1590
|
-
sourceSeed: string()
|
|
1591
|
-
})
|
|
1592
|
-
];
|
|
1593
|
-
return memoisedParsedInstructionsSystem;
|
|
1594
|
-
};
|
|
1595
|
-
var memoisedVote;
|
|
1596
|
-
var vote = () => {
|
|
1597
|
-
if (!memoisedVote)
|
|
1598
|
-
memoisedVote = new GraphQLObjectType({
|
|
1599
|
-
fields: {
|
|
1600
|
-
hash: string(),
|
|
1601
|
-
slots: list(bigint()),
|
|
1602
|
-
timestamp: bigint()
|
|
1603
|
-
},
|
|
1604
|
-
name: "Vote"
|
|
1605
|
-
});
|
|
1606
|
-
return memoisedVote;
|
|
1607
|
-
};
|
|
1608
|
-
var memoisedVoteStateUpdate;
|
|
1609
|
-
var voteStateUpdate = () => {
|
|
1610
|
-
if (!memoisedVoteStateUpdate)
|
|
1611
|
-
memoisedVoteStateUpdate = new GraphQLObjectType({
|
|
1612
|
-
fields: {
|
|
1613
|
-
hash: string(),
|
|
1614
|
-
lockouts: list(
|
|
1615
|
-
object("VoteStateUpdateLockout", {
|
|
1616
|
-
confirmationCount: number(),
|
|
1617
|
-
slot: bigint()
|
|
1618
|
-
})
|
|
1619
|
-
),
|
|
1620
|
-
root: bigint(),
|
|
1621
|
-
timestamp: bigint()
|
|
1622
|
-
},
|
|
1623
|
-
name: "VoteStateUpdate"
|
|
1624
|
-
});
|
|
1625
|
-
return memoisedVoteStateUpdate;
|
|
1626
|
-
};
|
|
1627
|
-
var memoisedParsedInstructionsVote;
|
|
1628
|
-
var parsedInstructionsVote = () => {
|
|
1629
|
-
if (!memoisedParsedInstructionsVote)
|
|
1630
|
-
memoisedParsedInstructionsVote = [
|
|
1631
|
-
parsedTransactionInstructionType("VoteInitializeAccountInstruction", {
|
|
1632
|
-
authorizedVoter: string(),
|
|
1633
|
-
authorizedWithdrawer: string(),
|
|
1634
|
-
clockSysvar: string(),
|
|
1635
|
-
commission: number(),
|
|
1636
|
-
node: string(),
|
|
1637
|
-
rentSysvar: string(),
|
|
1638
|
-
voteAccount: string()
|
|
1639
|
-
}),
|
|
1640
|
-
parsedTransactionInstructionType("VoteAuthorizeInstruction", {
|
|
1641
|
-
authority: string(),
|
|
1642
|
-
authorityType: string(),
|
|
1643
|
-
clockSysvar: string(),
|
|
1644
|
-
newAuthority: string(),
|
|
1645
|
-
voteAccount: string()
|
|
1646
|
-
}),
|
|
1647
|
-
parsedTransactionInstructionType("VoteAuthorizeWithSeedInstruction", {
|
|
1648
|
-
authorityBaseKey: string(),
|
|
1649
|
-
authorityOwner: string(),
|
|
1650
|
-
authoritySeed: string(),
|
|
1651
|
-
authorityType: string(),
|
|
1652
|
-
clockSysvar: string(),
|
|
1653
|
-
newAuthority: string(),
|
|
1654
|
-
voteAccount: string()
|
|
1655
|
-
}),
|
|
1656
|
-
parsedTransactionInstructionType("VoteAuthorizeCheckedWithSeedInstruction", {
|
|
1657
|
-
authorityBaseKey: string(),
|
|
1658
|
-
authorityOwner: string(),
|
|
1659
|
-
authoritySeed: string(),
|
|
1660
|
-
authorityType: string(),
|
|
1661
|
-
clockSysvar: string(),
|
|
1662
|
-
newAuthority: string(),
|
|
1663
|
-
voteAccount: string()
|
|
1664
|
-
}),
|
|
1665
|
-
parsedTransactionInstructionType("VoteVoteInstruction", {
|
|
1666
|
-
clockSysvar: string(),
|
|
1667
|
-
slotHashedSysvar: string(),
|
|
1668
|
-
vote: type(vote()),
|
|
1669
|
-
voteAccount: string(),
|
|
1670
|
-
voteAuthority: string()
|
|
1671
|
-
}),
|
|
1672
|
-
parsedTransactionInstructionType("VoteUpdateVoteStateInstruction", {
|
|
1673
|
-
hash: string(),
|
|
1674
|
-
voteAccount: string(),
|
|
1675
|
-
voteAuthority: string(),
|
|
1676
|
-
voteStateUpdate: type(voteStateUpdate())
|
|
1677
|
-
}),
|
|
1678
|
-
parsedTransactionInstructionType("VoteUpdateVoteStateSwitchInstruction", {
|
|
1679
|
-
hash: string(),
|
|
1680
|
-
voteAccount: string(),
|
|
1681
|
-
voteAuthority: string(),
|
|
1682
|
-
voteStateUpdate: type(voteStateUpdate())
|
|
1683
|
-
}),
|
|
1684
|
-
parsedTransactionInstructionType("VoteCompactUpdateVoteStateInstruction", {
|
|
1685
|
-
hash: string(),
|
|
1686
|
-
voteAccount: string(),
|
|
1687
|
-
voteAuthority: string(),
|
|
1688
|
-
voteStateUpdate: type(voteStateUpdate())
|
|
1689
|
-
}),
|
|
1690
|
-
parsedTransactionInstructionType("VoteCompactUpdateVoteStateSwitchInstruction", {
|
|
1691
|
-
hash: string(),
|
|
1692
|
-
voteAccount: string(),
|
|
1693
|
-
voteAuthority: string(),
|
|
1694
|
-
voteStateUpdate: type(voteStateUpdate())
|
|
1695
|
-
}),
|
|
1696
|
-
parsedTransactionInstructionType("VoteWithdrawInstruction", {
|
|
1697
|
-
destination: string(),
|
|
1698
|
-
lamports: bigint(),
|
|
1699
|
-
voteAccount: string(),
|
|
1700
|
-
withdrawAuthority: string()
|
|
1701
|
-
}),
|
|
1702
|
-
parsedTransactionInstructionType("VoteUpdateValidatorIdentityInstruction", {
|
|
1703
|
-
newValidatorIdentity: string(),
|
|
1704
|
-
voteAccount: string(),
|
|
1705
|
-
withdrawAuthority: string()
|
|
1706
|
-
}),
|
|
1707
|
-
parsedTransactionInstructionType("VoteUpdateCommissionInstruction", {
|
|
1708
|
-
commission: string(),
|
|
1709
|
-
voteAccount: string(),
|
|
1710
|
-
withdrawAuthority: string()
|
|
1711
|
-
}),
|
|
1712
|
-
parsedTransactionInstructionType("VoteVoteSwitchInstruction", {
|
|
1713
|
-
clockSysvar: string(),
|
|
1714
|
-
hash: string(),
|
|
1715
|
-
slotHashesSysvar: string(),
|
|
1716
|
-
vote: type(vote()),
|
|
1717
|
-
voteAccount: string(),
|
|
1718
|
-
voteAuthority: string()
|
|
1719
|
-
}),
|
|
1720
|
-
parsedTransactionInstructionType("VoteAuthorizeCheckedInstruction", {
|
|
1721
|
-
authority: string(),
|
|
1722
|
-
authorityType: string(),
|
|
1723
|
-
clockSysvar: string(),
|
|
1724
|
-
newAuthority: string(),
|
|
1725
|
-
voteAccount: string()
|
|
1726
|
-
})
|
|
1727
|
-
];
|
|
1728
|
-
return memoisedParsedInstructionsVote;
|
|
1729
|
-
};
|
|
1730
|
-
var memoisedTransactionMetaInterfaceFields;
|
|
1731
|
-
var transactionMetaInterfaceFields = () => {
|
|
1732
|
-
if (!memoisedTransactionMetaInterfaceFields)
|
|
1733
|
-
memoisedTransactionMetaInterfaceFields = {
|
|
1734
|
-
computeUnitsConsumed: bigint(),
|
|
1735
|
-
err: string(),
|
|
1736
|
-
fee: bigint(),
|
|
1737
|
-
format: string(),
|
|
1738
|
-
loadedAddresses: type(transactionMetaLoadedAddresses()),
|
|
1739
|
-
logMessages: list(string()),
|
|
1740
|
-
postBalances: list(bigint()),
|
|
1741
|
-
postTokenBalances: list(type(tokenBalance())),
|
|
1742
|
-
preBalances: list(bigint()),
|
|
1743
|
-
preTokenBalances: list(type(tokenBalance())),
|
|
1744
|
-
returnData: type(returnData()),
|
|
1745
|
-
rewards: list(type(reward())),
|
|
1746
|
-
status: type(transactionStatus())
|
|
1747
|
-
};
|
|
1748
|
-
return memoisedTransactionMetaInterfaceFields;
|
|
1749
|
-
};
|
|
1750
|
-
var memoisedTransactionMetaInterface;
|
|
1751
|
-
var transactionMetaInterface = () => {
|
|
1752
|
-
if (!memoisedTransactionMetaInterface)
|
|
1753
|
-
memoisedTransactionMetaInterface = new GraphQLInterfaceType({
|
|
1754
|
-
fields: {
|
|
1755
|
-
...transactionMetaInterfaceFields()
|
|
1756
|
-
},
|
|
1757
|
-
name: "TransactionMeta",
|
|
1758
|
-
resolveType(meta) {
|
|
1759
|
-
if (meta.format === "parsed") {
|
|
1760
|
-
return "TransactionMetaParsed";
|
|
1761
|
-
}
|
|
1762
|
-
return "TransactionMetaUnparsed";
|
|
1763
|
-
}
|
|
1764
|
-
});
|
|
1765
|
-
return memoisedTransactionMetaInterface;
|
|
1766
|
-
};
|
|
1767
|
-
var transactionMetaType = (name, description, innerInstructions) => new GraphQLObjectType({
|
|
1768
|
-
description,
|
|
1769
|
-
fields: {
|
|
1770
|
-
...transactionMetaInterfaceFields(),
|
|
1771
|
-
innerInstructions
|
|
1772
|
-
},
|
|
1773
|
-
interfaces: [transactionMetaInterface()],
|
|
1774
|
-
name
|
|
1775
|
-
});
|
|
1776
|
-
var memoisedTransactionMetaUnparsed;
|
|
1777
|
-
var transactionMetaUnparsed = () => {
|
|
1778
|
-
if (!memoisedTransactionMetaUnparsed)
|
|
1779
|
-
memoisedTransactionMetaUnparsed = transactionMetaType(
|
|
1780
|
-
"TransactionMetaUnparsed",
|
|
1781
|
-
"Non-parsed transaction meta",
|
|
1782
|
-
list(
|
|
1783
|
-
object("TransactionMetaInnerInstructionsUnparsed", {
|
|
1784
|
-
index: number(),
|
|
1785
|
-
instructions: list(
|
|
1786
|
-
object("TransactionMetaInnerInstructionsUnparsedInstruction", {
|
|
1787
|
-
index: number(),
|
|
1788
|
-
instructions: list(type(transactionInstruction()))
|
|
1789
|
-
})
|
|
1790
|
-
)
|
|
1791
|
-
})
|
|
1792
|
-
)
|
|
1793
|
-
);
|
|
1794
|
-
return memoisedTransactionMetaUnparsed;
|
|
1795
|
-
};
|
|
1796
|
-
var memoisedTransactionMetaParsed;
|
|
1797
|
-
var transactionMetaParsed = () => {
|
|
1798
|
-
if (!memoisedTransactionMetaParsed)
|
|
1799
|
-
memoisedTransactionMetaParsed = transactionMetaType(
|
|
1800
|
-
"TransactionMetaParsed",
|
|
1801
|
-
"Parsed transaction meta",
|
|
1802
|
-
list(
|
|
1803
|
-
object("TransactionMetaInnerInstructionsParsed", {
|
|
1804
|
-
index: number(),
|
|
1805
|
-
instructions: list(type(parsedTransactionInstructionInterface()))
|
|
1806
|
-
})
|
|
1807
|
-
)
|
|
1808
|
-
);
|
|
1809
|
-
return memoisedTransactionMetaParsed;
|
|
1810
|
-
};
|
|
1811
|
-
var memoisedTransactionMessageInterfaceFields;
|
|
1812
|
-
var transactionMessageInterfaceFields = () => {
|
|
1813
|
-
if (!memoisedTransactionMessageInterfaceFields)
|
|
1814
|
-
memoisedTransactionMessageInterfaceFields = {
|
|
1815
|
-
addressTableLookups: list(type(addressTableLookup())),
|
|
1816
|
-
format: string(),
|
|
1817
|
-
header: object("TransactionJsonTransactionHeader", {
|
|
1818
|
-
numReadonlySignedAccounts: number(),
|
|
1819
|
-
numReadonlyUnsignedAccounts: number(),
|
|
1820
|
-
numRequiredSignatures: number()
|
|
1821
|
-
}),
|
|
1822
|
-
recentBlockhash: string()
|
|
1823
|
-
};
|
|
1824
|
-
return memoisedTransactionMessageInterfaceFields;
|
|
1825
|
-
};
|
|
1826
|
-
var memoisedTransactionMessageInterface;
|
|
1827
|
-
var transactionMessageInterface = () => {
|
|
1828
|
-
if (!memoisedTransactionMessageInterface)
|
|
1829
|
-
memoisedTransactionMessageInterface = new GraphQLInterfaceType({
|
|
1830
|
-
fields: {
|
|
1831
|
-
...transactionMessageInterfaceFields()
|
|
1832
|
-
},
|
|
1833
|
-
name: "TransactionMessage",
|
|
1834
|
-
resolveType(message) {
|
|
1835
|
-
if (message.format === "parsed") {
|
|
1836
|
-
return "TransactionMessageParsed";
|
|
1837
|
-
}
|
|
1838
|
-
return "TransactionMessageUnparsed";
|
|
1839
2372
|
}
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
}
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
)
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
)
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
}
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
2373
|
+
return "GenericInstruction";
|
|
2374
|
+
}
|
|
2375
|
+
},
|
|
2376
|
+
CreateLookupTableInstructionData: {
|
|
2377
|
+
lookupTableAccount: resolveAccount("lookupTableAccount"),
|
|
2378
|
+
lookupTableAuthority: resolveAccount("lookupTableAuthority"),
|
|
2379
|
+
payerAccount: resolveAccount("payerAccount"),
|
|
2380
|
+
systemProgram: resolveAccount("systemProgram")
|
|
2381
|
+
},
|
|
2382
|
+
ExtendLookupTableInstructionData: {
|
|
2383
|
+
lookupTableAccount: resolveAccount("lookupTableAccount"),
|
|
2384
|
+
lookupTableAuthority: resolveAccount("lookupTableAuthority"),
|
|
2385
|
+
payerAccount: resolveAccount("payerAccount"),
|
|
2386
|
+
systemProgram: resolveAccount("systemProgram")
|
|
2387
|
+
},
|
|
2388
|
+
FreezeLookupTableInstructionData: {
|
|
2389
|
+
lookupTableAccount: resolveAccount("lookupTableAccount"),
|
|
2390
|
+
lookupTableAuthority: resolveAccount("lookupTableAuthority")
|
|
2391
|
+
},
|
|
2392
|
+
DeactivateLookupTableInstructionData: {
|
|
2393
|
+
lookupTableAccount: resolveAccount("lookupTableAccount"),
|
|
2394
|
+
lookupTableAuthority: resolveAccount("lookupTableAuthority")
|
|
2395
|
+
},
|
|
2396
|
+
CloseLookupTableInstructionData: {
|
|
2397
|
+
lookupTableAccount: resolveAccount("lookupTableAccount"),
|
|
2398
|
+
lookupTableAuthority: resolveAccount("lookupTableAuthority"),
|
|
2399
|
+
recipient: resolveAccount("recipient")
|
|
2400
|
+
},
|
|
2401
|
+
BpfLoaderWriteInstructionData: {
|
|
2402
|
+
account: resolveAccount("account")
|
|
2403
|
+
},
|
|
2404
|
+
BpfLoaderFinalizeInstructionData: {
|
|
2405
|
+
account: resolveAccount("account")
|
|
2406
|
+
},
|
|
2407
|
+
BpfUpgradeableLoaderInitializeBufferInstructionData: {
|
|
2408
|
+
account: resolveAccount("account")
|
|
2409
|
+
},
|
|
2410
|
+
BpfUpgradeableLoaderWriteInstructionData: {
|
|
2411
|
+
account: resolveAccount("account"),
|
|
2412
|
+
authority: resolveAccount("authority")
|
|
2413
|
+
},
|
|
2414
|
+
BpfUpgradeableLoaderDeployWithMaxDataLenInstructionData: {
|
|
2415
|
+
authority: resolveAccount("authority"),
|
|
2416
|
+
bufferAccount: resolveAccount("bufferAccount"),
|
|
2417
|
+
payerAccount: resolveAccount("payerAccount"),
|
|
2418
|
+
programAccount: resolveAccount("programAccount"),
|
|
2419
|
+
programDataAccount: resolveAccount("programDataAccount")
|
|
2420
|
+
},
|
|
2421
|
+
BpfUpgradeableLoaderUpgradeInstructionData: {
|
|
2422
|
+
authority: resolveAccount("authority"),
|
|
2423
|
+
bufferAccount: resolveAccount("bufferAccount"),
|
|
2424
|
+
programAccount: resolveAccount("programAccount"),
|
|
2425
|
+
programDataAccount: resolveAccount("programDataAccount")
|
|
2426
|
+
},
|
|
2427
|
+
BpfUpgradeableLoaderSetAuthorityInstructionData: {
|
|
2428
|
+
account: resolveAccount("account"),
|
|
2429
|
+
authority: resolveAccount("authority"),
|
|
2430
|
+
newAuthority: resolveAccount("newAuthority")
|
|
2431
|
+
},
|
|
2432
|
+
BpfUpgradeableLoaderSetAuthorityCheckedInstructionData: {
|
|
2433
|
+
account: resolveAccount("account"),
|
|
2434
|
+
authority: resolveAccount("authority"),
|
|
2435
|
+
newAuthority: resolveAccount("newAuthority")
|
|
2436
|
+
},
|
|
2437
|
+
BpfUpgradeableLoaderCloseInstructionData: {
|
|
2438
|
+
account: resolveAccount("account"),
|
|
2439
|
+
authority: resolveAccount("authority"),
|
|
2440
|
+
programAccount: resolveAccount("programAccount"),
|
|
2441
|
+
recipient: resolveAccount("recipient")
|
|
2442
|
+
},
|
|
2443
|
+
BpfUpgradeableLoaderExtendProgramInstructionData: {
|
|
2444
|
+
payerAccount: resolveAccount("payerAccount"),
|
|
2445
|
+
programAccount: resolveAccount("programAccount"),
|
|
2446
|
+
programDataAccount: resolveAccount("programDataAccount"),
|
|
2447
|
+
systemProgram: resolveAccount("systemProgram")
|
|
2448
|
+
},
|
|
2449
|
+
SplAssociatedTokenCreateInstructionData: {
|
|
2450
|
+
account: resolveAccount("account"),
|
|
2451
|
+
mint: resolveAccount("mint"),
|
|
2452
|
+
source: resolveAccount("source"),
|
|
2453
|
+
systemProgram: resolveAccount("systemProgram"),
|
|
2454
|
+
tokenProgram: resolveAccount("tokenProgram"),
|
|
2455
|
+
wallet: resolveAccount("wallet")
|
|
2456
|
+
},
|
|
2457
|
+
SplAssociatedTokenCreateIdempotentInstructionData: {
|
|
2458
|
+
account: resolveAccount("account"),
|
|
2459
|
+
mint: resolveAccount("mint"),
|
|
2460
|
+
source: resolveAccount("source"),
|
|
2461
|
+
systemProgram: resolveAccount("systemProgram"),
|
|
2462
|
+
tokenProgram: resolveAccount("tokenProgram"),
|
|
2463
|
+
wallet: resolveAccount("wallet")
|
|
2464
|
+
},
|
|
2465
|
+
SplAssociatedTokenRecoverNestedInstructionData: {
|
|
2466
|
+
destination: resolveAccount("destination"),
|
|
2467
|
+
nestedMint: resolveAccount("nestedMint"),
|
|
2468
|
+
nestedOwner: resolveAccount("nestedOwner"),
|
|
2469
|
+
nestedSource: resolveAccount("nestedSource"),
|
|
2470
|
+
ownerMint: resolveAccount("ownerMint"),
|
|
2471
|
+
tokenProgram: resolveAccount("tokenProgram"),
|
|
2472
|
+
wallet: resolveAccount("wallet")
|
|
2473
|
+
},
|
|
2474
|
+
SplTokenInitializeMintInstructionData: {
|
|
2475
|
+
freezeAuthority: resolveAccount("freezeAuthority"),
|
|
2476
|
+
mint: resolveAccount("mint"),
|
|
2477
|
+
mintAuthority: resolveAccount("mintAuthority")
|
|
2478
|
+
},
|
|
2479
|
+
SplTokenInitializeMint2InstructionData: {
|
|
2480
|
+
freezeAuthority: resolveAccount("freezeAuthority"),
|
|
2481
|
+
mint: resolveAccount("mint"),
|
|
2482
|
+
mintAuthority: resolveAccount("mintAuthority")
|
|
2483
|
+
},
|
|
2484
|
+
SplTokenInitializeAccountInstructionData: {
|
|
2485
|
+
account: resolveAccount("account"),
|
|
2486
|
+
mint: resolveAccount("mint"),
|
|
2487
|
+
owner: resolveAccount("owner")
|
|
2488
|
+
},
|
|
2489
|
+
SplTokenInitializeAccount2InstructionData: {
|
|
2490
|
+
account: resolveAccount("account"),
|
|
2491
|
+
mint: resolveAccount("mint"),
|
|
2492
|
+
owner: resolveAccount("owner")
|
|
2493
|
+
},
|
|
2494
|
+
SplTokenInitializeAccount3InstructionData: {
|
|
2495
|
+
account: resolveAccount("account"),
|
|
2496
|
+
mint: resolveAccount("mint"),
|
|
2497
|
+
owner: resolveAccount("owner")
|
|
2498
|
+
},
|
|
2499
|
+
SplTokenInitializeMultisigInstructionData: {
|
|
2500
|
+
multisig: resolveAccount("multisig")
|
|
2501
|
+
},
|
|
2502
|
+
SplTokenInitializeMultisig2InstructionData: {
|
|
2503
|
+
multisig: resolveAccount("multisig")
|
|
2504
|
+
},
|
|
2505
|
+
SplTokenTransferInstructionData: {
|
|
2506
|
+
authority: resolveAccount("authority"),
|
|
2507
|
+
destination: resolveAccount("destination"),
|
|
2508
|
+
multisigAuthority: resolveAccount("multisigAuthority"),
|
|
2509
|
+
source: resolveAccount("source")
|
|
2510
|
+
},
|
|
2511
|
+
SplTokenApproveInstructionData: {
|
|
2512
|
+
delegate: resolveAccount("delegate"),
|
|
2513
|
+
multisigOwner: resolveAccount("multisigOwner"),
|
|
2514
|
+
owner: resolveAccount("owner"),
|
|
2515
|
+
source: resolveAccount("source")
|
|
2516
|
+
},
|
|
2517
|
+
SplTokenRevokeInstructionData: {
|
|
2518
|
+
multisigOwner: resolveAccount("multisigOwner"),
|
|
2519
|
+
owner: resolveAccount("owner"),
|
|
2520
|
+
source: resolveAccount("source")
|
|
2521
|
+
},
|
|
2522
|
+
SplTokenSetAuthorityInstructionData: {
|
|
2523
|
+
authority: resolveAccount("authority"),
|
|
2524
|
+
multisigAuthority: resolveAccount("multisigAuthority"),
|
|
2525
|
+
newAuthority: resolveAccount("newAuthority")
|
|
2526
|
+
},
|
|
2527
|
+
SplTokenMintToInstructionData: {
|
|
2528
|
+
account: resolveAccount("account"),
|
|
2529
|
+
authority: resolveAccount("authority"),
|
|
2530
|
+
mint: resolveAccount("mint"),
|
|
2531
|
+
mintAuthority: resolveAccount("mintAuthority"),
|
|
2532
|
+
multisigMintAuthority: resolveAccount("multisigMintAuthority")
|
|
2533
|
+
},
|
|
2534
|
+
SplTokenBurnInstructionData: {
|
|
2535
|
+
account: resolveAccount("account"),
|
|
2536
|
+
authority: resolveAccount("authority"),
|
|
2537
|
+
mint: resolveAccount("mint"),
|
|
2538
|
+
multisigAuthority: resolveAccount("multisigAuthority")
|
|
2539
|
+
},
|
|
2540
|
+
SplTokenCloseAccountInstructionData: {
|
|
2541
|
+
account: resolveAccount("account"),
|
|
2542
|
+
destination: resolveAccount("destination"),
|
|
2543
|
+
multisigOwner: resolveAccount("multisigOwner"),
|
|
2544
|
+
owner: resolveAccount("owner")
|
|
2545
|
+
},
|
|
2546
|
+
SplTokenFreezeAccountInstructionData: {
|
|
2547
|
+
account: resolveAccount("account"),
|
|
2548
|
+
freezeAuthority: resolveAccount("freezeAuthority"),
|
|
2549
|
+
mint: resolveAccount("mint"),
|
|
2550
|
+
multisigFreezeAuthority: resolveAccount("multisigFreezeAuthority")
|
|
2551
|
+
},
|
|
2552
|
+
SplTokenThawAccountInstructionData: {
|
|
2553
|
+
account: resolveAccount("account"),
|
|
2554
|
+
freezeAuthority: resolveAccount("freezeAuthority"),
|
|
2555
|
+
mint: resolveAccount("mint"),
|
|
2556
|
+
multisigFreezeAuthority: resolveAccount("multisigFreezeAuthority")
|
|
2557
|
+
},
|
|
2558
|
+
SplTokenTransferCheckedInstructionData: {
|
|
2559
|
+
authority: resolveAccount("authority"),
|
|
2560
|
+
destination: resolveAccount("destination"),
|
|
2561
|
+
mint: resolveAccount("mint"),
|
|
2562
|
+
multisigAuthority: resolveAccount("multisigAuthority"),
|
|
2563
|
+
source: resolveAccount("source")
|
|
2564
|
+
},
|
|
2565
|
+
SplTokenApproveCheckedInstructionData: {
|
|
2566
|
+
delegate: resolveAccount("delegate"),
|
|
2567
|
+
mint: resolveAccount("mint"),
|
|
2568
|
+
multisigOwner: resolveAccount("multisigOwner"),
|
|
2569
|
+
owner: resolveAccount("owner"),
|
|
2570
|
+
source: resolveAccount("source")
|
|
2571
|
+
},
|
|
2572
|
+
SplTokenMintToCheckedInstructionData: {
|
|
2573
|
+
account: resolveAccount("account"),
|
|
2574
|
+
authority: resolveAccount("authority"),
|
|
2575
|
+
mint: resolveAccount("mint"),
|
|
2576
|
+
mintAuthority: resolveAccount("mintAuthority"),
|
|
2577
|
+
multisigMintAuthority: resolveAccount("multisigMintAuthority")
|
|
2578
|
+
},
|
|
2579
|
+
SplTokenBurnCheckedInstructionData: {
|
|
2580
|
+
account: resolveAccount("account"),
|
|
2581
|
+
authority: resolveAccount("authority"),
|
|
2582
|
+
mint: resolveAccount("mint"),
|
|
2583
|
+
multisigAuthority: resolveAccount("multisigAuthority")
|
|
2584
|
+
},
|
|
2585
|
+
SplTokenSyncNativeInstructionData: {
|
|
2586
|
+
account: resolveAccount("account")
|
|
2587
|
+
},
|
|
2588
|
+
SplTokenGetAccountDataSizeInstructionData: {
|
|
2589
|
+
mint: resolveAccount("mint")
|
|
2590
|
+
},
|
|
2591
|
+
SplTokenAmountToUiAmountInstructionData: {
|
|
2592
|
+
mint: resolveAccount("mint")
|
|
2593
|
+
},
|
|
2594
|
+
SplTokenUiAmountToAmountInstructionData: {
|
|
2595
|
+
mint: resolveAccount("mint")
|
|
2596
|
+
},
|
|
2597
|
+
SplTokenInitializeMintCloseAuthorityInstructionData: {
|
|
2598
|
+
mint: resolveAccount("mint"),
|
|
2599
|
+
newAuthority: resolveAccount("newAuthority")
|
|
2600
|
+
},
|
|
2601
|
+
Lockup: {
|
|
2602
|
+
custodian: resolveAccount("custodian")
|
|
2603
|
+
},
|
|
2604
|
+
StakeInitializeInstructionDataAuthorized: {
|
|
2605
|
+
staker: resolveAccount("staker"),
|
|
2606
|
+
withdrawer: resolveAccount("withdrawer")
|
|
2607
|
+
},
|
|
2608
|
+
StakeInitializeInstructionData: {
|
|
2609
|
+
stakeAccount: resolveAccount("stakeAccount")
|
|
2610
|
+
},
|
|
2611
|
+
StakeAuthorizeInstructionData: {
|
|
2612
|
+
authority: resolveAccount("authority"),
|
|
2613
|
+
custodian: resolveAccount("custodian"),
|
|
2614
|
+
newAuthority: resolveAccount("newAuthority"),
|
|
2615
|
+
stakeAccount: resolveAccount("stakeAccount")
|
|
2616
|
+
},
|
|
2617
|
+
StakeDelegateStakeInstructionData: {
|
|
2618
|
+
stakeAccount: resolveAccount("stakeAccount"),
|
|
2619
|
+
stakeAuthority: resolveAccount("stakeAuthority"),
|
|
2620
|
+
stakeConfigAccount: resolveAccount("stakeConfigAccount"),
|
|
2621
|
+
voteAccount: resolveAccount("voteAccount")
|
|
2622
|
+
},
|
|
2623
|
+
StakeSplitInstructionData: {
|
|
2624
|
+
newSplitAccount: resolveAccount("newSplitAccount"),
|
|
2625
|
+
stakeAccount: resolveAccount("stakeAccount"),
|
|
2626
|
+
stakeAuthority: resolveAccount("stakeAuthority")
|
|
2627
|
+
},
|
|
2628
|
+
StakeWithdrawInstructionData: {
|
|
2629
|
+
destination: resolveAccount("destination"),
|
|
2630
|
+
stakeAccount: resolveAccount("stakeAccount"),
|
|
2631
|
+
withdrawAuthority: resolveAccount("withdrawAuthority")
|
|
2632
|
+
},
|
|
2633
|
+
StakeDeactivateInstructionData: {
|
|
2634
|
+
stakeAccount: resolveAccount("stakeAccount"),
|
|
2635
|
+
stakeAuthority: resolveAccount("stakeAuthority")
|
|
2636
|
+
},
|
|
2637
|
+
StakeSetLockupInstructionData: {
|
|
2638
|
+
custodian: resolveAccount("custodian"),
|
|
2639
|
+
stakeAccount: resolveAccount("stakeAccount")
|
|
2640
|
+
},
|
|
2641
|
+
StakeMergeInstructionData: {
|
|
2642
|
+
destination: resolveAccount("destination"),
|
|
2643
|
+
source: resolveAccount("source"),
|
|
2644
|
+
stakeAuthority: resolveAccount("stakeAuthority")
|
|
2645
|
+
},
|
|
2646
|
+
StakeAuthorizeWithSeedInstructionData: {
|
|
2647
|
+
authorityBase: resolveAccount("authorityBase"),
|
|
2648
|
+
authorityOwner: resolveAccount("authorityOwner"),
|
|
2649
|
+
custodian: resolveAccount("custodian"),
|
|
2650
|
+
newAuthorized: resolveAccount("newAuthorized"),
|
|
2651
|
+
stakeAccount: resolveAccount("stakeAccount")
|
|
2652
|
+
},
|
|
2653
|
+
StakeInitializeCheckedInstructionDataAuthorized: {
|
|
2654
|
+
stakeAccount: resolveAccount("stakeAccount"),
|
|
2655
|
+
staker: resolveAccount("staker"),
|
|
2656
|
+
withdrawer: resolveAccount("withdrawer")
|
|
2657
|
+
},
|
|
2658
|
+
StakeAuthorizeCheckedInstructionData: {
|
|
2659
|
+
authority: resolveAccount("authority"),
|
|
2660
|
+
custodian: resolveAccount("custodian"),
|
|
2661
|
+
newAuthority: resolveAccount("newAuthority"),
|
|
2662
|
+
stakeAccount: resolveAccount("stakeAccount")
|
|
2663
|
+
},
|
|
2664
|
+
StakeAuthorizeCheckedWithSeedInstructionData: {
|
|
2665
|
+
authorityBase: resolveAccount("authorityBase"),
|
|
2666
|
+
authorityOwner: resolveAccount("authorityOwner"),
|
|
2667
|
+
custodian: resolveAccount("custodian"),
|
|
2668
|
+
newAuthorized: resolveAccount("newAuthorized"),
|
|
2669
|
+
stakeAccount: resolveAccount("stakeAccount")
|
|
2670
|
+
},
|
|
2671
|
+
StakeSetLockupCheckedInstructionData: {
|
|
2672
|
+
custodian: resolveAccount("custodian"),
|
|
2673
|
+
stakeAccount: resolveAccount("stakeAccount")
|
|
2674
|
+
},
|
|
2675
|
+
StakeDeactivateDelinquentInstructionData: {
|
|
2676
|
+
referenceVoteAccount: resolveAccount("referenceVoteAccount"),
|
|
2677
|
+
stakeAccount: resolveAccount("stakeAccount"),
|
|
2678
|
+
voteAccount: resolveAccount("voteAccount")
|
|
2679
|
+
},
|
|
2680
|
+
StakeRedelegateInstructionData: {
|
|
2681
|
+
newStakeAccount: resolveAccount("newStakeAccount"),
|
|
2682
|
+
stakeAccount: resolveAccount("stakeAccount"),
|
|
2683
|
+
stakeAuthority: resolveAccount("stakeAuthority"),
|
|
2684
|
+
stakeConfigAccount: resolveAccount("stakeConfigAccount"),
|
|
2685
|
+
voteAccount: resolveAccount("voteAccount")
|
|
2686
|
+
},
|
|
2687
|
+
CreateAccountInstructionData: {
|
|
2688
|
+
newAccount: resolveAccount("newAccount"),
|
|
2689
|
+
owner: resolveAccount("owner"),
|
|
2690
|
+
source: resolveAccount("source")
|
|
2691
|
+
},
|
|
2692
|
+
AssignInstructionData: {
|
|
2693
|
+
account: resolveAccount("account"),
|
|
2694
|
+
owner: resolveAccount("owner")
|
|
2695
|
+
},
|
|
2696
|
+
TransferInstructionData: {
|
|
2697
|
+
destination: resolveAccount("destination"),
|
|
2698
|
+
source: resolveAccount("source")
|
|
2699
|
+
},
|
|
2700
|
+
CreateAccountWithSeedInstructionData: {
|
|
2701
|
+
base: resolveAccount("base"),
|
|
2702
|
+
owner: resolveAccount("owner"),
|
|
2703
|
+
seed: resolveAccount("seed")
|
|
2704
|
+
},
|
|
2705
|
+
AdvanceNonceAccountInstructionData: {
|
|
2706
|
+
nonceAccount: resolveAccount("nonceAccount"),
|
|
2707
|
+
nonceAuthority: resolveAccount("nonceAuthority")
|
|
2708
|
+
},
|
|
2709
|
+
WithdrawNonceAccountInstructionData: {
|
|
2710
|
+
destination: resolveAccount("destination"),
|
|
2711
|
+
nonceAccount: resolveAccount("nonceAccount"),
|
|
2712
|
+
nonceAuthority: resolveAccount("nonceAuthority")
|
|
2713
|
+
},
|
|
2714
|
+
InitializeNonceAccountInstructionData: {
|
|
2715
|
+
nonceAccount: resolveAccount("nonceAccount"),
|
|
2716
|
+
nonceAuthority: resolveAccount("nonceAuthority")
|
|
2717
|
+
},
|
|
2718
|
+
AuthorizeNonceAccountInstructionData: {
|
|
2719
|
+
newAuthorized: resolveAccount("newAuthorized"),
|
|
2720
|
+
nonceAccount: resolveAccount("nonceAccount"),
|
|
2721
|
+
nonceAuthority: resolveAccount("nonceAuthority")
|
|
2722
|
+
},
|
|
2723
|
+
UpgradeNonceAccountInstructionData: {
|
|
2724
|
+
nonceAccount: resolveAccount("nonceAccount"),
|
|
2725
|
+
nonceAuthority: resolveAccount("nonceAuthority")
|
|
2726
|
+
},
|
|
2727
|
+
AllocateInstructionData: {
|
|
2728
|
+
account: resolveAccount("account")
|
|
2729
|
+
},
|
|
2730
|
+
AllocateWithSeedInstructionData: {
|
|
2731
|
+
account: resolveAccount("account"),
|
|
2732
|
+
owner: resolveAccount("owner")
|
|
2733
|
+
},
|
|
2734
|
+
AssignWithSeedInstructionData: {
|
|
2735
|
+
account: resolveAccount("account"),
|
|
2736
|
+
owner: resolveAccount("owner")
|
|
2737
|
+
},
|
|
2738
|
+
TransferWithSeedInstructionData: {
|
|
2739
|
+
destination: resolveAccount("destination"),
|
|
2740
|
+
source: resolveAccount("source"),
|
|
2741
|
+
sourceOwner: resolveAccount("sourceOwner")
|
|
2742
|
+
},
|
|
2743
|
+
VoteInitializeAccountInstructionData: {
|
|
2744
|
+
authorizedVoter: resolveAccount("authorizedVoter"),
|
|
2745
|
+
authorizedWithdrawer: resolveAccount("authorizedWithdrawer"),
|
|
2746
|
+
node: resolveAccount("node"),
|
|
2747
|
+
voteAccount: resolveAccount("voteAccount")
|
|
2748
|
+
},
|
|
2749
|
+
VoteAuthorizeInstructionData: {
|
|
2750
|
+
authority: resolveAccount("authority"),
|
|
2751
|
+
newAuthority: resolveAccount("newAuthority"),
|
|
2752
|
+
voteAccount: resolveAccount("voteAccount")
|
|
2753
|
+
},
|
|
2754
|
+
VoteAuthorizeWithSeedInstructionData: {
|
|
2755
|
+
authorityOwner: resolveAccount("authorityOwner"),
|
|
2756
|
+
newAuthority: resolveAccount("newAuthority"),
|
|
2757
|
+
voteAccount: resolveAccount("voteAccount")
|
|
2758
|
+
},
|
|
2759
|
+
VoteAuthorizeCheckedWithSeedInstructionData: {
|
|
2760
|
+
authorityOwner: resolveAccount("authorityOwner"),
|
|
2761
|
+
newAuthority: resolveAccount("newAuthority"),
|
|
2762
|
+
voteAccount: resolveAccount("voteAccount")
|
|
2763
|
+
},
|
|
2764
|
+
VoteVoteInstructionData: {
|
|
2765
|
+
voteAccount: resolveAccount("voteAccount"),
|
|
2766
|
+
voteAuthority: resolveAccount("voteAuthority")
|
|
2767
|
+
},
|
|
2768
|
+
VoteUpdateVoteStateInstructionData: {
|
|
2769
|
+
voteAccount: resolveAccount("voteAccount"),
|
|
2770
|
+
voteAuthority: resolveAccount("voteAuthority")
|
|
2771
|
+
},
|
|
2772
|
+
VoteUpdateVoteStateSwitchInstructionData: {
|
|
2773
|
+
voteAccount: resolveAccount("voteAccount"),
|
|
2774
|
+
voteAuthority: resolveAccount("voteAuthority")
|
|
2775
|
+
},
|
|
2776
|
+
VoteCompactUpdateVoteStateInstructionData: {
|
|
2777
|
+
voteAccount: resolveAccount("voteAccount"),
|
|
2778
|
+
voteAuthority: resolveAccount("voteAuthority")
|
|
2779
|
+
},
|
|
2780
|
+
VoteCompactUpdateVoteStateSwitchInstructionData: {
|
|
2781
|
+
voteAccount: resolveAccount("voteAccount"),
|
|
2782
|
+
voteAuthority: resolveAccount("voteAuthority")
|
|
2783
|
+
},
|
|
2784
|
+
VoteWithdrawInstructionData: {
|
|
2785
|
+
voteAccount: resolveAccount("voteAccount"),
|
|
2786
|
+
withdrawAuthority: resolveAccount("withdrawAuthority")
|
|
2787
|
+
},
|
|
2788
|
+
VoteUpdateValidatorIdentityInstructionData: {
|
|
2789
|
+
newValidatorIdentity: resolveAccount("newValidatorIdentity"),
|
|
2790
|
+
voteAccount: resolveAccount("voteAccount"),
|
|
2791
|
+
withdrawAuthority: resolveAccount("withdrawAuthority")
|
|
2792
|
+
},
|
|
2793
|
+
VoteUpdateCommissionInstructionData: {
|
|
2794
|
+
voteAccount: resolveAccount("voteAccount"),
|
|
2795
|
+
withdrawAuthority: resolveAccount("withdrawAuthority")
|
|
2796
|
+
},
|
|
2797
|
+
VoteVoteSwitchInstructionData: {
|
|
2798
|
+
voteAccount: resolveAccount("voteAccount"),
|
|
2799
|
+
voteAuthority: resolveAccount("voteAuthority")
|
|
2800
|
+
},
|
|
2801
|
+
VoteAuthorizeCheckedInstructionData: {
|
|
2802
|
+
authority: resolveAccount("authority"),
|
|
2803
|
+
newAuthority: resolveAccount("newAuthority"),
|
|
2804
|
+
voteAccount: resolveAccount("voteAccount")
|
|
2805
|
+
}
|
|
1904
2806
|
};
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
2807
|
+
|
|
2808
|
+
// src/schema/transaction.ts
|
|
2809
|
+
var transactionTypeDefs = (
|
|
2810
|
+
/* GraphQL */
|
|
2811
|
+
`
|
|
2812
|
+
type TransactionStatusOk {
|
|
2813
|
+
Ok: String
|
|
2814
|
+
}
|
|
2815
|
+
type TransactionStatusErr {
|
|
2816
|
+
Err: String
|
|
2817
|
+
}
|
|
2818
|
+
union TransactionStatus = TransactionStatusOk | TransactionStatusErr
|
|
2819
|
+
|
|
2820
|
+
type TransactionLoadedAddresses {
|
|
2821
|
+
readonly: [String]
|
|
2822
|
+
writable: [String]
|
|
2823
|
+
}
|
|
2824
|
+
|
|
2825
|
+
type TransactionInnerInstruction {
|
|
2826
|
+
index: Int
|
|
2827
|
+
instructions: [TransactionInstruction]
|
|
2828
|
+
}
|
|
2829
|
+
|
|
2830
|
+
type TransactionMeta {
|
|
2831
|
+
computeUnitsConsumed: BigInt
|
|
2832
|
+
err: String
|
|
2833
|
+
fee: BigInt
|
|
2834
|
+
innerInstructions: [TransactionInnerInstruction]
|
|
2835
|
+
loadedAddresses: TransactionLoadedAddresses
|
|
2836
|
+
logMessages: [String]
|
|
2837
|
+
postBalances: [BigInt]
|
|
2838
|
+
postTokenBalances: [TokenBalance]
|
|
2839
|
+
preBalances: [BigInt]
|
|
2840
|
+
preTokenBalances: [TokenBalance]
|
|
2841
|
+
returnData: ReturnData
|
|
2842
|
+
rewards: [Reward]
|
|
2843
|
+
status: TransactionStatus
|
|
2844
|
+
}
|
|
2845
|
+
|
|
2846
|
+
type TransactionMessageAccountKey {
|
|
2847
|
+
pubkey: String
|
|
2848
|
+
signer: Boolean
|
|
2849
|
+
source: String
|
|
2850
|
+
writable: Boolean
|
|
2851
|
+
}
|
|
2852
|
+
|
|
2853
|
+
type TransactionMessageAddressTableLookup {
|
|
2854
|
+
accountKey: String
|
|
2855
|
+
readableIndexes: [Int]
|
|
2856
|
+
writableIndexes: [Int]
|
|
2857
|
+
}
|
|
2858
|
+
|
|
2859
|
+
type TransactionMessageHeader {
|
|
2860
|
+
numReadonlySignedAccounts: Int
|
|
2861
|
+
numReadonlyUnsignedAccounts: Int
|
|
2862
|
+
numRequiredSignatures: Int
|
|
2863
|
+
}
|
|
2864
|
+
|
|
2865
|
+
type TransactionMessage {
|
|
2866
|
+
accountKeys: [TransactionMessageAccountKey]
|
|
2867
|
+
addressTableLookups: [TransactionMessageAddressTableLookup]
|
|
2868
|
+
header: TransactionMessageHeader
|
|
2869
|
+
instructions: [TransactionInstruction]
|
|
2870
|
+
recentBlockhash: String
|
|
2871
|
+
}
|
|
2872
|
+
|
|
2873
|
+
# Transaction interface
|
|
2874
|
+
interface Transaction {
|
|
2875
|
+
blockTime: String
|
|
2876
|
+
encoding: String
|
|
2877
|
+
meta: TransactionMeta
|
|
2878
|
+
slot: BigInt
|
|
2879
|
+
version: String
|
|
2880
|
+
}
|
|
2881
|
+
|
|
2882
|
+
# A transaction with base58 encoded data
|
|
2883
|
+
type TransactionBase58 implements Transaction {
|
|
2884
|
+
blockTime: String
|
|
2885
|
+
data: String
|
|
2886
|
+
encoding: String
|
|
2887
|
+
meta: TransactionMeta
|
|
2888
|
+
slot: BigInt
|
|
2889
|
+
version: String
|
|
2890
|
+
}
|
|
2891
|
+
|
|
2892
|
+
# A transaction with base64 encoded data
|
|
2893
|
+
type TransactionBase64 implements Transaction {
|
|
2894
|
+
blockTime: String
|
|
2895
|
+
data: String
|
|
2896
|
+
encoding: String
|
|
2897
|
+
meta: TransactionMeta
|
|
2898
|
+
slot: BigInt
|
|
2899
|
+
version: String
|
|
2900
|
+
}
|
|
2901
|
+
|
|
2902
|
+
# A transaction with JSON encoded data
|
|
2903
|
+
type TransactionDataParsed {
|
|
2904
|
+
message: TransactionMessage
|
|
2905
|
+
signatures: [String]
|
|
2906
|
+
}
|
|
2907
|
+
type TransactionParsed implements Transaction {
|
|
2908
|
+
blockTime: String
|
|
2909
|
+
data: TransactionDataParsed
|
|
2910
|
+
encoding: String
|
|
2911
|
+
meta: TransactionMeta
|
|
2912
|
+
slot: BigInt
|
|
2913
|
+
version: String
|
|
2914
|
+
}
|
|
2915
|
+
`
|
|
2916
|
+
);
|
|
2917
|
+
var transactionResolvers = {
|
|
2918
|
+
Transaction: {
|
|
2919
|
+
__resolveType(transaction) {
|
|
2920
|
+
switch (transaction.encoding) {
|
|
2921
|
+
case "base58":
|
|
1915
2922
|
return "TransactionBase58";
|
|
1916
|
-
|
|
1917
|
-
if (transaction.encoding === "base64") {
|
|
2923
|
+
case "base64":
|
|
1918
2924
|
return "TransactionBase64";
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
return "TransactionJson";
|
|
1922
|
-
}
|
|
1923
|
-
return "TransactionJsonParsed";
|
|
2925
|
+
default:
|
|
2926
|
+
return "TransactionParsed";
|
|
1924
2927
|
}
|
|
1925
|
-
}
|
|
1926
|
-
return memoisedTransactionInterface;
|
|
1927
|
-
};
|
|
1928
|
-
var transactionType = (name, description, transaction) => new GraphQLObjectType({
|
|
1929
|
-
description,
|
|
1930
|
-
fields: {
|
|
1931
|
-
...transactionInterfaceFields(),
|
|
1932
|
-
transaction
|
|
1933
|
-
},
|
|
1934
|
-
interfaces: [transactionInterface()],
|
|
1935
|
-
name
|
|
1936
|
-
});
|
|
1937
|
-
var memoisedTransactionBase58;
|
|
1938
|
-
var transactionBase58 = () => {
|
|
1939
|
-
if (!memoisedTransactionBase58)
|
|
1940
|
-
memoisedTransactionBase58 = transactionType(
|
|
1941
|
-
"TransactionBase58",
|
|
1942
|
-
"A Solana transaction as base58 encoded data",
|
|
1943
|
-
string()
|
|
1944
|
-
);
|
|
1945
|
-
return memoisedTransactionBase58;
|
|
1946
|
-
};
|
|
1947
|
-
var memoisedTransactionBase64;
|
|
1948
|
-
var transactionBase64 = () => {
|
|
1949
|
-
if (!memoisedTransactionBase64)
|
|
1950
|
-
memoisedTransactionBase64 = transactionType(
|
|
1951
|
-
"TransactionBase64",
|
|
1952
|
-
"A Solana transaction as base64 encoded data",
|
|
1953
|
-
string()
|
|
1954
|
-
);
|
|
1955
|
-
return memoisedTransactionBase64;
|
|
1956
|
-
};
|
|
1957
|
-
var memoisedTransactionJson;
|
|
1958
|
-
var transactionJson = () => {
|
|
1959
|
-
if (!memoisedTransactionJson)
|
|
1960
|
-
memoisedTransactionJson = transactionType(
|
|
1961
|
-
"TransactionJson",
|
|
1962
|
-
"A Solana transaction as a JSON object",
|
|
1963
|
-
type(transactionTransaction())
|
|
1964
|
-
);
|
|
1965
|
-
return memoisedTransactionJson;
|
|
1966
|
-
};
|
|
1967
|
-
var memoisedTransactionJsonParsed;
|
|
1968
|
-
var transactionJsonParsed = () => {
|
|
1969
|
-
if (!memoisedTransactionJsonParsed)
|
|
1970
|
-
memoisedTransactionJsonParsed = transactionType(
|
|
1971
|
-
"TransactionJsonParsed",
|
|
1972
|
-
"A Solana transaction as a parsed JSON object",
|
|
1973
|
-
type(transactionTransaction())
|
|
1974
|
-
);
|
|
1975
|
-
return memoisedTransactionJsonParsed;
|
|
1976
|
-
};
|
|
1977
|
-
var memoisedTransactionTypes;
|
|
1978
|
-
var transactionTypes = () => {
|
|
1979
|
-
if (!memoisedTransactionTypes)
|
|
1980
|
-
memoisedTransactionTypes = [
|
|
1981
|
-
partiallyDecodedTransactionInstruction(),
|
|
1982
|
-
...parsedInstructionsAddressLookupTable(),
|
|
1983
|
-
...parsedInstructionsBpfLoader(),
|
|
1984
|
-
...parsedInstructionsBpfUpgradeableLoader(),
|
|
1985
|
-
...parsedInstructionsStake(),
|
|
1986
|
-
...parsedInstructionsSplAssociatedToken(),
|
|
1987
|
-
parsedInstructionSplMemo(),
|
|
1988
|
-
...parsedInstructionsSplToken(),
|
|
1989
|
-
...parsedInstructionsSystem(),
|
|
1990
|
-
...parsedInstructionsVote(),
|
|
1991
|
-
transactionMetaUnparsed(),
|
|
1992
|
-
transactionMetaParsed(),
|
|
1993
|
-
transactionMessageUnparsed(),
|
|
1994
|
-
transactionMessageParsed(),
|
|
1995
|
-
transactionBase58(),
|
|
1996
|
-
transactionBase64(),
|
|
1997
|
-
transactionJson(),
|
|
1998
|
-
transactionJsonParsed()
|
|
1999
|
-
];
|
|
2000
|
-
return memoisedTransactionTypes;
|
|
2001
|
-
};
|
|
2002
|
-
|
|
2003
|
-
// src/schema/transaction/query.ts
|
|
2004
|
-
var transactionQuery = () => ({
|
|
2005
|
-
transaction: {
|
|
2006
|
-
args: {
|
|
2007
|
-
commitment: type(commitmentInputType()),
|
|
2008
|
-
encoding: type(transactionEncodingInputType()),
|
|
2009
|
-
maxSupportedTransactionVersion: type(maxSupportedTransactionVersionInputType()),
|
|
2010
|
-
signature: nonNull(string())
|
|
2011
|
-
},
|
|
2012
|
-
resolve: (_parent, args, context) => context.resolveTransaction(args),
|
|
2013
|
-
type: transactionInterface()
|
|
2928
|
+
}
|
|
2014
2929
|
}
|
|
2015
|
-
});
|
|
2016
|
-
|
|
2017
|
-
// src/schema/block/types.ts
|
|
2018
|
-
var memoisedTransactionForAccounts;
|
|
2019
|
-
var transactionForAccounts = () => {
|
|
2020
|
-
if (!memoisedTransactionForAccounts)
|
|
2021
|
-
memoisedTransactionForAccounts = new GraphQLObjectType({
|
|
2022
|
-
fields: {
|
|
2023
|
-
meta: object("TransactionMetaForAccounts", {
|
|
2024
|
-
computeUnitsUsed: bigint(),
|
|
2025
|
-
err: string(),
|
|
2026
|
-
fee: bigint(),
|
|
2027
|
-
format: string(),
|
|
2028
|
-
loadedAddresses: type(transactionMetaLoadedAddresses()),
|
|
2029
|
-
logMessages: list(string()),
|
|
2030
|
-
postBalances: list(bigint()),
|
|
2031
|
-
postTokenBalances: list(type(tokenBalance())),
|
|
2032
|
-
preBalances: list(bigint()),
|
|
2033
|
-
preTokenBalances: list(type(tokenBalance())),
|
|
2034
|
-
returnData: type(returnData()),
|
|
2035
|
-
rewards: list(type(reward())),
|
|
2036
|
-
status: type(transactionStatus())
|
|
2037
|
-
}),
|
|
2038
|
-
transaction: type(transactionInterface()),
|
|
2039
|
-
// TODO
|
|
2040
|
-
version: string()
|
|
2041
|
-
},
|
|
2042
|
-
name: "TransactionForAccounts"
|
|
2043
|
-
});
|
|
2044
|
-
return memoisedTransactionForAccounts;
|
|
2045
|
-
};
|
|
2046
|
-
var memoisedBlockInterfaceFields;
|
|
2047
|
-
var blockInterfaceFields = () => {
|
|
2048
|
-
if (!memoisedBlockInterfaceFields)
|
|
2049
|
-
memoisedBlockInterfaceFields = {
|
|
2050
|
-
blockHeight: bigint(),
|
|
2051
|
-
blockTime: bigint(),
|
|
2052
|
-
blockhash: string(),
|
|
2053
|
-
parentSlot: bigint(),
|
|
2054
|
-
previousBlockhash: string(),
|
|
2055
|
-
rewards: list(type(reward()))
|
|
2056
|
-
};
|
|
2057
|
-
return memoisedBlockInterfaceFields;
|
|
2058
|
-
};
|
|
2059
|
-
var memoisedBlockInterface;
|
|
2060
|
-
var blockInterface = () => {
|
|
2061
|
-
if (!memoisedBlockInterface)
|
|
2062
|
-
memoisedBlockInterface = new GraphQLInterfaceType({
|
|
2063
|
-
fields: {
|
|
2064
|
-
...blockInterfaceFields()
|
|
2065
|
-
},
|
|
2066
|
-
name: "Block",
|
|
2067
|
-
resolveType(block) {
|
|
2068
|
-
if (block.transactionDetails === "signatures") {
|
|
2069
|
-
return "BlockWithSignatures";
|
|
2070
|
-
}
|
|
2071
|
-
if (block.transactionDetails === "accounts") {
|
|
2072
|
-
return "BlockWithAccounts";
|
|
2073
|
-
}
|
|
2074
|
-
if (block.transactionDetails === "none") {
|
|
2075
|
-
return "BlockWithNoTransactions";
|
|
2076
|
-
}
|
|
2077
|
-
return "BlockWithTransactions";
|
|
2078
|
-
}
|
|
2079
|
-
});
|
|
2080
|
-
return memoisedBlockInterface;
|
|
2081
|
-
};
|
|
2082
|
-
var memoisedBlockWithNoTransactions;
|
|
2083
|
-
var blockWithNoTransactions = () => {
|
|
2084
|
-
if (!memoisedBlockWithNoTransactions)
|
|
2085
|
-
memoisedBlockWithNoTransactions = new GraphQLObjectType({
|
|
2086
|
-
fields: {
|
|
2087
|
-
...blockInterfaceFields()
|
|
2088
|
-
},
|
|
2089
|
-
interfaces: [blockInterface()],
|
|
2090
|
-
name: "BlockWithNoTransactions"
|
|
2091
|
-
});
|
|
2092
|
-
return memoisedBlockWithNoTransactions;
|
|
2093
|
-
};
|
|
2094
|
-
var memoisedBlockWithSignatures;
|
|
2095
|
-
var blockWithSignatures = () => {
|
|
2096
|
-
if (!memoisedBlockWithSignatures)
|
|
2097
|
-
memoisedBlockWithSignatures = new GraphQLObjectType({
|
|
2098
|
-
fields: {
|
|
2099
|
-
...blockInterfaceFields(),
|
|
2100
|
-
signatures: list(string())
|
|
2101
|
-
},
|
|
2102
|
-
interfaces: [blockInterface()],
|
|
2103
|
-
name: "BlockWithSignatures"
|
|
2104
|
-
});
|
|
2105
|
-
return memoisedBlockWithSignatures;
|
|
2106
|
-
};
|
|
2107
|
-
var memoisedBlockWithAccounts;
|
|
2108
|
-
var blockWithAccounts = () => {
|
|
2109
|
-
if (!memoisedBlockWithAccounts)
|
|
2110
|
-
memoisedBlockWithAccounts = new GraphQLObjectType({
|
|
2111
|
-
fields: {
|
|
2112
|
-
...blockInterfaceFields(),
|
|
2113
|
-
transactions: list(type(transactionForAccounts()))
|
|
2114
|
-
},
|
|
2115
|
-
interfaces: [blockInterface()],
|
|
2116
|
-
name: "BlockWithAccounts"
|
|
2117
|
-
});
|
|
2118
|
-
return memoisedBlockWithAccounts;
|
|
2119
|
-
};
|
|
2120
|
-
var memoisedBlockWithTransactions;
|
|
2121
|
-
var blockWithTransactions = () => {
|
|
2122
|
-
if (!memoisedBlockWithTransactions)
|
|
2123
|
-
memoisedBlockWithTransactions = new GraphQLObjectType({
|
|
2124
|
-
fields: {
|
|
2125
|
-
...blockInterfaceFields(),
|
|
2126
|
-
transactions: list(type(transactionInterface()))
|
|
2127
|
-
},
|
|
2128
|
-
interfaces: [blockInterface()],
|
|
2129
|
-
name: "BlockWithTransactions"
|
|
2130
|
-
});
|
|
2131
|
-
return memoisedBlockWithTransactions;
|
|
2132
|
-
};
|
|
2133
|
-
var memoisedBlockTypes;
|
|
2134
|
-
var blockTypes = () => {
|
|
2135
|
-
if (!memoisedBlockTypes)
|
|
2136
|
-
memoisedBlockTypes = [
|
|
2137
|
-
blockWithNoTransactions(),
|
|
2138
|
-
blockWithSignatures(),
|
|
2139
|
-
blockWithAccounts(),
|
|
2140
|
-
blockWithTransactions()
|
|
2141
|
-
];
|
|
2142
|
-
return memoisedBlockTypes;
|
|
2143
2930
|
};
|
|
2144
2931
|
|
|
2145
|
-
// src/schema/
|
|
2146
|
-
var
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
|
|
2932
|
+
// src/schema/index.ts
|
|
2933
|
+
var schemaTypeDefs = (
|
|
2934
|
+
/* GraphQL */
|
|
2935
|
+
`
|
|
2936
|
+
type Query {
|
|
2937
|
+
account(
|
|
2938
|
+
address: String!
|
|
2939
|
+
commitment: Commitment
|
|
2940
|
+
dataSlice: DataSlice
|
|
2941
|
+
encoding: AccountEncoding
|
|
2942
|
+
minContextSlot: BigInt
|
|
2943
|
+
): Account
|
|
2944
|
+
block(
|
|
2945
|
+
slot: BigInt!
|
|
2946
|
+
commitment: Commitment
|
|
2947
|
+
encoding: TransactionEncoding
|
|
2948
|
+
transactionDetails: BlockTransactionDetails
|
|
2949
|
+
): Block
|
|
2950
|
+
programAccounts(
|
|
2951
|
+
programAddress: String!
|
|
2952
|
+
commitment: Commitment
|
|
2953
|
+
dataSlice: DataSlice
|
|
2954
|
+
encoding: AccountEncoding
|
|
2955
|
+
filters: [ProgramAccountsFilter]
|
|
2956
|
+
minContextSlot: BigInt
|
|
2957
|
+
): [Account]
|
|
2958
|
+
transaction(
|
|
2959
|
+
signature: String!
|
|
2960
|
+
commitment: Commitment
|
|
2961
|
+
encoding: TransactionEncoding
|
|
2962
|
+
): Transaction
|
|
2963
|
+
}
|
|
2964
|
+
|
|
2965
|
+
schema {
|
|
2966
|
+
query: Query
|
|
2967
|
+
}
|
|
2968
|
+
`
|
|
2969
|
+
);
|
|
2970
|
+
var schemaResolvers = {
|
|
2971
|
+
Query: {
|
|
2972
|
+
account(_, args, context, info) {
|
|
2973
|
+
return context.loaders.account.load(args, info);
|
|
2155
2974
|
},
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
fields: {
|
|
2162
|
-
account: type(accountInterface()),
|
|
2163
|
-
pubkey: string()
|
|
2164
|
-
},
|
|
2165
|
-
name: "ProgramAccount"
|
|
2166
|
-
});
|
|
2167
|
-
|
|
2168
|
-
// src/schema/program-accounts/query.ts
|
|
2169
|
-
var programAccountsQuery = () => ({
|
|
2170
|
-
programAccounts: {
|
|
2171
|
-
args: {
|
|
2172
|
-
commitment: type(commitmentInputType()),
|
|
2173
|
-
dataSlice: type(dataSliceInputType()),
|
|
2174
|
-
encoding: type(accountEncodingInputType()),
|
|
2175
|
-
filters: list(type(programAccountFilterInputType())),
|
|
2176
|
-
minContextSlot: bigint(),
|
|
2177
|
-
programAddress: nonNull(string()),
|
|
2178
|
-
withContext: string()
|
|
2975
|
+
block(_, args, context, info) {
|
|
2976
|
+
return context.loaders.block.load(args, info);
|
|
2977
|
+
},
|
|
2978
|
+
programAccounts(_, args, context, info) {
|
|
2979
|
+
return context.loaders.programAccounts.load(args, info);
|
|
2179
2980
|
},
|
|
2180
|
-
|
|
2181
|
-
|
|
2981
|
+
transaction(_, args, context, info) {
|
|
2982
|
+
return context.loaders.transaction.load(args, info);
|
|
2983
|
+
}
|
|
2182
2984
|
}
|
|
2183
|
-
}
|
|
2985
|
+
};
|
|
2986
|
+
function createSolanaGraphQLSchema() {
|
|
2987
|
+
return makeExecutableSchema({
|
|
2988
|
+
resolvers: {
|
|
2989
|
+
...accountResolvers,
|
|
2990
|
+
...blockResolvers,
|
|
2991
|
+
...commonResolvers,
|
|
2992
|
+
...inputResolvers,
|
|
2993
|
+
...instructionResolvers,
|
|
2994
|
+
...scalarResolvers,
|
|
2995
|
+
...schemaResolvers,
|
|
2996
|
+
...transactionResolvers
|
|
2997
|
+
},
|
|
2998
|
+
typeDefs: [
|
|
2999
|
+
accountTypeDefs,
|
|
3000
|
+
blockTypeDefs,
|
|
3001
|
+
commonTypeDefs,
|
|
3002
|
+
inputTypeDefs,
|
|
3003
|
+
instructionTypeDefs,
|
|
3004
|
+
scalarTypeDefs,
|
|
3005
|
+
schemaTypeDefs,
|
|
3006
|
+
transactionTypeDefs
|
|
3007
|
+
]
|
|
3008
|
+
});
|
|
3009
|
+
}
|
|
2184
3010
|
|
|
2185
3011
|
// src/rpc.ts
|
|
2186
3012
|
function createRpcGraphQL(rpc) {
|
|
2187
3013
|
const context = createSolanaGraphQLContext(rpc);
|
|
2188
|
-
const schema =
|
|
2189
|
-
query: new GraphQLObjectType({
|
|
2190
|
-
fields: {
|
|
2191
|
-
...accountQuery(),
|
|
2192
|
-
...blockQuery(),
|
|
2193
|
-
...programAccountsQuery(),
|
|
2194
|
-
...transactionQuery()
|
|
2195
|
-
},
|
|
2196
|
-
name: "RootQuery"
|
|
2197
|
-
}),
|
|
2198
|
-
types: [...accountTypes(), ...blockTypes(), ...transactionTypes()]
|
|
2199
|
-
});
|
|
3014
|
+
const schema = createSolanaGraphQLSchema();
|
|
2200
3015
|
return {
|
|
2201
3016
|
context,
|
|
2202
3017
|
async query(source, variableValues) {
|
|
2203
|
-
|
|
3018
|
+
return graphql({
|
|
2204
3019
|
contextValue: this.context,
|
|
2205
3020
|
schema: this.schema,
|
|
2206
3021
|
source,
|
|
2207
3022
|
variableValues
|
|
2208
3023
|
});
|
|
2209
|
-
this.context.cache.flush();
|
|
2210
|
-
return result;
|
|
2211
3024
|
},
|
|
2212
3025
|
schema
|
|
2213
3026
|
};
|