algosdk 2.10.0 → 2.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/README.md +4 -4
  2. package/dist/browser/algosdk.min.js +1 -1
  3. package/dist/browser/algosdk.min.js.map +1 -1
  4. package/dist/cjs/client/v2/algod/block.js +21 -0
  5. package/dist/cjs/client/v2/algod/block.js.map +1 -1
  6. package/dist/cjs/client/v2/algod/models/types.js +2 -27
  7. package/dist/cjs/client/v2/algod/models/types.js.map +1 -1
  8. package/dist/cjs/client/v2/indexer/indexer.js +15 -0
  9. package/dist/cjs/client/v2/indexer/indexer.js.map +1 -1
  10. package/dist/cjs/client/v2/indexer/searchForBlockHeaders.js +209 -0
  11. package/dist/cjs/client/v2/indexer/searchForBlockHeaders.js.map +1 -0
  12. package/dist/esm/client/v2/algod/block.js +21 -0
  13. package/dist/esm/client/v2/algod/block.js.map +1 -1
  14. package/dist/esm/client/v2/algod/models/types.js +0 -24
  15. package/dist/esm/client/v2/algod/models/types.js.map +1 -1
  16. package/dist/esm/client/v2/indexer/indexer.js +15 -0
  17. package/dist/esm/client/v2/indexer/indexer.js.map +1 -1
  18. package/dist/esm/client/v2/indexer/searchForBlockHeaders.js +203 -0
  19. package/dist/esm/client/v2/indexer/searchForBlockHeaders.js.map +1 -0
  20. package/dist/types/client/v2/algod/block.d.ts +18 -0
  21. package/dist/types/client/v2/algod/models/types.d.ts +0 -17
  22. package/dist/types/client/v2/indexer/indexer.d.ts +13 -0
  23. package/dist/types/client/v2/indexer/searchForBlockHeaders.d.ts +172 -0
  24. package/package.json +1 -1
  25. package/src/client/v2/algod/block.ts +22 -0
  26. package/src/client/v2/algod/models/types.ts +0 -32
  27. package/src/client/v2/indexer/indexer.ts +16 -0
  28. package/src/client/v2/indexer/searchForBlockHeaders.ts +212 -0
@@ -0,0 +1,209 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const jsonrequest_1 = __importDefault(require("../jsonrequest"));
7
+ /**
8
+ * Returns information about indexed block headers.
9
+ *
10
+ * #### Example
11
+ * ```typescript
12
+ * const bhs = await indexerClient.searchForBlockHeaders().do();
13
+ * ```
14
+ *
15
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/indexer/#get-v2block-headers)
16
+ * @category GET
17
+ */
18
+ class SearchForBlockHeaders extends jsonrequest_1.default {
19
+ /**
20
+ * @returns `/v2/block-headers`
21
+ */
22
+ // eslint-disable-next-line class-methods-use-this
23
+ path() {
24
+ return '/v2/block-headers';
25
+ }
26
+ /**
27
+ * Accounts marked as absent in the block header's participation updates.
28
+ *
29
+ * #### Example
30
+ * ```typescript
31
+ * const address1 = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
32
+ * const address2 = "4H5UNRBJ2Q6JENAXQ6HNTGKLKINP4J4VTQBEPK5F3I6RDICMZBPGNH6KD4";
33
+ * const bhs = await indexerClient
34
+ * .searchForBlockHeaders()
35
+ * .absent([address1,address2])
36
+ * .do();
37
+ * ```
38
+ *
39
+ * @param absent - a comma separated list of addresses
40
+ * @category query
41
+ */
42
+ absent(absent) {
43
+ this.query.absent = absent;
44
+ return this;
45
+ }
46
+ /**
47
+ * Include results after the given time.
48
+ *
49
+ * #### Example
50
+ * ```typescript
51
+ * const afterTime = "2022-10-21T00:00:11.55Z";
52
+ * const bhs = await indexerClient
53
+ * .searchForBlockHeaders()
54
+ * .afterTime(afterTime)
55
+ * .do();
56
+ * ```
57
+ *
58
+ * @param after - rfc3339 string
59
+ * @category query
60
+ */
61
+ afterTime(after) {
62
+ this.query['after-time'] = after;
63
+ return this;
64
+ }
65
+ /**
66
+ * Include results before the given time.
67
+ *
68
+ * #### Example
69
+ * ```typescript
70
+ * const beforeTime = "2022-02-02T20:20:22.02Z";
71
+ * const bhs = await indexerClient
72
+ * .searchForBlockHeaders()
73
+ * .beforeTime(beforeTime)
74
+ * .do();
75
+ * ```
76
+ *
77
+ * @param before - rfc3339 string
78
+ * @category query
79
+ */
80
+ beforeTime(before) {
81
+ this.query['before-time'] = before;
82
+ return this;
83
+ }
84
+ /**
85
+ * Accounts marked as expired in the block header's participation updates.
86
+ *
87
+ * #### Example
88
+ * ```typescript
89
+ * const address1 = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
90
+ * const address2 = "4H5UNRBJ2Q6JENAXQ6HNTGKLKINP4J4VTQBEPK5F3I6RDICMZBPGNH6KD4";
91
+ * const bhs = await indexerClient
92
+ * .searchForBlockHeaders()
93
+ * .expired([address1,address2])
94
+ * .do();
95
+ * ```
96
+ *
97
+ * @param expired - - a comma separated list of addresses
98
+ * @category query
99
+ */
100
+ expired(expired) {
101
+ this.query.expired = expired;
102
+ return this;
103
+ }
104
+ /**
105
+ * Maximum number of results to return.
106
+ *
107
+ * #### Example
108
+ * ```typescript
109
+ * const maxResults = 25;
110
+ * const bhs = await indexerClient
111
+ * .searchForBlockHeaders()
112
+ * .limit(maxResults)
113
+ * .do();
114
+ * ```
115
+ *
116
+ * @param limit
117
+ * @category query
118
+ */
119
+ limit(limit) {
120
+ this.query.limit = limit;
121
+ return this;
122
+ }
123
+ /**
124
+ * Include results at or before the specified max-round.
125
+ *
126
+ * #### Example
127
+ * ```typescript
128
+ * const maxRound = 18309917;
129
+ * const bhs = await indexerClient
130
+ * .searchForBlockHeaders()
131
+ * .maxRound(maxRound)
132
+ * .do();
133
+ * ```
134
+ *
135
+ * @param round
136
+ * @category query
137
+ */
138
+ maxRound(round) {
139
+ this.query['max-round'] = round;
140
+ return this;
141
+ }
142
+ /**
143
+ * Include results at or after the specified min-round.
144
+ *
145
+ * #### Example
146
+ * ```typescript
147
+ * const minRound = 18309917;
148
+ * const bhs = await indexerClient
149
+ * .searchForBlockHeaders()
150
+ * .minRound(minRound)
151
+ * .do();
152
+ * ```
153
+ *
154
+ * @param round
155
+ * @category query
156
+ */
157
+ minRound(round) {
158
+ this.query['min-round'] = round;
159
+ return this;
160
+ }
161
+ /**
162
+ * The next page of results.
163
+ *
164
+ * #### Example
165
+ * ```typescript
166
+ * const maxResults = 25;
167
+ *
168
+ * const bh1 = await indexerClient
169
+ * .searchForBlockHeaders()
170
+ * .limit(maxResults)
171
+ * .do();
172
+ *
173
+ * const bh2 = await indexerClient
174
+ * .searchForBlockHeaders()
175
+ * .limit(maxResults)
176
+ * .nextToken(bh1["next-token"])
177
+ * .do();
178
+ * ```
179
+ *
180
+ * @param nextToken - provided by the previous results
181
+ * @category query
182
+ */
183
+ nextToken(nextToken) {
184
+ this.query.next = nextToken;
185
+ return this;
186
+ }
187
+ /**
188
+ * Accounts marked as proposer in the block header's participation updates.
189
+ *
190
+ * #### Example
191
+ * ```typescript
192
+ * const address1 = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
193
+ * const address2 = "4H5UNRBJ2Q6JENAXQ6HNTGKLKINP4J4VTQBEPK5F3I6RDICMZBPGNH6KD4";
194
+ * const bhs = await indexerClient
195
+ * .searchForBlockHeaders()
196
+ * .proposers([address1,address2])
197
+ * .do();
198
+ * ```
199
+ *
200
+ * @param proposers - a comma separated list of addresses
201
+ * @category query
202
+ */
203
+ proposers(proposers) {
204
+ this.query.proposers = proposers;
205
+ return this;
206
+ }
207
+ }
208
+ exports.default = SearchForBlockHeaders;
209
+ //# sourceMappingURL=searchForBlockHeaders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchForBlockHeaders.js","sourceRoot":"","sources":["../../../../../src/client/v2/indexer/searchForBlockHeaders.ts"],"names":[],"mappings":";;;;;AAAA,iEAAyC;AAEzC;;;;;;;;;;GAUG;AACH,MAAqB,qBAAsB,SAAQ,qBAAW;IAC5D;;OAEG;IACH,kDAAkD;IAClD,IAAI;QACF,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,MAAgB;QACrB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,KAAa;QACrB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,UAAU,CAAC,MAAc;QACvB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,OAAiB;QACvB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,KAAa;QACjB,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,SAAS,CAAC,SAAiB;QACzB,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,SAAmB;QAC3B,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAtMD,wCAsMC"}
@@ -14,6 +14,27 @@ export default class Block extends JSONRequest {
14
14
  path() {
15
15
  return `/v2/blocks/${this.round}`;
16
16
  }
17
+ /**
18
+ * If true, only the block header (exclusive of payset or certificate) may be included in response.
19
+ *
20
+ * #### Example
21
+ * ```typescript
22
+ *
23
+ * const roundNumber = 41000000;
24
+ *
25
+ * const blockResponse = await algodClient
26
+ * .block(roundNumber)
27
+ * .headerOnly(true)
28
+ * .do();
29
+ * ```
30
+ *
31
+ * @param headerOnly - the flag indicating whether exclusively return header in response
32
+ * @category query
33
+ */
34
+ headerOnly(headerOnly) {
35
+ this.query['header-only'] = headerOnly;
36
+ return this;
37
+ }
17
38
  // eslint-disable-next-line class-methods-use-this
18
39
  prepare(body) {
19
40
  if (body && body.byteLength > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"block.js","sourceRoot":"","sources":["../../../../../src/client/v2/algod/block.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,4BAA4B,CAAC;AACvD,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAGzC;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,WAAW;IAG5C,YAAY,CAAa,EAAE,WAAmB;QAC5C,KAAK,CAAC,CAAC,CAAC,CAAC;QACT,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;YAChC,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACrC,CAAC;IAED,IAAI;QACF,OAAO,cAAc,IAAI,CAAC,KAAK,EAAE,CAAC;IACpC,CAAC;IAED,kDAAkD;IAClD,OAAO,CAAC,IAAgB;QACtB,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE;YAC/B,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAwB,CAAC;SACrD;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
1
+ {"version":3,"file":"block.js","sourceRoot":"","sources":["../../../../../src/client/v2/algod/block.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,4BAA4B,CAAC;AACvD,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAGzC;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,WAAW;IAG5C,YAAY,CAAa,EAAE,WAAmB;QAC5C,KAAK,CAAC,CAAC,CAAC,CAAC;QACT,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;YAChC,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACrC,CAAC;IAED,IAAI;QACF,OAAO,cAAc,IAAI,CAAC,KAAK,EAAE,CAAC;IACpC,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,UAAU,CAAC,UAAmB;QAC5B,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kDAAkD;IAClD,OAAO,CAAC,IAAgB;QACtB,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE;YAC/B,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAwB,CAAC;SACrD;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
@@ -1136,30 +1136,6 @@ export class BlockHashResponse extends BaseModel {
1136
1136
  /* eslint-enable dot-notation */
1137
1137
  }
1138
1138
  }
1139
- /**
1140
- * Block header.
1141
- */
1142
- export class BlockHeaderResponse extends BaseModel {
1143
- /**
1144
- * Creates a new `BlockHeaderResponse` object.
1145
- * @param blockheader - Block header data.
1146
- */
1147
- constructor({ blockheader }) {
1148
- super();
1149
- this.blockheader = blockheader;
1150
- this.attribute_map = {
1151
- blockheader: 'blockHeader',
1152
- };
1153
- }
1154
- // eslint-disable-next-line camelcase
1155
- static from_obj_for_encoding(data) {
1156
- /* eslint-disable dot-notation */
1157
- return new BlockHeaderResponse({
1158
- blockheader: data['blockHeader'],
1159
- });
1160
- /* eslint-enable dot-notation */
1161
- }
1162
- }
1163
1139
  /**
1164
1140
  * All logs emitted in the given round. Each app call, whether top-level or inner,
1165
1141
  * that contains logs results in a separate AppCallLogs object. Therefore there may