Skip to content
This repository has been archived by the owner on Sep 11, 2023. It is now read-only.

Commit

Permalink
edit message formatting
Browse files Browse the repository at this point in the history
  • Loading branch information
wd021 committed Sep 11, 2023
1 parent c134751 commit bd1ad4e
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

This repository is no longer actively maintained by Astroport. It will continue to be here on GitHub and freely available for anyone to fork and use, but we will not be actively monitoring or replying to issues and pull requests. To run this application, you will need to configure `NEXT_PUBLIC_API_CLASSIC` and `NEXT_PUBLIC_GQL_CLASSIC` in your env file.

1. NEXT_PUBLIC_API_CLASSIC can be setup by running an instance of [Astroport Classic API](https://github.com/astroport-fi/terra1-astroport-api)
2. NEXT_PUBLIC_GQL_CLASSIC can be any GraphQL endpoint that runs a terra 1 hive node.
1. `NEXT_PUBLIC_API_CLASSIC` can be setup by running an instance of [Astroport Classic API](https://github.com/astroport-fi/terra1-astroport-api)
2. `NEXT_PUBLIC_GQL_CLASSIC` can be any GraphQL endpoint that runs a terra 1 hive node.

---

Expand All @@ -30,8 +30,9 @@ Requirements:
For environment settings, you should create a `.env.local` file. You can copy the existing template (`cp .env.template .env.local`) in order to do so:

```
NEXT_PUBLIC_API_CLASSIC=""
NEXT_PUBLIC_GQL_CLASSIC=""
NEXT_PUBLIC_API_CLASSIC=
NEXT_PUBLIC_GQL_CLASSIC=
```

If you have nvm installed, you should select the correct npm version for your environment based on the [.nvmrc](.nvmrc). Note that v14 ships with npm v6 and you'll need to update npm with `npm install -g npm@7`.

Expand All @@ -58,15 +59,20 @@ Transaction-related notifications (including `"started"` notifications) are hand
## Posting Transactions

Astroport Core UI provides two hooks designed to simplify transaction posting:

- `useTx` — Thin wrapper around `@terra-money/wallet-provider`'s `post` function. Can be configured with `onPosting`, `onBroadcasting`, and `onError` lifecycle hooks. Returns a `submit` function that accepts Messages and a Fee. Hooks into Astroport Core's notification and transaction tracking systems to provide feedback to the user via Toast notifications.
- `useTransaction` — Higher-level hook that provides message debouncing, automatic fee calculation, and lifecycle state. Internally uses `useTx` to post. Can be configured with `onBroadcasting` and `onError` lifecycle hooks. Returns some state and a `submit` function to post the transaction.

### Adding new transactions

When adding a new transactions to the Astroport Core UI, the following tasks must be completed:

1. Select a new notification `txType` string for the transaction.
2. Add a component for the body of successful notifications to [components/notifications](components/notifications)
3. Add a case for the selected `txType` (step 1) using the component from step 2 to the `renderSuccessfulTxContent` function in the [Notifications component](components/Notifications.tsx).
4. Add the `type` and `notifications.data` object type definition to the `UseTxNotificationDetails` type in the [useTx](modules/common/hooks/useTx.ts) hook.
5. (optional) Add a custom title for transaction post error notifications to the `errorNotificationTitle` function in the [useTx](modules/common/hooks/useTx.ts) hook.

```
```

1 comment on commit bd1ad4e

@vercel
Copy link

@vercel vercel bot commented on bd1ad4e Sep 11, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.