flow-ft icon indicating copy to clipboard operation
flow-ft copied to clipboard

Add new transaction and script templates

Open joshuahannan opened this issue 5 years ago • 1 comments

Issue To Be Solved

There are many ways a fungible token can be used and we want more transaction templates to be defined for them.

Suggest A Solution

Please leave comments in this issue if you think of a transaction that you would like to be added as a template. This issue will also be updated with ideas as they are added.

When adding a new template:

  1. Create an issue for the template you are adding and assign it to yourself. Leave a comment on this post that you are working on it. Include any relevant questions or discussion about your template in the issue that you create.
  2. Write the template as a .cdc file and save it in the transactions directory.
  3. Save the fungible token address as 0xFUNGIBLETOKENADDRESS
  4. Save the example token address as 0xTOKENADDRESS
  5. Use ExampleToken as the token name and exampleTokenVault, etc. as the token and storage name
  6. Use transaction parameters instead of hard-coded values.
  7. Write a go template getter in lib/go/templates/ and run make generate in that directory.
  8. Write a test for your transaction in lib/go/test/ and make sure the test passes.
  9. Ensure that your template and test are well commented.

Template Suggestions

Feel free to choose a template from this list to work on, or make a comment to add your own idea.

  • Send tokens to multiple addresses. The addresses and amounts can be configurable parameters to the transaction.
  • Remove the public receiver capability from an account.
  • Remove the balance capability from an account.
  • Create a provider capability and store it in another account's /private/ domain.
  • Use an account's provider capability in your /private/ domain to withdraw tokens from their account and deposit it in your account.

joshuahannan avatar Jul 20 '20 18:07 joshuahannan

Anyone else have any suggestions for transactions or scripts you'd like to see? Leave a comment with your suggestions! 😄

joshuahannan avatar Jul 20 '20 18:07 joshuahannan