Skip to content

Commit d428dda

Browse files
committed
Add MintingDelegation automation, APIs, and HTTP handler
- Add MintingDelegationCollectRewardsTrigger - Bump version of DbExternalPartyWalletStore - Bump version of DbUserWalletStore Squashed commits from the PR reviewed in #3470 Signed-off-by: Divam <dfordivam@gmail.com>
1 parent 010003e commit d428dda

File tree

18 files changed

+1986
-5
lines changed

18 files changed

+1986
-5
lines changed

apps/app/src/main/scala/org/lfdecentralizedtrust/splice/console/WalletAppReference.scala

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ import org.lfdecentralizedtrust.splice.http.v0.definitions.{
1818
AllocateAmuletResponse,
1919
GetBuyTrafficRequestStatusResponse,
2020
GetTransferOfferStatusResponse,
21+
ListMintingDelegationProposalsResponse,
22+
ListMintingDelegationsResponse,
2123
TransferInstructionResultResponse,
2224
}
2325
import org.lfdecentralizedtrust.splice.util.{Contract, ContractWithState}
@@ -600,6 +602,57 @@ abstract class WalletAppReference(
600602
httpCommand(HttpWalletAppClient.TokenStandard.RejectAllocationRequest(id))
601603
}
602604
}
605+
606+
@Help.Summary("List MintingDelegationProposals")
607+
@Help.Description(
608+
"List all MintingDelegationProposal contracts where the user is the delegate."
609+
)
610+
def listMintingDelegationProposals(
611+
after: Option[Long] = None,
612+
limit: Option[Int] = None,
613+
): ListMintingDelegationProposalsResponse =
614+
consoleEnvironment.run {
615+
httpCommand(HttpWalletAppClient.ListMintingDelegationProposals(after, limit))
616+
}
617+
618+
@Help.Summary("Accept MintingDelegationProposal")
619+
@Help.Description(
620+
"Accept a MintingDelegationProposal, creating a MintingDelegation contract and archiving an existing contract."
621+
)
622+
def acceptMintingDelegationProposal(contractId: String): String =
623+
consoleEnvironment.run {
624+
httpCommand(HttpWalletAppClient.AcceptMintingDelegationProposal(contractId))
625+
}
626+
627+
@Help.Summary("Reject MintingDelegationProposal")
628+
@Help.Description(
629+
"Reject a MintingDelegationProposal."
630+
)
631+
def rejectMintingDelegationProposal(contractId: String): Unit =
632+
consoleEnvironment.run {
633+
httpCommand(HttpWalletAppClient.RejectMintingDelegationProposal(contractId))
634+
}
635+
636+
@Help.Summary("List MintingDelegations")
637+
@Help.Description(
638+
"List all MintingDelegation contracts where the user is the delegate."
639+
)
640+
def listMintingDelegations(
641+
after: Option[Long] = None,
642+
limit: Option[Int] = None,
643+
): ListMintingDelegationsResponse =
644+
consoleEnvironment.run {
645+
httpCommand(HttpWalletAppClient.ListMintingDelegations(after, limit))
646+
}
647+
648+
@Help.Summary("Reject MintingDelegation")
649+
@Help.Description(
650+
"Reject/terminate a MintingDelegation contract."
651+
)
652+
def rejectMintingDelegation(contractId: String): Unit =
653+
consoleEnvironment.run {
654+
httpCommand(HttpWalletAppClient.RejectMintingDelegation(contractId))
655+
}
603656
}
604657

605658
/** Client (aka remote) reference to a wallet app in the style of ParticipantClientReference, i.e.,

0 commit comments

Comments
 (0)