algosdk 1.22.0 → 1.23.2

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 (106) 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/boxStorage.js +33 -0
  5. package/dist/cjs/src/boxStorage.js.map +1 -0
  6. package/dist/cjs/src/client/client.js +11 -9
  7. package/dist/cjs/src/client/client.js.map +1 -1
  8. package/dist/cjs/src/client/urlTokenBaseHTTPClient.js +93 -96
  9. package/dist/cjs/src/client/urlTokenBaseHTTPClient.js.map +1 -1
  10. package/dist/cjs/src/client/v2/algod/algod.js +38 -1
  11. package/dist/cjs/src/client/v2/algod/algod.js.map +1 -1
  12. package/dist/cjs/src/client/v2/algod/getApplicationBoxByName.js +44 -0
  13. package/dist/cjs/src/client/v2/algod/getApplicationBoxByName.js.map +1 -0
  14. package/dist/cjs/src/client/v2/algod/getApplicationBoxes.js +60 -0
  15. package/dist/cjs/src/client/v2/algod/getApplicationBoxes.js.map +1 -0
  16. package/dist/cjs/src/client/v2/algod/models/types.js +815 -42
  17. package/dist/cjs/src/client/v2/algod/models/types.js.map +1 -1
  18. package/dist/cjs/src/client/v2/{algod/models/base.js → basemodel.js} +1 -1
  19. package/dist/cjs/src/client/v2/basemodel.js.map +1 -0
  20. package/dist/cjs/src/client/v2/indexer/indexer.js +50 -0
  21. package/dist/cjs/src/client/v2/indexer/indexer.js.map +1 -1
  22. package/dist/cjs/src/client/v2/indexer/lookupApplicationBoxByIDandName.js +45 -0
  23. package/dist/cjs/src/client/v2/indexer/lookupApplicationBoxByIDandName.js.map +1 -0
  24. package/dist/cjs/src/client/v2/indexer/models/types.js +3077 -0
  25. package/dist/cjs/src/client/v2/indexer/models/types.js.map +1 -0
  26. package/dist/cjs/src/client/v2/indexer/searchForApplicationBoxes.js +99 -0
  27. package/dist/cjs/src/client/v2/indexer/searchForApplicationBoxes.js.map +1 -0
  28. package/dist/cjs/src/client/v2/jsonrequest.js +11 -1
  29. package/dist/cjs/src/client/v2/jsonrequest.js.map +1 -1
  30. package/dist/cjs/src/composer.js +4 -1
  31. package/dist/cjs/src/composer.js.map +1 -1
  32. package/dist/cjs/src/dryrun.js +1 -1
  33. package/dist/cjs/src/dryrun.js.map +1 -1
  34. package/dist/cjs/src/main.js +3 -2
  35. package/dist/cjs/src/main.js.map +1 -1
  36. package/dist/cjs/src/makeTxn.js +29 -14
  37. package/dist/cjs/src/makeTxn.js.map +1 -1
  38. package/dist/cjs/src/multisig.js +15 -25
  39. package/dist/cjs/src/multisig.js.map +1 -1
  40. package/dist/cjs/src/transaction.js +30 -0
  41. package/dist/cjs/src/transaction.js.map +1 -1
  42. package/dist/cjs/src/types/transactions/index.js.map +1 -1
  43. package/dist/esm/src/boxStorage.js +29 -0
  44. package/dist/esm/src/boxStorage.js.map +1 -0
  45. package/dist/esm/src/client/client.js +11 -9
  46. package/dist/esm/src/client/client.js.map +1 -1
  47. package/dist/esm/src/client/urlTokenBaseHTTPClient.js +93 -73
  48. package/dist/esm/src/client/urlTokenBaseHTTPClient.js.map +1 -1
  49. package/dist/esm/src/client/v2/algod/algod.js +38 -1
  50. package/dist/esm/src/client/v2/algod/algod.js.map +1 -1
  51. package/dist/esm/src/client/v2/algod/getApplicationBoxByName.js +38 -0
  52. package/dist/esm/src/client/v2/algod/getApplicationBoxByName.js.map +1 -0
  53. package/dist/esm/src/client/v2/algod/getApplicationBoxes.js +54 -0
  54. package/dist/esm/src/client/v2/algod/getApplicationBoxes.js.map +1 -0
  55. package/dist/esm/src/client/v2/algod/models/types.js +771 -2
  56. package/dist/esm/src/client/v2/algod/models/types.js.map +1 -1
  57. package/dist/esm/src/client/v2/{algod/models/base.js → basemodel.js} +1 -1
  58. package/dist/esm/src/client/v2/basemodel.js.map +1 -0
  59. package/dist/esm/src/client/v2/indexer/indexer.js +50 -0
  60. package/dist/esm/src/client/v2/indexer/indexer.js.map +1 -1
  61. package/dist/esm/src/client/v2/indexer/lookupApplicationBoxByIDandName.js +39 -0
  62. package/dist/esm/src/client/v2/indexer/lookupApplicationBoxByIDandName.js.map +1 -0
  63. package/dist/esm/src/client/v2/indexer/models/types.js +3009 -0
  64. package/dist/esm/src/client/v2/indexer/models/types.js.map +1 -0
  65. package/dist/esm/src/client/v2/indexer/searchForApplicationBoxes.js +93 -0
  66. package/dist/esm/src/client/v2/indexer/searchForApplicationBoxes.js.map +1 -0
  67. package/dist/esm/src/client/v2/jsonrequest.js +11 -1
  68. package/dist/esm/src/client/v2/jsonrequest.js.map +1 -1
  69. package/dist/esm/src/composer.js +4 -1
  70. package/dist/esm/src/composer.js.map +1 -1
  71. package/dist/esm/src/dryrun.js +1 -1
  72. package/dist/esm/src/dryrun.js.map +1 -1
  73. package/dist/esm/src/main.js +2 -0
  74. package/dist/esm/src/main.js.map +1 -1
  75. package/dist/esm/src/makeTxn.js +29 -14
  76. package/dist/esm/src/makeTxn.js.map +1 -1
  77. package/dist/esm/src/multisig.js +15 -25
  78. package/dist/esm/src/multisig.js.map +1 -1
  79. package/dist/esm/src/transaction.js +30 -0
  80. package/dist/esm/src/transaction.js.map +1 -1
  81. package/dist/esm/src/types/transactions/index.js +1 -1
  82. package/dist/esm/src/types/transactions/index.js.map +1 -1
  83. package/dist/types/src/boxStorage.d.ts +7 -0
  84. package/dist/types/src/client/client.d.ts +5 -3
  85. package/dist/types/src/client/urlTokenBaseHTTPClient.d.ts +8 -12
  86. package/dist/types/src/client/v2/algod/algod.d.ts +34 -1
  87. package/dist/types/src/client/v2/algod/getApplicationBoxByName.d.ts +28 -0
  88. package/dist/types/src/client/v2/algod/getApplicationBoxes.d.ts +43 -0
  89. package/dist/types/src/client/v2/algod/models/types.d.ts +117 -2
  90. package/dist/types/src/client/v2/{algod/models/base.d.ts → basemodel.d.ts} +0 -0
  91. package/dist/types/src/client/v2/indexer/indexer.d.ts +46 -0
  92. package/dist/types/src/client/v2/indexer/lookupApplicationBoxByIDandName.d.ts +29 -0
  93. package/dist/types/src/client/v2/indexer/models/types.d.ts +2689 -0
  94. package/dist/types/src/client/v2/indexer/searchForApplicationBoxes.d.ts +80 -0
  95. package/dist/types/src/client/v2/jsonrequest.d.ts +8 -1
  96. package/dist/types/src/composer.d.ts +4 -2
  97. package/dist/types/src/main.d.ts +1 -0
  98. package/dist/types/src/makeTxn.d.ts +22 -15
  99. package/dist/types/src/transaction.d.ts +3 -1
  100. package/dist/types/src/types/transactions/application.d.ts +3 -3
  101. package/dist/types/src/types/transactions/base.d.ts +15 -1
  102. package/dist/types/src/types/transactions/encoded.d.ts +12 -1
  103. package/dist/types/src/types/transactions/index.d.ts +1 -1
  104. package/package.json +6 -7
  105. package/dist/cjs/src/client/v2/algod/models/base.js.map +0 -1
  106. package/dist/esm/src/client/v2/algod/models/base.js.map +0 -1
@@ -476,8 +476,9 @@ export function makeAssetTransferTxnWithSuggestedParamsFromObject(o) {
476
476
  * @param lease - Lease a transaction
477
477
  * @param rekeyTo - String representation of the Algorand address that will be used to authorize all future transactions
478
478
  * @param extraPages - integer extra pages of memory to rent on creation of application
479
+ * @param boxes - Array of BoxReference, app ID and name of box to be accessed
479
480
  */
480
- export function makeApplicationCreateTxn(from, suggestedParams, onComplete, approvalProgram, clearProgram, numLocalInts, numLocalByteSlices, numGlobalInts, numGlobalByteSlices, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo, extraPages) {
481
+ export function makeApplicationCreateTxn(from, suggestedParams, onComplete, approvalProgram, clearProgram, numLocalInts, numLocalByteSlices, numGlobalInts, numGlobalByteSlices, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo, extraPages, boxes) {
481
482
  const o = {
482
483
  type: TransactionType.appl,
483
484
  from,
@@ -494,6 +495,7 @@ export function makeApplicationCreateTxn(from, suggestedParams, onComplete, appr
494
495
  appAccounts: accounts,
495
496
  appForeignApps: foreignApps,
496
497
  appForeignAssets: foreignAssets,
498
+ boxes,
497
499
  note,
498
500
  lease,
499
501
  reKeyTo: rekeyTo,
@@ -503,7 +505,7 @@ export function makeApplicationCreateTxn(from, suggestedParams, onComplete, appr
503
505
  }
504
506
  // helper for above makeApplicationCreateTxn, instead accepting an arguments object
505
507
  export function makeApplicationCreateTxnFromObject(o) {
506
- return makeApplicationCreateTxn(o.from, o.suggestedParams, o.onComplete, o.approvalProgram, o.clearProgram, o.numLocalInts, o.numLocalByteSlices, o.numGlobalInts, o.numGlobalByteSlices, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo, o.extraPages);
508
+ return makeApplicationCreateTxn(o.from, o.suggestedParams, o.onComplete, o.approvalProgram, o.clearProgram, o.numLocalInts, o.numLocalByteSlices, o.numGlobalInts, o.numGlobalByteSlices, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo, o.extraPages, o.boxes);
507
509
  }
508
510
  /**
509
511
  * Make a transaction that changes an application's approval and clear programs
@@ -526,8 +528,9 @@ export function makeApplicationCreateTxnFromObject(o) {
526
528
  * @param note - Arbitrary data for sender to store
527
529
  * @param lease - Lease a transaction
528
530
  * @param rekeyTo - String representation of the Algorand address that will be used to authorize all future transactions
531
+ * @param boxes - Array of BoxReference, app ID and name of box to be accessed
529
532
  */
530
- export function makeApplicationUpdateTxn(from, suggestedParams, appIndex, approvalProgram, clearProgram, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo) {
533
+ export function makeApplicationUpdateTxn(from, suggestedParams, appIndex, approvalProgram, clearProgram, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo, boxes) {
531
534
  const o = {
532
535
  type: TransactionType.appl,
533
536
  from,
@@ -540,6 +543,7 @@ export function makeApplicationUpdateTxn(from, suggestedParams, appIndex, approv
540
543
  appAccounts: accounts,
541
544
  appForeignApps: foreignApps,
542
545
  appForeignAssets: foreignAssets,
546
+ boxes,
543
547
  note,
544
548
  lease,
545
549
  reKeyTo: rekeyTo,
@@ -548,7 +552,7 @@ export function makeApplicationUpdateTxn(from, suggestedParams, appIndex, approv
548
552
  }
549
553
  // helper for above makeApplicationUpdateTxn, instead accepting an arguments object
550
554
  export function makeApplicationUpdateTxnFromObject(o) {
551
- return makeApplicationUpdateTxn(o.from, o.suggestedParams, o.appIndex, o.approvalProgram, o.clearProgram, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo);
555
+ return makeApplicationUpdateTxn(o.from, o.suggestedParams, o.appIndex, o.approvalProgram, o.clearProgram, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo, o.boxes);
552
556
  }
553
557
  /**
554
558
  * Make a transaction that deletes an application
@@ -569,8 +573,9 @@ export function makeApplicationUpdateTxnFromObject(o) {
569
573
  * @param note - Arbitrary data for sender to store
570
574
  * @param lease - Lease a transaction
571
575
  * @param rekeyTo - String representation of the Algorand address that will be used to authorize all future transactions
576
+ * @param boxes - Array of BoxReference, app ID and name of box to be accessed
572
577
  */
573
- export function makeApplicationDeleteTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo) {
578
+ export function makeApplicationDeleteTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo, boxes) {
574
579
  const o = {
575
580
  type: TransactionType.appl,
576
581
  from,
@@ -581,6 +586,7 @@ export function makeApplicationDeleteTxn(from, suggestedParams, appIndex, appArg
581
586
  appAccounts: accounts,
582
587
  appForeignApps: foreignApps,
583
588
  appForeignAssets: foreignAssets,
589
+ boxes,
584
590
  note,
585
591
  lease,
586
592
  reKeyTo: rekeyTo,
@@ -589,7 +595,7 @@ export function makeApplicationDeleteTxn(from, suggestedParams, appIndex, appArg
589
595
  }
590
596
  // helper for above makeApplicationDeleteTxn, instead accepting an arguments object
591
597
  export function makeApplicationDeleteTxnFromObject(o) {
592
- return makeApplicationDeleteTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo);
598
+ return makeApplicationDeleteTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo, o.boxes);
593
599
  }
594
600
  /**
595
601
  * Make a transaction that opts in to use an application
@@ -610,8 +616,9 @@ export function makeApplicationDeleteTxnFromObject(o) {
610
616
  * @param note - Arbitrary data for sender to store
611
617
  * @param lease - Lease a transaction
612
618
  * @param rekeyTo - String representation of the Algorand address that will be used to authorize all future transactions
619
+ * @param boxes - Array of BoxReference, app ID and name of box to be accessed
613
620
  */
614
- export function makeApplicationOptInTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo) {
621
+ export function makeApplicationOptInTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo, boxes) {
615
622
  const o = {
616
623
  type: TransactionType.appl,
617
624
  from,
@@ -622,6 +629,7 @@ export function makeApplicationOptInTxn(from, suggestedParams, appIndex, appArgs
622
629
  appAccounts: accounts,
623
630
  appForeignApps: foreignApps,
624
631
  appForeignAssets: foreignAssets,
632
+ boxes,
625
633
  note,
626
634
  lease,
627
635
  reKeyTo: rekeyTo,
@@ -630,7 +638,7 @@ export function makeApplicationOptInTxn(from, suggestedParams, appIndex, appArgs
630
638
  }
631
639
  // helper for above makeApplicationOptInTxn, instead accepting an argument object
632
640
  export function makeApplicationOptInTxnFromObject(o) {
633
- return makeApplicationOptInTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo);
641
+ return makeApplicationOptInTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo, o.boxes);
634
642
  }
635
643
  /**
636
644
  * Make a transaction that closes out a user's state in an application
@@ -651,8 +659,9 @@ export function makeApplicationOptInTxnFromObject(o) {
651
659
  * @param note - Arbitrary data for sender to store
652
660
  * @param lease - Lease a transaction
653
661
  * @param rekeyTo - String representation of the Algorand address that will be used to authorize all future transactions
662
+ * @param boxes - Array of BoxReference, app ID and name of box to be accessed
654
663
  */
655
- export function makeApplicationCloseOutTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo) {
664
+ export function makeApplicationCloseOutTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo, boxes) {
656
665
  const o = {
657
666
  type: TransactionType.appl,
658
667
  from,
@@ -663,6 +672,7 @@ export function makeApplicationCloseOutTxn(from, suggestedParams, appIndex, appA
663
672
  appAccounts: accounts,
664
673
  appForeignApps: foreignApps,
665
674
  appForeignAssets: foreignAssets,
675
+ boxes,
666
676
  note,
667
677
  lease,
668
678
  reKeyTo: rekeyTo,
@@ -671,7 +681,7 @@ export function makeApplicationCloseOutTxn(from, suggestedParams, appIndex, appA
671
681
  }
672
682
  // helper for above makeApplicationCloseOutTxn, instead accepting an argument object
673
683
  export function makeApplicationCloseOutTxnFromObject(o) {
674
- return makeApplicationCloseOutTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo);
684
+ return makeApplicationCloseOutTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo, o.boxes);
675
685
  }
676
686
  /**
677
687
  * Make a transaction that clears a user's state in an application
@@ -692,8 +702,9 @@ export function makeApplicationCloseOutTxnFromObject(o) {
692
702
  * @param note - Arbitrary data for sender to store
693
703
  * @param lease - Lease a transaction
694
704
  * @param rekeyTo - String representation of the Algorand address that will be used to authorize all future transactions
705
+ * @param boxes - Array of BoxReference, app ID and name of box to be accessed
695
706
  */
696
- export function makeApplicationClearStateTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo) {
707
+ export function makeApplicationClearStateTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo, boxes) {
697
708
  const o = {
698
709
  type: TransactionType.appl,
699
710
  from,
@@ -704,6 +715,7 @@ export function makeApplicationClearStateTxn(from, suggestedParams, appIndex, ap
704
715
  appAccounts: accounts,
705
716
  appForeignApps: foreignApps,
706
717
  appForeignAssets: foreignAssets,
718
+ boxes,
707
719
  note,
708
720
  lease,
709
721
  reKeyTo: rekeyTo,
@@ -712,7 +724,7 @@ export function makeApplicationClearStateTxn(from, suggestedParams, appIndex, ap
712
724
  }
713
725
  // helper for above makeApplicationClearStateTxn, instead accepting an argument object
714
726
  export function makeApplicationClearStateTxnFromObject(o) {
715
- return makeApplicationClearStateTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo);
727
+ return makeApplicationClearStateTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo, o.boxes);
716
728
  }
717
729
  /**
718
730
  * Make a transaction that just calls an application, doing nothing on completion
@@ -733,8 +745,9 @@ export function makeApplicationClearStateTxnFromObject(o) {
733
745
  * @param note - Arbitrary data for sender to store
734
746
  * @param lease - Lease a transaction
735
747
  * @param rekeyTo - String representation of the Algorand address that will be used to authorize all future transactions
748
+ * @param boxes - Array of BoxReference, app ID and name of box to be accessed
736
749
  */
737
- export function makeApplicationNoOpTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo) {
750
+ export function makeApplicationNoOpTxn(from, suggestedParams, appIndex, appArgs, accounts, foreignApps, foreignAssets, note, lease, rekeyTo, boxes) {
738
751
  const o = {
739
752
  type: TransactionType.appl,
740
753
  from,
@@ -745,6 +758,7 @@ export function makeApplicationNoOpTxn(from, suggestedParams, appIndex, appArgs,
745
758
  appAccounts: accounts,
746
759
  appForeignApps: foreignApps,
747
760
  appForeignAssets: foreignAssets,
761
+ boxes,
748
762
  note,
749
763
  lease,
750
764
  reKeyTo: rekeyTo,
@@ -753,7 +767,7 @@ export function makeApplicationNoOpTxn(from, suggestedParams, appIndex, appArgs,
753
767
  }
754
768
  // helper for above makeApplicationNoOpTxn, instead accepting an argument object
755
769
  export function makeApplicationNoOpTxnFromObject(o) {
756
- return makeApplicationNoOpTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo);
770
+ return makeApplicationNoOpTxn(o.from, o.suggestedParams, o.appIndex, o.appArgs, o.accounts, o.foreignApps, o.foreignAssets, o.note, o.lease, o.rekeyTo, o.boxes);
757
771
  }
758
772
  export { OnApplicationComplete } from './types/transactions/base';
759
773
  /**
@@ -776,6 +790,7 @@ export function makeApplicationCallTxnFromObject(options) {
776
790
  appAccounts: options.accounts,
777
791
  appForeignApps: options.foreignApps,
778
792
  appForeignAssets: options.foreignAssets,
793
+ boxes: options.boxes,
779
794
  note: options.note,
780
795
  lease: options.lease,
781
796
  reKeyTo: options.rekeyTo,
@@ -1 +1 @@
1
- {"version":3,"file":"makeTxn.js","sourceRoot":"","sources":["../../../src/makeTxn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"makeTxn.js","sourceRoot":"","sources":["../../../src/makeTxn.ts"],"names":[],"mappings":"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"}
@@ -169,8 +169,8 @@ export function mergeMultisigTransactions(multisigTxnBlobs) {
169
169
  pks: refSigTx.msig.subsig.map((subsig) => subsig.pk),
170
170
  };
171
171
  const refMsigAddr = address.encodeAddress(address.fromMultisigPreImg(refPreImage));
172
- let newSubsigs = refSigTx.msig.subsig;
173
- for (let i = 0; i < multisigTxnBlobs.length; i++) {
172
+ const newSubsigs = refSigTx.msig.subsig.map((sig) => ({ ...sig }));
173
+ for (let i = 1; i < multisigTxnBlobs.length; i++) {
174
174
  const unisig = encoding.decode(multisigTxnBlobs[i]);
175
175
  const unisigAlgoTxn = MultisigTransaction.from_obj_for_encoding(unisig.txn);
176
176
  if (unisigAlgoTxn.txID() !== refTxID) {
@@ -196,30 +196,20 @@ export function mergeMultisigTransactions(multisigTxnBlobs) {
196
196
  throw new Error(MULTISIG_MERGE_WRONG_PREIMAGE_ERROR_MSG);
197
197
  }
198
198
  // now, we can merge
199
- newSubsigs = unisig.msig.subsig.map((uniSubsig, index) => {
200
- const current = refSigTx.msig.subsig[index];
201
- if (current.s) {
202
- // we convert the Uint8Arrays uniSubsig.s and current.s to Buffers here because (as
203
- // of Dec 2020) React overrides the buffer package with an older version that does
204
- // not support Uint8Arrays in the comparison function. See this thread for more
205
- // info: https://github.com/algorand/js-algorand-sdk/issues/252
206
- if (uniSubsig.s &&
207
- Buffer.compare(Buffer.from(uniSubsig.s), Buffer.from(current.s)) !== 0) {
208
- // mismatch
209
- throw new Error(MULTISIG_MERGE_SIG_MISMATCH_ERROR_MSG);
210
- }
211
- return {
212
- pk: current.pk,
213
- s: current.s,
214
- };
199
+ unisig.msig.subsig.forEach((uniSubsig, index) => {
200
+ if (!uniSubsig.s)
201
+ return;
202
+ const current = newSubsigs[index];
203
+ // we convert the Uint8Arrays uniSubsig.s and current.s to Buffers here because (as
204
+ // of Dec 2020) React overrides the buffer package with an older version that does
205
+ // not support Uint8Arrays in the comparison function. See this thread for more
206
+ // info: https://github.com/algorand/js-algorand-sdk/issues/252
207
+ if (current.s &&
208
+ Buffer.compare(Buffer.from(uniSubsig.s), Buffer.from(current.s)) !== 0) {
209
+ // mismatch
210
+ throw new Error(MULTISIG_MERGE_SIG_MISMATCH_ERROR_MSG);
215
211
  }
216
- if (uniSubsig.s) {
217
- return {
218
- pk: current.pk,
219
- s: uniSubsig.s,
220
- };
221
- }
222
- return current;
212
+ current.s = uniSubsig.s;
223
213
  });
224
214
  }
225
215
  const msig = {
@@ -1 +1 @@
1
- {"version":3,"file":"multisig.js","sourceRoot":"","sources":["../../../src/multisig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multisig.js","sourceRoot":"","sources":["../../../src/multisig.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import * as address from './encoding/address';
3
3
  import * as encoding from './encoding/encoding';
4
4
  import * as nacl from './nacl/naclWrappers';
5
5
  import * as utils from './utils/utils';
6
+ import { translateBoxReferences } from './boxStorage';
6
7
  import { TransactionType, isTransactionType, } from './types/transactions/base';
7
8
  const ALGORAND_TRANSACTION_LENGTH = 52;
8
9
  export const ALGORAND_MIN_TX_FEE = 1000; // version v5
@@ -195,6 +196,16 @@ export class Transaction {
195
196
  throw Error('each foreign asset index must be a positive number and smaller than 2^53-1');
196
197
  });
197
198
  }
199
+ if (txn.boxes !== undefined) {
200
+ if (!Array.isArray(txn.boxes))
201
+ throw Error('boxes must be an Array of BoxReference.');
202
+ txn.boxes = txn.boxes.slice();
203
+ txn.boxes.forEach((box) => {
204
+ if (!Number.isSafeInteger(box.appIndex) ||
205
+ box.name.constructor !== Uint8Array)
206
+ throw Error('box app index must be a number and name must be an Uint8Array.');
207
+ });
208
+ }
198
209
  if (txn.assetMetadataHash !== undefined &&
199
210
  txn.assetMetadataHash.length !== 0) {
200
211
  if (typeof txn.assetMetadataHash === 'string') {
@@ -606,6 +617,7 @@ export class Transaction {
606
617
  apfa: this.appForeignApps,
607
618
  apas: this.appForeignAssets,
608
619
  apep: this.extraPages,
620
+ apbx: translateBoxReferences(this.boxes, this.appForeignApps, this.appIndex),
609
621
  };
610
622
  if (this.reKeyTo !== undefined) {
611
623
  txn.rekey = Buffer.from(this.reKeyTo.publicKey);
@@ -661,6 +673,14 @@ export class Transaction {
661
673
  delete txn.apfa;
662
674
  if (!txn.apas || !txn.apas.length)
663
675
  delete txn.apas;
676
+ for (const box of txn.apbx) {
677
+ if (!box.i)
678
+ delete box.i;
679
+ if (!box.n || !box.n.length)
680
+ delete box.n;
681
+ }
682
+ if (!txn.apbx || !txn.apbx.length)
683
+ delete txn.apbx;
664
684
  if (!txn.apat || !txn.apat.length)
665
685
  delete txn.apat;
666
686
  if (!txn.apep)
@@ -866,6 +886,16 @@ export class Transaction {
866
886
  if (txnForEnc.apas !== undefined) {
867
887
  txn.appForeignAssets = txnForEnc.apas;
868
888
  }
889
+ if (txnForEnc.apbx !== undefined) {
890
+ txn.boxes = txnForEnc.apbx.map((box) => ({
891
+ // We return 0 for the app ID so that it's guaranteed translateBoxReferences will
892
+ // translate the app index back to 0. If we instead returned the called app ID,
893
+ // translateBoxReferences would translate the app index to a nonzero value if the called
894
+ // app is also in the foreign app array.
895
+ appIndex: box.i ? txn.appForeignApps[box.i - 1] : 0,
896
+ name: box.n,
897
+ }));
898
+ }
869
899
  }
870
900
  else if (txnForEnc.type === 'stpf') {
871
901
  if (txnForEnc.sptype !== undefined) {
@@ -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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"}