Skip to content

Commit

Permalink
Merge pull request #2195 from decentdao/roles-0.2.0-bugfix-multiple-p…
Browse files Browse the repository at this point in the history
…ayments-stream-creation

`[roles-0.2.0]` BugFix Create Multiple Payment streams at once
  • Loading branch information
mudrila committed Aug 2, 2024
2 parents a3c821e + ba65fa1 commit a752e90
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 14 deletions.
7 changes: 5 additions & 2 deletions src/hooks/streams/useCreateSablierStream.ts
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ export default function useCreateSablierStream() {
}

const preparedStreamCreationTransactions: { calldata: Hex; targetAddress: Address }[] = [];
const preparedTokenApprovalsTransactions: { calldata: Hex; tokenAddress: Address }[] = [];
const preparedTokenApprovalsTransactions: { calldata: Hex; targetAddress: Address }[] = [];

linearStreams.forEach((streamData, index) => {
const recipient = recipients[index];
Expand Down Expand Up @@ -195,7 +195,10 @@ export default function useCreateSablierStream() {
calldata: sablierBatchCalldata,
targetAddress: sablierV2Batch,
});
preparedTokenApprovalsTransactions.push({ calldata: tokenCalldata, tokenAddress });
preparedTokenApprovalsTransactions.push({
calldata: tokenCalldata,
targetAddress: tokenAddress,
});
});

return { preparedStreamCreationTransactions, preparedTokenApprovalsTransactions };
Expand Down
29 changes: 17 additions & 12 deletions src/hooks/utils/useCreateRoles.ts
Original file line number Diff line number Diff line change
Expand Up @@ -352,7 +352,6 @@ export default function useCreateRoles() {
let smartAccountTxs: { calldata: Hex; targetAddress: Address }[] = [];
let hatPaymentAddedTxs: { calldata: Hex; targetAddress: Address }[] = [];
let hatPaymentEditedTxs: { calldata: Hex; targetAddress: Address }[] = [];
let hatPaymentTokenApprovalTxs: { calldata: Hex; tokenAddress: Address }[] = [];

let hatPaymentWearerChangedTxs: { calldata: Hex; targetAddress: Address }[] = [];
let hatPaymentHatRemovedTxs: { calldata: Hex; targetAddress: Address }[] = [];
Expand Down Expand Up @@ -530,10 +529,14 @@ export default function useCreateRoles() {
recipients,
);

hatPaymentTokenApprovalTxs.push(
...preparedPaymentTransactions.preparedTokenApprovalsTransactions,
);
hatPaymentAddedTxs.push(...preparedPaymentTransactions.preparedStreamCreationTransactions);
streamsData.forEach((_, i) => {
hatPaymentAddedTxs.push(
preparedPaymentTransactions.preparedTokenApprovalsTransactions[i],
);
hatPaymentAddedTxs.push(
preparedPaymentTransactions.preparedStreamCreationTransactions[i],
);
});
}

if (editedPayrollHats.length) {
Expand Down Expand Up @@ -576,10 +579,15 @@ export default function useCreateRoles() {
streamsData,
recipients,
);
hatPaymentTokenApprovalTxs.push(
...preparedPaymentTransactions.preparedTokenApprovalsTransactions,
);
hatPaymentEditedTxs.push(...preparedPaymentTransactions.preparedStreamCreationTransactions);

streamsData.forEach((_, i) => {
hatPaymentEditedTxs.push(
preparedPaymentTransactions.preparedTokenApprovalsTransactions[i],
);
hatPaymentEditedTxs.push(
preparedPaymentTransactions.preparedStreamCreationTransactions[i],
);
});
}

const proposalTransactions = {
Expand All @@ -589,7 +597,6 @@ export default function useCreateRoles() {
...removeHatTxs.map(() => topHatAccount),
...transferHatTxs.map(() => hatsProtocol),
...hatDetailsChangedTxs.map(() => hatsProtocol),
...hatPaymentTokenApprovalTxs.map(({ tokenAddress }) => tokenAddress),
...hatPaymentAddedTxs.map(({ targetAddress }) => targetAddress),
...hatPaymentEditedTxs.map(({ targetAddress }) => targetAddress),
],
Expand All @@ -599,7 +606,6 @@ export default function useCreateRoles() {
...removeHatTxs,
...transferHatTxs,
...hatDetailsChangedTxs,
...hatPaymentTokenApprovalTxs.map(({ calldata }) => calldata),
...hatPaymentAddedTxs.map(({ calldata }) => calldata),
...hatPaymentEditedTxs.map(({ calldata }) => calldata),
],
Expand All @@ -610,7 +616,6 @@ export default function useCreateRoles() {
...removeHatTxs.map(() => 0n),
...transferHatTxs.map(() => 0n),
...hatDetailsChangedTxs.map(() => 0n),
...hatPaymentTokenApprovalTxs.map(() => 0n),
...hatPaymentAddedTxs.map(() => 0n),
...hatPaymentEditedTxs.map(() => 0n),
],
Expand Down

0 comments on commit a752e90

Please sign in to comment.