algosdk 1.19.1 → 1.20.0-beta.1

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 (68) 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/src/client/v2/algod/algod.js +37 -5
  5. package/dist/cjs/src/client/v2/algod/algod.js.map +1 -1
  6. package/dist/cjs/src/client/v2/algod/getTransactionProof.js +41 -0
  7. package/dist/cjs/src/client/v2/algod/getTransactionProof.js.map +1 -0
  8. package/dist/cjs/src/client/v2/algod/{proof.js → lightBlockHeaderProof.js} +5 -7
  9. package/dist/cjs/src/client/v2/algod/lightBlockHeaderProof.js.map +1 -0
  10. package/dist/cjs/src/client/v2/algod/models/types.js +117 -30
  11. package/dist/cjs/src/client/v2/algod/models/types.js.map +1 -1
  12. package/dist/cjs/src/client/v2/algod/stateproof.js +18 -0
  13. package/dist/cjs/src/client/v2/algod/stateproof.js.map +1 -0
  14. package/dist/cjs/src/client/v2/indexer/lookupAccountTransactions.js +1 -1
  15. package/dist/cjs/src/client/v2/indexer/searchForTransactions.js +1 -1
  16. package/dist/cjs/src/logic/logic.js +27 -0
  17. package/dist/cjs/src/logic/logic.js.map +1 -1
  18. package/dist/cjs/src/logicsig.js +27 -6
  19. package/dist/cjs/src/logicsig.js.map +1 -1
  20. package/dist/cjs/src/transaction.js +82 -0
  21. package/dist/cjs/src/transaction.js.map +1 -1
  22. package/dist/cjs/src/types/transactions/base.js +6 -1
  23. package/dist/cjs/src/types/transactions/base.js.map +1 -1
  24. package/dist/cjs/src/types/transactions/index.js.map +1 -1
  25. package/dist/cjs/src/types/transactions/stateproof.js +3 -0
  26. package/dist/cjs/src/types/transactions/stateproof.js.map +1 -0
  27. package/dist/esm/src/client/v2/algod/algod.js +37 -5
  28. package/dist/esm/src/client/v2/algod/algod.js.map +1 -1
  29. package/dist/esm/src/client/v2/algod/getTransactionProof.js +35 -0
  30. package/dist/esm/src/client/v2/algod/getTransactionProof.js.map +1 -0
  31. package/dist/esm/src/client/v2/algod/lightBlockHeaderProof.js +12 -0
  32. package/dist/esm/src/client/v2/algod/lightBlockHeaderProof.js.map +1 -0
  33. package/dist/esm/src/client/v2/algod/models/types.js +112 -28
  34. package/dist/esm/src/client/v2/algod/models/types.js.map +1 -1
  35. package/dist/esm/src/client/v2/algod/stateproof.js +12 -0
  36. package/dist/esm/src/client/v2/algod/stateproof.js.map +1 -0
  37. package/dist/esm/src/client/v2/indexer/lookupAccountTransactions.js +1 -1
  38. package/dist/esm/src/client/v2/indexer/searchForTransactions.js +1 -1
  39. package/dist/esm/src/logic/logic.js +27 -0
  40. package/dist/esm/src/logic/logic.js.map +1 -1
  41. package/dist/esm/src/logicsig.js +25 -5
  42. package/dist/esm/src/logicsig.js.map +1 -1
  43. package/dist/esm/src/transaction.js +82 -0
  44. package/dist/esm/src/transaction.js.map +1 -1
  45. package/dist/esm/src/types/transactions/base.js +6 -1
  46. package/dist/esm/src/types/transactions/base.js.map +1 -1
  47. package/dist/esm/src/types/transactions/index.js.map +1 -1
  48. package/dist/esm/src/types/transactions/stateproof.js +2 -0
  49. package/dist/esm/src/types/transactions/stateproof.js.map +1 -0
  50. package/dist/types/src/client/v2/algod/algod.d.ts +32 -4
  51. package/dist/types/src/client/v2/algod/getTransactionProof.d.ts +27 -0
  52. package/dist/types/src/client/v2/algod/{proof.d.ts → lightBlockHeaderProof.d.ts} +2 -3
  53. package/dist/types/src/client/v2/algod/models/types.d.ts +119 -30
  54. package/dist/types/src/client/v2/algod/stateproof.d.ts +8 -0
  55. package/dist/types/src/client/v2/indexer/lookupAccountTransactions.d.ts +1 -1
  56. package/dist/types/src/client/v2/indexer/searchForTransactions.d.ts +1 -1
  57. package/dist/types/src/logic/logic.d.ts +19 -0
  58. package/dist/types/src/logicsig.d.ts +6 -0
  59. package/dist/types/src/transaction.d.ts +6 -0
  60. package/dist/types/src/types/blockHeader.d.ts +9 -1
  61. package/dist/types/src/types/transactions/base.d.ts +17 -1
  62. package/dist/types/src/types/transactions/encoded.d.ts +12 -0
  63. package/dist/types/src/types/transactions/index.d.ts +3 -1
  64. package/dist/types/src/types/transactions/stateproof.d.ts +8 -0
  65. package/package.json +1 -1
  66. package/dist/cjs/src/client/v2/algod/proof.js.map +0 -1
  67. package/dist/esm/src/client/v2/algod/proof.js +0 -14
  68. package/dist/esm/src/client/v2/algod/proof.js.map +0 -1
@@ -23,14 +23,37 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.tealSignFromProgram = exports.tealSign = exports.logicSigFromByte = exports.signLogicSigTransaction = exports.signLogicSigTransactionObject = exports.makeLogicSig = exports.LogicSigAccount = exports.LogicSig = void 0;
26
+ exports.tealSignFromProgram = exports.tealSign = exports.logicSigFromByte = exports.signLogicSigTransaction = exports.signLogicSigTransactionObject = exports.makeLogicSig = exports.LogicSigAccount = exports.LogicSig = exports.sanityCheckProgram = void 0;
27
27
  const nacl = __importStar(require("./nacl/naclWrappers"));
28
28
  const address = __importStar(require("./encoding/address"));
29
29
  const encoding = __importStar(require("./encoding/encoding"));
30
- const logic = __importStar(require("./logic/logic"));
31
30
  const multisig_1 = require("./multisig");
32
31
  const utils = __importStar(require("./utils/utils"));
33
32
  const txnBuilder = __importStar(require("./transaction"));
33
+ const address_1 = require("./encoding/address");
34
+ /** sanityCheckProgram performs heuristic program validation:
35
+ * check if passed in bytes are Algorand address or is B64 encoded, rather than Teal bytes
36
+ *
37
+ * @param program - Program bytes to check
38
+ */
39
+ function sanityCheckProgram(program) {
40
+ if (!program || program.length === 0)
41
+ throw new Error('empty program');
42
+ const lineBreakOrd = '\n'.charCodeAt(0);
43
+ const blankSpaceOrd = ' '.charCodeAt(0);
44
+ const tildeOrd = '~'.charCodeAt(0);
45
+ const isPrintable = (x) => blankSpaceOrd <= x && x <= tildeOrd;
46
+ const isAsciiPrintable = program.every((x) => x === lineBreakOrd || isPrintable(x));
47
+ if (isAsciiPrintable) {
48
+ const programStr = Buffer.from(program).toString();
49
+ if ((0, address_1.isValidAddress)(programStr))
50
+ throw new Error('requesting program bytes, get Algorand address');
51
+ if (Buffer.from(programStr, 'base64').toString('base64') === programStr)
52
+ throw new Error('program should not be b64 encoded');
53
+ throw new Error('program bytes are all ASCII printable characters, not looking like Teal byte code');
54
+ }
55
+ }
56
+ exports.sanityCheckProgram = sanityCheckProgram;
34
57
  /**
35
58
  LogicSig implementation
36
59
  */
@@ -45,9 +68,7 @@ class LogicSig {
45
68
  let args;
46
69
  if (programArgs != null)
47
70
  args = programArgs.map((arg) => new Uint8Array(arg));
48
- if (!logic.checkProgram(program, args)) {
49
- throw new Error('Invalid program');
50
- }
71
+ sanityCheckProgram(program);
51
72
  this.logic = program;
52
73
  this.args = args;
53
74
  this.sig = undefined;
@@ -85,7 +106,7 @@ class LogicSig {
85
106
  return false;
86
107
  }
87
108
  try {
88
- logic.checkProgram(this.logic, this.args);
109
+ sanityCheckProgram(this.logic);
89
110
  }
90
111
  catch (e) {
91
112
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"logicsig.js","sourceRoot":"","sources":["../../../src/logicsig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logicsig.js","sourceRoot":"","sources":["../../../src/logicsig.ts"],"names":[],"mappings":"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"}
@@ -308,6 +308,24 @@ class Transaction {
308
308
  }
309
309
  // say we are aware of groups
310
310
  this.group = undefined;
311
+ // stpf fields
312
+ if (txn.stateProofType !== undefined &&
313
+ (!Number.isSafeInteger(txn.stateProofType) || txn.stateProofType < 0))
314
+ throw Error('State Proof type must be a positive number and smaller than 2^53-1');
315
+ if (txn.stateProofMessage !== undefined) {
316
+ if (txn.stateProofMessage.constructor !== Uint8Array)
317
+ throw Error('stateProofMessage must be a Uint8Array.');
318
+ }
319
+ else {
320
+ txn.stateProofMessage = new Uint8Array(0);
321
+ }
322
+ if (txn.stateProof !== undefined) {
323
+ if (txn.stateProof.constructor !== Uint8Array)
324
+ throw Error('stateProof must be a Uint8Array.');
325
+ }
326
+ else {
327
+ txn.stateProof = new Uint8Array(0);
328
+ }
311
329
  }
312
330
  // eslint-disable-next-line camelcase
313
331
  get_obj_for_encoding() {
@@ -680,6 +698,59 @@ class Transaction {
680
698
  delete txn.grp;
681
699
  return txn;
682
700
  }
701
+ if (this.type === 'stpf') {
702
+ // state proof txn
703
+ const txn = {
704
+ fee: this.fee,
705
+ fv: this.firstRound,
706
+ lv: this.lastRound,
707
+ note: Buffer.from(this.note),
708
+ snd: Buffer.from(this.from.publicKey),
709
+ type: this.type,
710
+ gen: this.genesisID,
711
+ gh: this.genesisHash,
712
+ lx: Buffer.from(this.lease),
713
+ sptype: this.stateProofType,
714
+ spmsg: Buffer.from(this.stateProofMessage),
715
+ sp: Buffer.from(this.stateProof),
716
+ };
717
+ // allowed zero values
718
+ if (!txn.sptype)
719
+ delete txn.sptype;
720
+ if (!txn.note.length)
721
+ delete txn.note;
722
+ if (!txn.lx.length)
723
+ delete txn.lx;
724
+ if (!txn.amt)
725
+ delete txn.amt;
726
+ if (!txn.fee)
727
+ delete txn.fee;
728
+ if (!txn.fv)
729
+ delete txn.fv;
730
+ if (!txn.gen)
731
+ delete txn.gen;
732
+ if (!txn.apid)
733
+ delete txn.apid;
734
+ if (!txn.apaa || !txn.apaa.length)
735
+ delete txn.apaa;
736
+ if (!txn.apap)
737
+ delete txn.apap;
738
+ if (!txn.apsu)
739
+ delete txn.apsu;
740
+ if (!txn.apan)
741
+ delete txn.apan;
742
+ if (!txn.apfa || !txn.apfa.length)
743
+ delete txn.apfa;
744
+ if (!txn.apas || !txn.apas.length)
745
+ delete txn.apas;
746
+ if (!txn.apat || !txn.apat.length)
747
+ delete txn.apat;
748
+ if (!txn.apep)
749
+ delete txn.apep;
750
+ if (txn.grp === undefined)
751
+ delete txn.grp;
752
+ return txn;
753
+ }
683
754
  return undefined;
684
755
  }
685
756
  // eslint-disable-next-line camelcase
@@ -825,6 +896,17 @@ class Transaction {
825
896
  txn.appForeignAssets = txnForEnc.apas;
826
897
  }
827
898
  }
899
+ else if (txnForEnc.type === 'stpf') {
900
+ if (txnForEnc.sptype !== undefined) {
901
+ txn.stateProofType = txnForEnc.sptype;
902
+ }
903
+ if (txnForEnc.sp !== undefined) {
904
+ txn.stateProof = txnForEnc.sp;
905
+ }
906
+ if (txnForEnc.spmsg !== undefined) {
907
+ txn.stateProofMessage = txnForEnc.spmsg;
908
+ }
909
+ }
828
910
  return txn;
829
911
  }
830
912
  estimateSize() {
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../src/transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../src/transaction.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,10 @@ var TransactionType;
32
32
  * Application transaction
33
33
  */
34
34
  TransactionType["appl"] = "appl";
35
+ /**
36
+ * State proof transaction
37
+ */
38
+ TransactionType["stpf"] = "stpf";
35
39
  })(TransactionType = exports.TransactionType || (exports.TransactionType = {}));
36
40
  function isTransactionType(s) {
37
41
  return (s === TransactionType.pay ||
@@ -39,7 +43,8 @@ function isTransactionType(s) {
39
43
  s === TransactionType.acfg ||
40
44
  s === TransactionType.axfer ||
41
45
  s === TransactionType.afrz ||
42
- s === TransactionType.appl);
46
+ s === TransactionType.appl ||
47
+ s === TransactionType.stpf);
43
48
  }
44
49
  exports.isTransactionType = isTransactionType;
45
50
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/types/transactions/base.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,IAAY,eA8BX;AA9BD,WAAY,eAAe;IACzB;;OAEG;IACH,8BAAW,CAAA;IAEX;;OAEG;IACH,oCAAiB,CAAA;IAEjB;;OAEG;IACH,gCAAa,CAAA;IAEb;;OAEG;IACH,kCAAe,CAAA;IAEf;;OAEG;IACH,gCAAa,CAAA;IAEb;;OAEG;IACH,gCAAa,CAAA;AACf,CAAC,EA9BW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QA8B1B;AAED,SAAgB,iBAAiB,CAAC,CAAS;IACzC,OAAO,CACL,CAAC,KAAK,eAAe,CAAC,GAAG;QACzB,CAAC,KAAK,eAAe,CAAC,MAAM;QAC5B,CAAC,KAAK,eAAe,CAAC,IAAI;QAC1B,CAAC,KAAK,eAAe,CAAC,KAAK;QAC3B,CAAC,KAAK,eAAe,CAAC,IAAI;QAC1B,CAAC,KAAK,eAAe,CAAC,IAAI,CAC3B,CAAC;AACJ,CAAC;AATD,8CASC;AAED;;GAEG;AACH,IAAY,qBAsCX;AAtCD,WAAY,qBAAqB;IAC/B;;;OAGG;IACH,qEAAM,CAAA;IAEN;;;OAGG;IACH,uEAAO,CAAA;IAEP;;;OAGG;IACH,6EAAU,CAAA;IAEV;;;;OAIG;IACH,iFAAY,CAAA;IAEZ;;;OAGG;IACH,+FAAmB,CAAA;IAEnB;;;;OAIG;IACH,+FAAmB,CAAA;AACrB,CAAC,EAtCW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAsChC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/types/transactions/base.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,IAAY,eAkCX;AAlCD,WAAY,eAAe;IACzB;;OAEG;IACH,8BAAW,CAAA;IAEX;;OAEG;IACH,oCAAiB,CAAA;IAEjB;;OAEG;IACH,gCAAa,CAAA;IAEb;;OAEG;IACH,kCAAe,CAAA;IAEf;;OAEG;IACH,gCAAa,CAAA;IAEb;;OAEG;IACH,gCAAa,CAAA;IACb;;OAEG;IACH,gCAAa,CAAA;AACf,CAAC,EAlCW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAkC1B;AAED,SAAgB,iBAAiB,CAAC,CAAS;IACzC,OAAO,CACL,CAAC,KAAK,eAAe,CAAC,GAAG;QACzB,CAAC,KAAK,eAAe,CAAC,MAAM;QAC5B,CAAC,KAAK,eAAe,CAAC,IAAI;QAC1B,CAAC,KAAK,eAAe,CAAC,KAAK;QAC3B,CAAC,KAAK,eAAe,CAAC,IAAI;QAC1B,CAAC,KAAK,eAAe,CAAC,IAAI;QAC1B,CAAC,KAAK,eAAe,CAAC,IAAI,CAC3B,CAAC;AACJ,CAAC;AAVD,8CAUC;AAED;;GAEG;AACH,IAAY,qBAsCX;AAtCD,WAAY,qBAAqB;IAC/B;;;OAGG;IACH,qEAAM,CAAA;IAEN;;;OAGG;IACH,uEAAO,CAAA;IAEP;;;OAGG;IACH,6EAAU,CAAA;IAEV;;;;OAIG;IACH,iFAAY,CAAA;IAEZ;;;OAGG;IACH,+FAAmB,CAAA;IAEnB;;;;OAIG;IACH,+FAAmB,CAAA;AACrB,CAAC,EAtCW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAsChC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/types/transactions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAmBA,YAAY;AACZ,+BAA6E;AAAjD,uGAAA,eAAe,OAAA;AAK3C,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/types/transactions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAoBA,YAAY;AACZ,+BAA6E;AAAjD,uGAAA,eAAe,OAAA;AAK3C,4CAA0B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=stateproof.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stateproof.js","sourceRoot":"","sources":["../../../../../src/types/transactions/stateproof.ts"],"names":[],"mappings":""}
@@ -5,20 +5,22 @@ import AccountApplicationInformation from './accountApplicationInformation';
5
5
  import Block from './block';
6
6
  import Compile from './compile';
7
7
  import Dryrun from './dryrun';
8
+ import Genesis from './genesis';
8
9
  import GetAssetByID from './getAssetByID';
9
10
  import GetApplicationByID from './getApplicationByID';
10
11
  import HealthCheck from './healthCheck';
11
12
  import PendingTransactionInformation from './pendingTransactionInformation';
12
13
  import PendingTransactions from './pendingTransactions';
13
14
  import PendingTransactionsByAddress from './pendingTransactionsByAddress';
15
+ import GetTransactionProof from './getTransactionProof';
14
16
  import SendRawTransaction from './sendRawTransaction';
15
17
  import Status from './status';
16
18
  import StatusAfterBlock from './statusAfterBlock';
17
19
  import SuggestedParams from './suggestedParams';
18
20
  import Supply from './supply';
19
21
  import Versions from './versions';
20
- import Genesis from './genesis';
21
- import Proof from './proof';
22
+ import LightBlockHeaderProof from './lightBlockHeaderProof';
23
+ import StateProof from './stateproof';
22
24
  /**
23
25
  * Algod client connects an application to the Algorand blockchain. The algod client requires a valid algod REST endpoint IP address and algod token from an Algorand node that is connected to the network you plan to interact with.
24
26
  *
@@ -405,7 +407,7 @@ export default class AlgodClient extends ServiceClient {
405
407
  * ```typescript
406
408
  * const round = 18038133;
407
409
  * const txId = "MEUOC4RQJB23CQZRFRKYEI6WBO73VTTPST5A7B3S5OKBUY6LFUDA";
408
- * const proof = await algodClient.getProof(round, txId).do();
410
+ * const proof = await algodClient.getTransactionProof(round, txId).do();
409
411
  * ```
410
412
  *
411
413
  * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2blocksroundtransactionstxidproof)
@@ -413,8 +415,38 @@ export default class AlgodClient extends ServiceClient {
413
415
  * @param txID - The transaction ID for which to generate a proof.
414
416
  * @category GET
415
417
  */
416
- getProof(round, txID) {
417
- return new Proof(this.c, this.intDecoding, round, txID);
418
+ getTransactionProof(round, txID) {
419
+ return new GetTransactionProof(this.c, this.intDecoding, round, txID);
420
+ }
421
+ /**
422
+ * Gets a proof for a given light block header inside a state proof commitment.
423
+ *
424
+ * #### Example
425
+ * ```typescript
426
+ * const round = 11111111;
427
+ * const lightBlockHeaderProof = await algodClient.getLightBlockHeaderProof(round).do();
428
+ * ```
429
+ *
430
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2#get-v2blocksroundlightheaderproof)
431
+ * @param round
432
+ */
433
+ getLightBlockHeaderProof(round) {
434
+ return new LightBlockHeaderProof(this.c, this.intDecoding, round);
435
+ }
436
+ /**
437
+ * Gets a state proof that covers a given round.
438
+ *
439
+ * #### Example
440
+ * ```typescript
441
+ * const round = 11111111;
442
+ * const stateProof = await algodClient.getStateProof(round).do();
443
+ * ```
444
+ *
445
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2#get-v2stateproofsround)
446
+ * @param round
447
+ */
448
+ getStateProof(round) {
449
+ return new StateProof(this.c, this.intDecoding, round);
418
450
  }
419
451
  }
420
452
  //# sourceMappingURL=algod.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"algod.js","sourceRoot":"","sources":["../../../../../../src/client/v2/algod/algod.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"algod.js","sourceRoot":"","sources":["../../../../../../src/client/v2/algod/algod.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import JSONRequest from '../jsonrequest';
2
+ export default class GetTransactionProof extends JSONRequest {
3
+ constructor(c, intDecoding, round, txID) {
4
+ super(c, intDecoding);
5
+ this.round = round;
6
+ this.txID = txID;
7
+ this.round = round;
8
+ this.txID = txID;
9
+ }
10
+ path() {
11
+ return `/v2/blocks/${this.round}/transactions/${this.txID}/proof`;
12
+ }
13
+ /**
14
+ * Exclude assets and application data from results
15
+ * The type of hash function used to create the proof, must be one of: "sha512_256", "sha256"
16
+ *
17
+ * #### Example
18
+ * ```typescript
19
+ * const hashType = "sha256";
20
+ * const round = 123456;
21
+ * const txId = "abc123;
22
+ * const txProof = await algodClient.getTransactionProof(round, txId)
23
+ * .hashType(hashType)
24
+ * .do();
25
+ * ```
26
+ *
27
+ * @param hashType
28
+ * @category query
29
+ */
30
+ hashType(hashType) {
31
+ this.query.hashtype = hashType;
32
+ return this;
33
+ }
34
+ }
35
+ //# sourceMappingURL=getTransactionProof.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionProof.js","sourceRoot":"","sources":["../../../../../../src/client/v2/algod/getTransactionProof.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAIzC,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,WAAW;IAC1D,YACE,CAAa,EACb,WAAwB,EAChB,KAAa,EACb,IAAY;QAEpB,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QAHd,UAAK,GAAL,KAAK,CAAQ;QACb,SAAI,GAAJ,IAAI,CAAQ;QAIpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,IAAI;QACF,OAAO,cAAc,IAAI,CAAC,KAAK,iBAAiB,IAAI,CAAC,IAAI,QAAQ,CAAC;IACpE,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,QAAgB;QACvB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -0,0 +1,12 @@
1
+ import JSONRequest from '../jsonrequest';
2
+ export default class LightBlockHeaderProof extends JSONRequest {
3
+ constructor(c, intDecoding, round) {
4
+ super(c, intDecoding);
5
+ this.round = round;
6
+ this.round = round;
7
+ }
8
+ path() {
9
+ return `/v2/blocks/${this.round}/lightheader/proof`;
10
+ }
11
+ }
12
+ //# sourceMappingURL=lightBlockHeaderProof.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lightBlockHeaderProof.js","sourceRoot":"","sources":["../../../../../../src/client/v2/algod/lightBlockHeaderProof.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAIzC,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,WAAW;IAC5D,YAAY,CAAa,EAAE,WAAwB,EAAU,KAAa;QACxE,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QADqC,UAAK,GAAL,KAAK,CAAQ;QAGxE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,IAAI;QACF,OAAO,cAAc,IAAI,CAAC,KAAK,oBAAoB,CAAC;IACtD,CAAC;CACF"}