@algorandfoundation/algokit-utils 1.0.0-beta.4 → 1.0.0-beta.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/README.md +9 -2
  2. package/{dist/account.d.ts → account.d.ts} +41 -36
  3. package/account.d.ts.map +1 -0
  4. package/{dist/account.js → account.js} +59 -44
  5. package/account.js.map +1 -0
  6. package/amount.d.ts +20 -0
  7. package/amount.d.ts.map +1 -0
  8. package/amount.js +36 -0
  9. package/amount.js.map +1 -0
  10. package/app-client.d.ts +14 -0
  11. package/app-client.d.ts.map +1 -0
  12. package/app-client.js +19 -0
  13. package/app-client.js.map +1 -0
  14. package/app-deploy.d.ts +95 -0
  15. package/app-deploy.d.ts.map +1 -0
  16. package/{dist/deploy-app.js → app-deploy.js} +158 -121
  17. package/app-deploy.js.map +1 -0
  18. package/app.d.ts +153 -0
  19. package/app.d.ts.map +1 -0
  20. package/app.js +582 -0
  21. package/app.js.map +1 -0
  22. package/index.d.ts +14 -0
  23. package/index.d.ts.map +1 -0
  24. package/{dist/index.js → index.js} +7 -3
  25. package/index.js.map +1 -0
  26. package/{dist/indexer-lookup.d.ts → indexer-lookup.d.ts} +11 -4
  27. package/indexer-lookup.d.ts.map +1 -0
  28. package/{dist/indexer-lookup.js → indexer-lookup.js} +19 -9
  29. package/indexer-lookup.js.map +1 -0
  30. package/{dist/localnet.d.ts → localnet.d.ts} +10 -10
  31. package/localnet.d.ts.map +1 -0
  32. package/{dist/localnet.js → localnet.js} +16 -16
  33. package/localnet.js.map +1 -0
  34. package/{dist/network-client.d.ts → network-client.d.ts} +15 -24
  35. package/network-client.d.ts.map +1 -0
  36. package/{dist/network-client.js → network-client.js} +16 -16
  37. package/{dist/network-client.js.map → network-client.js.map} +1 -1
  38. package/package.json +5 -93
  39. package/testing/account.d.ts +14 -0
  40. package/testing/account.d.ts.map +1 -0
  41. package/testing/account.js +31 -0
  42. package/testing/account.js.map +1 -0
  43. package/testing/fixtures/algokit-log-capture-fixture.d.ts +19 -0
  44. package/testing/fixtures/algokit-log-capture-fixture.d.ts.map +1 -0
  45. package/testing/fixtures/algokit-log-capture-fixture.js +43 -0
  46. package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -0
  47. package/testing/fixtures/algorand-fixture.d.ts +24 -0
  48. package/testing/fixtures/algorand-fixture.d.ts.map +1 -0
  49. package/testing/fixtures/algorand-fixture.js +60 -0
  50. package/testing/fixtures/algorand-fixture.js.map +1 -0
  51. package/testing/fixtures/index.d.ts +3 -0
  52. package/testing/fixtures/index.d.ts.map +1 -0
  53. package/testing/fixtures/index.js +19 -0
  54. package/testing/fixtures/index.js.map +1 -0
  55. package/testing/index.d.ts +6 -0
  56. package/testing/index.d.ts.map +1 -0
  57. package/testing/index.js +22 -0
  58. package/testing/index.js.map +1 -0
  59. package/testing/indexer.d.ts +12 -0
  60. package/testing/indexer.d.ts.map +1 -0
  61. package/testing/indexer.js +40 -0
  62. package/testing/indexer.js.map +1 -0
  63. package/testing/test-logger.d.ts +41 -0
  64. package/testing/test-logger.d.ts.map +1 -0
  65. package/testing/test-logger.js +71 -0
  66. package/testing/test-logger.js.map +1 -0
  67. package/testing/transaction-logger.d.ts +29 -0
  68. package/testing/transaction-logger.d.ts.map +1 -0
  69. package/testing/transaction-logger.js +71 -0
  70. package/testing/transaction-logger.js.map +1 -0
  71. package/transaction.d.ts +121 -0
  72. package/transaction.d.ts.map +1 -0
  73. package/transaction.js +364 -0
  74. package/transaction.js.map +1 -0
  75. package/transfer.d.ts +22 -0
  76. package/transfer.d.ts.map +1 -0
  77. package/transfer.js +67 -0
  78. package/transfer.js.map +1 -0
  79. package/types/account.d.ts +55 -0
  80. package/types/account.d.ts.map +1 -0
  81. package/types/account.js +91 -0
  82. package/types/account.js.map +1 -0
  83. package/types/algo-http-client-with-retry.d.ts.map +1 -0
  84. package/{dist → types}/algo-http-client-with-retry.js +3 -3
  85. package/types/algo-http-client-with-retry.js.map +1 -0
  86. package/{dist/types → types}/algod.d.ts +28 -15
  87. package/types/algod.d.ts.map +1 -0
  88. package/{dist/algo-amount.d.ts → types/amount.d.ts} +9 -3
  89. package/types/amount.d.ts.map +1 -0
  90. package/{dist/algo-amount.js → types/amount.js} +13 -3
  91. package/types/amount.js.map +1 -0
  92. package/types/app-client.d.ts +282 -0
  93. package/types/app-client.d.ts.map +1 -0
  94. package/types/app-client.js +529 -0
  95. package/types/app-client.js.map +1 -0
  96. package/types/app-spec.d.ts +141 -0
  97. package/types/app-spec.d.ts.map +1 -0
  98. package/{dist/types/appspec.js → types/app-spec.js} +5 -7
  99. package/types/app-spec.js.map +1 -0
  100. package/types/app.d.ts +285 -0
  101. package/types/app.d.ts.map +1 -0
  102. package/types/app.js +32 -0
  103. package/types/app.js.map +1 -0
  104. package/types/config.d.ts +32 -0
  105. package/types/config.d.ts.map +1 -0
  106. package/types/config.js +53 -0
  107. package/types/config.js.map +1 -0
  108. package/types/indexer.d.ts +624 -0
  109. package/types/indexer.d.ts.map +1 -0
  110. package/{dist/types → types}/indexer.js +9 -0
  111. package/types/indexer.js.map +1 -0
  112. package/{dist/config.d.ts → types/logging.d.ts} +2 -16
  113. package/types/logging.d.ts.map +1 -0
  114. package/{dist/config.js → types/logging.js} +5 -24
  115. package/types/logging.js.map +1 -0
  116. package/types/logic-error.d.ts +37 -0
  117. package/types/logic-error.d.ts.map +1 -0
  118. package/types/logic-error.js +50 -0
  119. package/types/logic-error.js.map +1 -0
  120. package/types/network-client.d.ts +11 -0
  121. package/types/network-client.d.ts.map +1 -0
  122. package/types/network-client.js +3 -0
  123. package/types/network-client.js.map +1 -0
  124. package/types/testing.d.ts +89 -0
  125. package/types/testing.d.ts.map +1 -0
  126. package/types/testing.js +3 -0
  127. package/types/testing.js.map +1 -0
  128. package/types/transaction.d.ts +112 -0
  129. package/types/transaction.d.ts.map +1 -0
  130. package/types/transaction.js +3 -0
  131. package/types/transaction.js.map +1 -0
  132. package/types/transfer.d.ts +32 -0
  133. package/types/transfer.d.ts.map +1 -0
  134. package/types/transfer.js +3 -0
  135. package/types/transfer.js.map +1 -0
  136. package/types/urlTokenBaseHTTPClient.d.ts.map +1 -0
  137. package/types/urlTokenBaseHTTPClient.js.map +1 -0
  138. package/LICENSE +0 -21
  139. package/dist/account.d.ts.map +0 -1
  140. package/dist/account.js.map +0 -1
  141. package/dist/algo-amount.d.ts.map +0 -1
  142. package/dist/algo-amount.js.map +0 -1
  143. package/dist/algo-http-client-with-retry.d.ts.map +0 -1
  144. package/dist/algo-http-client-with-retry.js.map +0 -1
  145. package/dist/app.d.ts +0 -150
  146. package/dist/app.d.ts.map +0 -1
  147. package/dist/app.js +0 -156
  148. package/dist/app.js.map +0 -1
  149. package/dist/application-client.d.ts +0 -71
  150. package/dist/application-client.d.ts.map +0 -1
  151. package/dist/application-client.js +0 -145
  152. package/dist/application-client.js.map +0 -1
  153. package/dist/config.d.ts.map +0 -1
  154. package/dist/config.js.map +0 -1
  155. package/dist/deploy-app.d.ts +0 -149
  156. package/dist/deploy-app.d.ts.map +0 -1
  157. package/dist/deploy-app.js.map +0 -1
  158. package/dist/index.d.ts +0 -11
  159. package/dist/index.d.ts.map +0 -1
  160. package/dist/index.js.map +0 -1
  161. package/dist/indexer-lookup.d.ts.map +0 -1
  162. package/dist/indexer-lookup.js.map +0 -1
  163. package/dist/localnet.d.ts.map +0 -1
  164. package/dist/localnet.js.map +0 -1
  165. package/dist/network-client.d.ts.map +0 -1
  166. package/dist/package.json +0 -20
  167. package/dist/transaction.d.ts +0 -152
  168. package/dist/transaction.d.ts.map +0 -1
  169. package/dist/transaction.js +0 -268
  170. package/dist/transaction.js.map +0 -1
  171. package/dist/transfer.d.ts +0 -24
  172. package/dist/transfer.d.ts.map +0 -1
  173. package/dist/transfer.js +0 -33
  174. package/dist/transfer.js.map +0 -1
  175. package/dist/types/algod.d.ts.map +0 -1
  176. package/dist/types/appspec.d.ts +0 -79
  177. package/dist/types/appspec.d.ts.map +0 -1
  178. package/dist/types/appspec.js.map +0 -1
  179. package/dist/types/indexer.d.ts +0 -314
  180. package/dist/types/indexer.d.ts.map +0 -1
  181. package/dist/types/indexer.js.map +0 -1
  182. package/dist/urlTokenBaseHTTPClient.d.ts.map +0 -1
  183. package/dist/urlTokenBaseHTTPClient.js.map +0 -1
  184. /package/{dist → types}/algo-http-client-with-retry.d.ts +0 -0
  185. /package/{dist/types → types}/algod.js +0 -0
  186. /package/{dist/types → types}/algod.js.map +0 -0
  187. /package/{dist → types}/urlTokenBaseHTTPClient.d.ts +0 -0
  188. /package/{dist → types}/urlTokenBaseHTTPClient.js +0 -0
package/app.js ADDED
@@ -0,0 +1,582 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.getABIMethodSignature = exports.compileTeal = exports.getAppByIndex = exports.getAppById = exports.getBoxReference = exports.getAppArgsForABICall = exports.getAppArgsForTransaction = exports.decodeAppState = exports.getAppBoxValuesFromABIType = exports.getAppBoxValueFromABIType = exports.getAppBoxValues = exports.getAppBoxValue = exports.getAppBoxNames = exports.getAppLocalState = exports.getAppGlobalState = exports.getABIReturn = exports.callApp = exports.updateApp = exports.createApp = void 0;
27
+ const algosdk_1 = __importStar(require("algosdk"));
28
+ const buffer_1 = require("buffer");
29
+ const _1 = require("./");
30
+ const transaction_1 = require("./transaction");
31
+ const app_1 = require("./types/app");
32
+ /**
33
+ * Creates a smart contract app, returns the details of the created app.
34
+ * @param create The parameters to create the app with
35
+ * @param algod An algod client
36
+ * @returns The details of the created app, or the transaction to create it if `skipSending`
37
+ */
38
+ async function createApp(create, algod) {
39
+ const { from, approvalProgram: approval, clearStateProgram: clear, schema, note, transactionParams, args, ...sendParams } = create;
40
+ const compiledApproval = typeof approval === 'string' ? await compileTeal(approval, algod) : undefined;
41
+ const approvalProgram = compiledApproval ? compiledApproval.compiledBase64ToBytes : approval;
42
+ const compiledClear = typeof clear === 'string' ? await compileTeal(clear, algod) : undefined;
43
+ const clearProgram = compiledClear ? compiledClear.compiledBase64ToBytes : clear;
44
+ if (args && 'method' in args) {
45
+ const atc = attachATC(sendParams);
46
+ const before = (0, transaction_1.getAtomicTransactionComposerTransactions)(atc);
47
+ atc.addMethodCall({
48
+ appID: 0,
49
+ approvalProgram: approvalProgram,
50
+ clearProgram: clearProgram,
51
+ numLocalInts: schema.localInts,
52
+ numLocalByteSlices: schema.localByteSlices,
53
+ numGlobalInts: schema.globalInts,
54
+ numGlobalByteSlices: schema.globalByteSlices,
55
+ extraPages: schema.extraPages ?? Math.floor((approvalProgram.length + clearProgram.length) / app_1.APP_PAGE_MAX_SIZE),
56
+ onComplete: algosdk_1.default.OnApplicationComplete.NoOpOC,
57
+ suggestedParams: (0, transaction_1.controlFees)(await (0, transaction_1.getTransactionParams)(transactionParams, algod), sendParams),
58
+ note: (0, transaction_1.encodeTransactionNote)(note),
59
+ ...(await getAppArgsForABICall(args, from)),
60
+ });
61
+ if (sendParams.skipSending) {
62
+ const after = atc.clone().buildGroup();
63
+ return {
64
+ transaction: after[after.length - 1].txn,
65
+ transactions: after.slice(before.length).map((t) => t.txn),
66
+ appId: 0,
67
+ appAddress: '',
68
+ compiledApproval,
69
+ compiledClear,
70
+ };
71
+ }
72
+ const result = await (0, transaction_1.sendAtomicTransactionComposer)({ atc, sendParams }, algod);
73
+ const confirmation = result.confirmations ? result.confirmations[result.confirmations?.length - 1] : undefined;
74
+ if (confirmation) {
75
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
76
+ const appId = confirmation['application-index'];
77
+ _1.Config.getLogger(sendParams.suppressLog).debug(`Created app ${appId} from creator ${(0, transaction_1.getSenderAddress)(from)}`);
78
+ return {
79
+ transactions: result.transactions,
80
+ confirmations: result.confirmations,
81
+ return: confirmation ? getABIReturn(args, confirmation) : undefined,
82
+ transaction: result.transactions[result.transactions.length - 1],
83
+ confirmation: confirmation,
84
+ appId,
85
+ appAddress: algosdk_1.default.getApplicationAddress(appId),
86
+ compiledApproval,
87
+ compiledClear,
88
+ };
89
+ }
90
+ else {
91
+ return {
92
+ transactions: result.transactions,
93
+ confirmations: result.confirmations,
94
+ return: confirmation ? getABIReturn(args, confirmation) : undefined,
95
+ transaction: result.transactions[result.transactions.length - 1],
96
+ confirmation: confirmation,
97
+ appId: 0,
98
+ appAddress: '',
99
+ compiledApproval,
100
+ compiledClear,
101
+ };
102
+ }
103
+ }
104
+ else {
105
+ const transaction = algosdk_1.default.makeApplicationCreateTxnFromObject({
106
+ approvalProgram: approvalProgram,
107
+ clearProgram: clearProgram,
108
+ numLocalInts: schema.localInts,
109
+ numLocalByteSlices: schema.localByteSlices,
110
+ numGlobalInts: schema.globalInts,
111
+ numGlobalByteSlices: schema.globalByteSlices,
112
+ extraPages: schema.extraPages ?? Math.floor((approvalProgram.length + clearProgram.length) / app_1.APP_PAGE_MAX_SIZE),
113
+ onComplete: algosdk_1.default.OnApplicationComplete.NoOpOC,
114
+ suggestedParams: await (0, transaction_1.getTransactionParams)(transactionParams, algod),
115
+ from: (0, transaction_1.getSenderAddress)(from),
116
+ note: (0, transaction_1.encodeTransactionNote)(note),
117
+ ...getAppArgsForTransaction(args),
118
+ rekeyTo: undefined,
119
+ });
120
+ const { confirmation } = await (0, transaction_1.sendTransaction)({ transaction, from, sendParams }, algod);
121
+ if (confirmation) {
122
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
123
+ const appId = confirmation['application-index'];
124
+ _1.Config.getLogger(sendParams.suppressLog).debug(`Created app ${appId} from creator ${(0, transaction_1.getSenderAddress)(from)}`);
125
+ return {
126
+ transaction,
127
+ transactions: [transaction],
128
+ confirmation,
129
+ confirmations: confirmation ? [confirmation] : undefined,
130
+ appId,
131
+ appAddress: algosdk_1.default.getApplicationAddress(appId),
132
+ return: getABIReturn(args, confirmation),
133
+ compiledApproval,
134
+ compiledClear,
135
+ };
136
+ }
137
+ else {
138
+ return { transaction, transactions: [transaction], appId: 0, appAddress: '', compiledApproval, compiledClear };
139
+ }
140
+ }
141
+ }
142
+ exports.createApp = createApp;
143
+ /**
144
+ * Updates a smart contract app.
145
+ * @param update The parameters to update the app with
146
+ * @param algod An algod client
147
+ * @returns The transaction
148
+ */
149
+ async function updateApp(update, algod) {
150
+ const { appId, from, approvalProgram: approval, clearStateProgram: clear, note, transactionParams, args, ...sendParams } = update;
151
+ const compiledApproval = typeof approval === 'string' ? await compileTeal(approval, algod) : undefined;
152
+ const approvalProgram = compiledApproval ? compiledApproval.compiledBase64ToBytes : approval;
153
+ const compiledClear = typeof clear === 'string' ? await compileTeal(clear, algod) : undefined;
154
+ const clearProgram = compiledClear ? compiledClear.compiledBase64ToBytes : clear;
155
+ _1.Config.getLogger(sendParams.suppressLog).debug(`Updating app ${appId}`);
156
+ if (args && 'method' in args) {
157
+ const atc = attachATC(sendParams);
158
+ const before = (0, transaction_1.getAtomicTransactionComposerTransactions)(atc);
159
+ atc.addMethodCall({
160
+ appID: appId,
161
+ onComplete: algosdk_1.OnApplicationComplete.UpdateApplicationOC,
162
+ approvalProgram: approvalProgram,
163
+ clearProgram: clearProgram,
164
+ suggestedParams: (0, transaction_1.controlFees)(await (0, transaction_1.getTransactionParams)(transactionParams, algod), sendParams),
165
+ note: (0, transaction_1.encodeTransactionNote)(note),
166
+ ...(await getAppArgsForABICall(args, from)),
167
+ });
168
+ if (sendParams.skipSending) {
169
+ const after = atc.clone().buildGroup();
170
+ return {
171
+ transaction: after[after.length - 1].txn,
172
+ transactions: after.slice(before.length).map((t) => t.txn),
173
+ };
174
+ }
175
+ const result = await (0, transaction_1.sendAtomicTransactionComposer)({ atc, sendParams }, algod);
176
+ const confirmation = result.confirmations ? result.confirmations[result.confirmations?.length - 1] : undefined;
177
+ return {
178
+ transactions: result.transactions,
179
+ confirmations: result.confirmations,
180
+ return: confirmation ? getABIReturn(args, confirmation) : undefined,
181
+ transaction: result.transactions[result.transactions.length - 1],
182
+ confirmation: confirmation,
183
+ };
184
+ }
185
+ else {
186
+ const transaction = algosdk_1.default.makeApplicationUpdateTxnFromObject({
187
+ appIndex: appId,
188
+ approvalProgram: approvalProgram,
189
+ clearProgram: clearProgram,
190
+ suggestedParams: await (0, transaction_1.getTransactionParams)(transactionParams, algod),
191
+ from: (0, transaction_1.getSenderAddress)(from),
192
+ note: (0, transaction_1.encodeTransactionNote)(note),
193
+ ...getAppArgsForTransaction(args),
194
+ rekeyTo: undefined,
195
+ });
196
+ const result = await (0, transaction_1.sendTransaction)({ transaction, from, sendParams }, algod);
197
+ return {
198
+ ...result,
199
+ transactions: [result.transaction],
200
+ confirmations: result.confirmation ? [result.confirmation] : undefined,
201
+ return: getABIReturn(args, result.confirmation),
202
+ compiledApproval,
203
+ compiledClear,
204
+ };
205
+ }
206
+ }
207
+ exports.updateApp = updateApp;
208
+ function attachATC(sendParams) {
209
+ if (sendParams.atc) {
210
+ sendParams.skipSending = true;
211
+ }
212
+ sendParams.atc = sendParams.atc ?? new algosdk_1.AtomicTransactionComposer();
213
+ return sendParams.atc;
214
+ }
215
+ /**
216
+ * Issues a call to a given app.
217
+ * @param call The call details.
218
+ * @param algod An algod client
219
+ * @returns The result of the call
220
+ */
221
+ async function callApp(call, algod) {
222
+ const { appId, callType, from, args, note, transactionParams, ...sendParams } = call;
223
+ if (args && 'method' in args) {
224
+ const atc = attachATC(sendParams);
225
+ const before = (0, transaction_1.getAtomicTransactionComposerTransactions)(atc);
226
+ atc.addMethodCall({
227
+ appID: appId,
228
+ suggestedParams: (0, transaction_1.controlFees)(await (0, transaction_1.getTransactionParams)(transactionParams, algod), sendParams),
229
+ note: (0, transaction_1.encodeTransactionNote)(note),
230
+ onComplete: callType === 'normal'
231
+ ? algosdk_1.OnApplicationComplete.NoOpOC
232
+ : callType === 'clearstate'
233
+ ? algosdk_1.OnApplicationComplete.ClearStateOC
234
+ : callType === 'closeout'
235
+ ? algosdk_1.OnApplicationComplete.CloseOutOC
236
+ : callType === 'delete'
237
+ ? algosdk_1.OnApplicationComplete.DeleteApplicationOC
238
+ : algosdk_1.OnApplicationComplete.OptInOC,
239
+ ...(await getAppArgsForABICall(args, from)),
240
+ });
241
+ if (sendParams.skipSending) {
242
+ const after = atc.clone().buildGroup();
243
+ return {
244
+ transaction: after[after.length - 1].txn,
245
+ transactions: after.slice(before.length).map((t) => t.txn),
246
+ };
247
+ }
248
+ const result = await (0, transaction_1.sendAtomicTransactionComposer)({ atc, sendParams }, algod);
249
+ const confirmation = result.confirmations ? result.confirmations[result.confirmations?.length - 1] : undefined;
250
+ return {
251
+ transactions: result.transactions,
252
+ confirmations: result.confirmations,
253
+ return: confirmation ? getABIReturn(args, confirmation) : undefined,
254
+ transaction: result.transactions[result.transactions.length - 1],
255
+ confirmation: confirmation,
256
+ };
257
+ }
258
+ const appCallParams = {
259
+ appIndex: appId,
260
+ from: (0, transaction_1.getSenderAddress)(from),
261
+ suggestedParams: await (0, transaction_1.getTransactionParams)(transactionParams, algod),
262
+ ...getAppArgsForTransaction(args),
263
+ note: (0, transaction_1.encodeTransactionNote)(note),
264
+ rekeyTo: undefined,
265
+ };
266
+ let transaction;
267
+ switch (callType) {
268
+ case 'optin':
269
+ transaction = algosdk_1.default.makeApplicationOptInTxnFromObject(appCallParams);
270
+ break;
271
+ case 'clearstate':
272
+ transaction = algosdk_1.default.makeApplicationClearStateTxnFromObject(appCallParams);
273
+ break;
274
+ case 'closeout':
275
+ transaction = algosdk_1.default.makeApplicationCloseOutTxnFromObject(appCallParams);
276
+ break;
277
+ case 'delete':
278
+ transaction = algosdk_1.default.makeApplicationDeleteTxnFromObject(appCallParams);
279
+ break;
280
+ case 'normal':
281
+ transaction = algosdk_1.default.makeApplicationNoOpTxnFromObject(appCallParams);
282
+ break;
283
+ }
284
+ const result = await (0, transaction_1.sendTransaction)({ transaction, from, sendParams }, algod);
285
+ return {
286
+ ...result,
287
+ transactions: [result.transaction],
288
+ confirmations: result.confirmation ? [result.confirmation] : undefined,
289
+ return: getABIReturn(args, result.confirmation),
290
+ };
291
+ }
292
+ exports.callApp = callApp;
293
+ /**
294
+ * Returns any ABI return values for the given app call arguments and transaction confirmation.
295
+ * @param args The arguments that were used for the call
296
+ * @param confirmation The transaction confirmation from algod
297
+ * @returns The return value for the method call
298
+ */
299
+ function getABIReturn(args, confirmation) {
300
+ if (!args || !('method' in args)) {
301
+ return undefined;
302
+ }
303
+ const method = 'txnCount' in args.method ? args.method : new algosdk_1.ABIMethod(args.method);
304
+ if (method.returns.type !== 'void' && confirmation) {
305
+ // The parseMethodResponse method mutates the second parameter :(
306
+ const resultDummy = {
307
+ txID: '',
308
+ method,
309
+ rawReturnValue: new Uint8Array(),
310
+ };
311
+ const response = algosdk_1.AtomicTransactionComposer.parseMethodResponse(method, resultDummy, confirmation);
312
+ return !response.decodeError
313
+ ? {
314
+ rawReturnValue: response.rawReturnValue,
315
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
316
+ returnValue: response.returnValue,
317
+ decodeError: undefined,
318
+ }
319
+ : {
320
+ rawReturnValue: undefined,
321
+ returnValue: undefined,
322
+ decodeError: response.decodeError,
323
+ };
324
+ }
325
+ return undefined;
326
+ }
327
+ exports.getABIReturn = getABIReturn;
328
+ /**
329
+ * Returns the current global state values for the given app ID
330
+ * @param appId The ID of the app return global state for
331
+ * @param algod An algod client instance
332
+ * @returns The current global state
333
+ */
334
+ async function getAppGlobalState(appId, algod) {
335
+ const appInfo = await getAppById(appId, algod);
336
+ if (!appInfo.params || !appInfo.params['global-state']) {
337
+ throw new Error("Couldn't find global state");
338
+ }
339
+ return decodeAppState(appInfo.params['global-state']);
340
+ }
341
+ exports.getAppGlobalState = getAppGlobalState;
342
+ /**
343
+ * Returns the current global state values for the given app ID and account
344
+ * @param appId The ID of the app return global state for
345
+ * @param account Either the string address of an account or an account object for the account to get local state for the given app
346
+ * @param algod An algod client instance
347
+ * @returns The current local state for the given (app, account) combination
348
+ */
349
+ async function getAppLocalState(appId, account, algod) {
350
+ const accountAddress = typeof account === 'string' ? account : (0, transaction_1.getSenderAddress)(account);
351
+ const appInfo = await algod.accountApplicationInformation(accountAddress, appId).do();
352
+ if (!appInfo['app-local-state'] || !appInfo['app-local-state']['key-value']) {
353
+ throw new Error("Couldn't find local state");
354
+ }
355
+ return decodeAppState(appInfo['app-local-state']['key-value']);
356
+ }
357
+ exports.getAppLocalState = getAppLocalState;
358
+ /**
359
+ * Returns the names of the boxes for the given app.
360
+ * @param appId The ID of the app return box names for
361
+ * @param algod An algod client instance
362
+ * @returns The current box names
363
+ */
364
+ async function getAppBoxNames(appId, algod) {
365
+ const boxResult = await algod.getApplicationBoxes(appId).do();
366
+ return boxResult.boxes.map((b) => {
367
+ return {
368
+ nameRaw: b.name,
369
+ nameBase64: buffer_1.Buffer.from(b.name).toString('base64'),
370
+ name: buffer_1.Buffer.from(b.name).toString('utf-8'),
371
+ };
372
+ });
373
+ }
374
+ exports.getAppBoxNames = getAppBoxNames;
375
+ /**
376
+ * Returns the value of the given box name for the given app.
377
+ * @param appId The ID of the app return box names for
378
+ * @param boxName The name of the box to return either as a string, binary array or `BoxName`
379
+ * @param algod An algod client instance
380
+ * @returns The current box value as a byte array
381
+ */
382
+ async function getAppBoxValue(appId, boxName, algod) {
383
+ const name = typeof boxName === 'string' ? new Uint8Array(buffer_1.Buffer.from(boxName, 'utf-8')) : 'name' in boxName ? boxName.nameRaw : boxName;
384
+ const boxResult = await algod.getApplicationBoxByName(appId, name).do();
385
+ return boxResult.value;
386
+ }
387
+ exports.getAppBoxValue = getAppBoxValue;
388
+ /**
389
+ * Returns the value of the given box names for the given app.
390
+ * @param appId The ID of the app return box names for
391
+ * @param boxNames The names of the boxes to return either as a string, binary array or `BoxName`
392
+ * @param algod An algod client instance
393
+ * @returns The current box values as a byte array in the same order as the passed in box names
394
+ */
395
+ async function getAppBoxValues(appId, boxNames, algod) {
396
+ return await Promise.all(boxNames.map(async (boxName) => await getAppBoxValue(appId, boxName, algod)));
397
+ }
398
+ exports.getAppBoxValues = getAppBoxValues;
399
+ /**
400
+ * Returns the value of the given box name for the given app decoded based on the given ABI type.
401
+ * @param request The parameters for the box value request
402
+ * @param algod An algod client instance
403
+ * @returns The current box value as an ABI value
404
+ */
405
+ async function getAppBoxValueFromABIType(request, algod) {
406
+ const { appId, boxName, type } = request;
407
+ const value = await getAppBoxValue(appId, boxName, algod);
408
+ return type.decode(value);
409
+ }
410
+ exports.getAppBoxValueFromABIType = getAppBoxValueFromABIType;
411
+ /**
412
+ * Returns the value of the given box names for the given app decoded based on the given ABI type.
413
+ * @param request The parameters for the box value request
414
+ * @param algod An algod client instance
415
+ * @returns The current box values as an ABI value in the same order as the passed in box names
416
+ */
417
+ async function getAppBoxValuesFromABIType(request, algod) {
418
+ const { appId, boxNames, type } = request;
419
+ return await Promise.all(boxNames.map(async (boxName) => await getAppBoxValueFromABIType({ appId, boxName, type }, algod)));
420
+ }
421
+ exports.getAppBoxValuesFromABIType = getAppBoxValuesFromABIType;
422
+ /**
423
+ * Converts an array of global/local state values from the algod api to a more friendly
424
+ * generic object keyed by the UTF-8 value of the key.
425
+ * @param state A `global-state`, `local-state`, `global-state-deltas` or `local-state-deltas`
426
+ * @returns An object keyeed by the UTF-8 representation of the key with various parsings of the values
427
+ */
428
+ function decodeAppState(state) {
429
+ const stateValues = {};
430
+ // Start with empty set
431
+ for (const stateVal of state) {
432
+ const keyBase64 = stateVal.key;
433
+ const keyRaw = buffer_1.Buffer.from(keyBase64, 'base64');
434
+ const key = keyRaw.toString('utf-8');
435
+ const tealValue = stateVal.value;
436
+ const dataTypeFlag = 'action' in tealValue ? tealValue.action : tealValue.type;
437
+ let valueBase64;
438
+ let valueRaw;
439
+ switch (dataTypeFlag) {
440
+ case 1:
441
+ valueBase64 = 'bytes' in tealValue ? tealValue.bytes : '';
442
+ valueRaw = buffer_1.Buffer.from(valueBase64, 'base64');
443
+ stateValues[key] = {
444
+ keyRaw,
445
+ keyBase64,
446
+ valueRaw: new Uint8Array(valueRaw),
447
+ valueBase64: valueBase64,
448
+ value: valueRaw.toString('utf-8'),
449
+ };
450
+ break;
451
+ case 2:
452
+ // eslint-disable-next-line no-case-declarations
453
+ const value = 'uint' in tealValue ? tealValue.uint : 0;
454
+ stateValues[key] = {
455
+ keyRaw,
456
+ keyBase64,
457
+ value,
458
+ };
459
+ break;
460
+ default:
461
+ throw new Error(`Received unknown state data type of ${dataTypeFlag}`);
462
+ }
463
+ }
464
+ return stateValues;
465
+ }
466
+ exports.decodeAppState = decodeAppState;
467
+ /**
468
+ * Returns the app args ready to load onto an app `Transaction` object
469
+ * @param args The app call args
470
+ * @returns The args ready to load into a `Transaction`
471
+ */
472
+ function getAppArgsForTransaction(args) {
473
+ if (!args)
474
+ return undefined;
475
+ const encoder = new TextEncoder();
476
+ return {
477
+ accounts: args?.accounts?.map((a) => (typeof a === 'string' ? a : algosdk_1.default.encodeAddress(a.publicKey))),
478
+ appArgs: args?.appArgs?.map((a) => (typeof a === 'string' ? encoder.encode(a) : a)),
479
+ boxes: args.boxes?.map(getBoxReference),
480
+ foreignApps: args?.apps,
481
+ foreignAssets: args?.assets,
482
+ lease: typeof args?.lease === 'string' ? encoder.encode(args?.lease) : args?.lease,
483
+ };
484
+ }
485
+ exports.getAppArgsForTransaction = getAppArgsForTransaction;
486
+ /**
487
+ * Returns the app args ready to load onto an ABI method call in `AtomicTransactionComposer`
488
+ * @param args The ABI app call args
489
+ * @param from The transaction signer
490
+ * @returns The parameters ready to pass into `addMethodCall` within AtomicTransactionComposer
491
+ */
492
+ async function getAppArgsForABICall(args, from) {
493
+ const encoder = new TextEncoder();
494
+ const signer = (0, transaction_1.getSenderTransactionSigner)(from);
495
+ const methodArgs = await Promise.all(args.args?.map(async (a) => {
496
+ if (typeof a !== 'object') {
497
+ return a;
498
+ }
499
+ // Handle the various forms of transactions to wrangle them for ATC
500
+ return 'txn' in a
501
+ ? a
502
+ : 'then' in a
503
+ ? { txn: (await a).transaction, signer }
504
+ : 'transaction' in a
505
+ ? { txn: a.transaction, signer }
506
+ : 'txID' in a
507
+ ? { txn: a, signer }
508
+ : a;
509
+ }));
510
+ return {
511
+ method: 'txnCount' in args.method ? args.method : new algosdk_1.ABIMethod(args.method),
512
+ sender: (0, transaction_1.getSenderAddress)(from),
513
+ signer: signer,
514
+ boxes: args.boxes?.map(getBoxReference),
515
+ lease: typeof args.lease === 'string' ? encoder.encode(args.lease) : args.lease,
516
+ methodArgs: methodArgs,
517
+ rekeyTo: undefined,
518
+ };
519
+ }
520
+ exports.getAppArgsForABICall = getAppArgsForABICall;
521
+ /**
522
+ * Returns a `algosdk.BoxReference` given a `BoxIdentifier` or `BoxReference`.
523
+ * @param box The box to return a reference for
524
+ * @returns The box reference ready to pass into a `Transaction`
525
+ */
526
+ function getBoxReference(box) {
527
+ const encoder = new TextEncoder();
528
+ if (typeof box === 'object' && 'appIndex' in box) {
529
+ return box;
530
+ }
531
+ const ref = typeof box === 'object' && 'appId' in box ? box : { appId: 0, name: box };
532
+ return {
533
+ appIndex: ref.appId,
534
+ name: typeof ref.name === 'string'
535
+ ? encoder.encode(ref.name)
536
+ : 'length' in ref.name
537
+ ? ref.name
538
+ : algosdk_1.default.decodeAddress((0, transaction_1.getSenderAddress)(ref.name)).publicKey,
539
+ };
540
+ }
541
+ exports.getBoxReference = getBoxReference;
542
+ /**
543
+ * Gets the current data for the given app from algod.
544
+ *
545
+ * @param appId The id of the app
546
+ * @param algod An algod client
547
+ * @returns The data about the app
548
+ */
549
+ async function getAppById(appId, algod) {
550
+ return (await algod.getApplicationByID(appId).do());
551
+ }
552
+ exports.getAppById = getAppById;
553
+ /** @deprecated Use `algokit.getAppById` instead. */
554
+ exports.getAppByIndex = getAppById;
555
+ /**
556
+ * Compiles the given TEAL using algod and returns the result, including source map.
557
+ *
558
+ * @param algod An algod client
559
+ * @param tealCode The TEAL code
560
+ * @returns The information about the compiled file
561
+ */
562
+ async function compileTeal(tealCode, algod) {
563
+ const compiled = await algod.compile(tealCode).sourcemap(true).do();
564
+ return {
565
+ teal: tealCode,
566
+ compiled: compiled.result,
567
+ compiledHash: compiled.hash,
568
+ compiledBase64ToBytes: new Uint8Array(buffer_1.Buffer.from(compiled.result, 'base64')),
569
+ sourceMap: new algosdk_1.SourceMap(compiled['sourcemap']),
570
+ };
571
+ }
572
+ exports.compileTeal = compileTeal;
573
+ /**
574
+ * Returns the encoded ABI spec for a given ABI Method
575
+ * @param method The method to return a signature for
576
+ * @returns The encoded ABI method spec e.g. `method_name(uint64,string)string`
577
+ */
578
+ const getABIMethodSignature = (method) => {
579
+ return 'getSignature' in method ? method.getSignature() : new algosdk_1.ABIMethod(method).getSignature();
580
+ };
581
+ exports.getABIMethodSignature = getABIMethodSignature;
582
+ //# sourceMappingURL=app.js.map
package/app.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
package/index.d.ts ADDED
@@ -0,0 +1,14 @@
1
+ import { UpdatableConfig } from './types/config';
2
+ export * from './account';
3
+ export * from './amount';
4
+ export * from './app';
5
+ export * from './app-client';
6
+ export * from './app-deploy';
7
+ export * from './indexer-lookup';
8
+ export * from './localnet';
9
+ export * from './network-client';
10
+ export * from './transaction';
11
+ export * from './transfer';
12
+ /** The AlgoKit config. To update it use the configure method. */
13
+ export declare const Config: UpdatableConfig;
14
+ //# sourceMappingURL=index.d.ts.map
package/index.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEhD,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,OAAO,CAAA;AACrB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAE1B,iEAAiE;AACjE,eAAO,MAAM,MAAM,iBAAwB,CAAA"}
@@ -14,14 +14,18 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.Config = void 0;
18
+ const config_1 = require("./types/config");
17
19
  __exportStar(require("./account"), exports);
18
- __exportStar(require("./algo-amount"), exports);
20
+ __exportStar(require("./amount"), exports);
19
21
  __exportStar(require("./app"), exports);
20
- __exportStar(require("./config"), exports);
21
- __exportStar(require("./deploy-app"), exports);
22
+ __exportStar(require("./app-client"), exports);
23
+ __exportStar(require("./app-deploy"), exports);
22
24
  __exportStar(require("./indexer-lookup"), exports);
23
25
  __exportStar(require("./localnet"), exports);
24
26
  __exportStar(require("./network-client"), exports);
25
27
  __exportStar(require("./transaction"), exports);
26
28
  __exportStar(require("./transfer"), exports);
29
+ /** The AlgoKit config. To update it use the configure method. */
30
+ exports.Config = new config_1.UpdatableConfig();
27
31
  //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAgD;AAEhD,4CAAyB;AACzB,2CAAwB;AACxB,wCAAqB;AACrB,+CAA4B;AAC5B,+CAA4B;AAC5B,mDAAgC;AAChC,6CAA0B;AAC1B,mDAAgC;AAChC,gDAA6B;AAC7B,6CAA0B;AAE1B,iEAAiE;AACpD,QAAA,MAAM,GAAG,IAAI,wBAAe,EAAE,CAAA"}