holaplex / wonka

GNU Affero General Public License v3.0
8 stars 1 forks source link

feat: add support for fanout wallet #18

Closed echohtp closed 2 years ago

echohtp commented 2 years ago

Problem

Users request support for more wallets than metaplex standard supports

Solution

Use fanout wallets!

This PR adds support for createFanout and disperseFanout. createFanout currently only supports MembershipModel.Wallet, support for additional models, tbd.

createFanout

createFanout(
  encryptedMessage: EncryptedMessage!
  name: String!
  members: [FanoutMember]!
  splTokenAddress: String
): CreateFanoutResult
CreateFanoutResult:
message: String!
Operation message

fanoutPublicKey: String
Fanout public key

solanaWalletAddress: String
Solana address of the fanout

splFanoutAddress: String
Spl address of the fanout

splWalletAddress: String
Spl address of the fanout

disperseFanout

disperseFanout(
encryptedMessage: EncryptedMessage
fanoutPublicKey: String!
splTokenAddress: String
): DisperseFanoutResult
DisperseFanoutResult:
message: String!
Operation message

Tests

SOL

image

USDC

image

Multiple SPLs

image