Skip to content

Commit 3479d73

Browse files
committed
docs(nano name service): add Name Service to README
1 parent 615ae0c commit 3479d73

File tree

1 file changed

+64
-4
lines changed

1 file changed

+64
-4
lines changed

README.md

+64-4
Original file line numberDiff line numberDiff line change
@@ -177,8 +177,13 @@ For more details about websocket, see [Websocket](#websocket).
177177
- [Uptime](#uptime)
178178
- [Version](#version)
179179
- [Rpc](#rpc)
180-
- [Datatypes](#datatypes)
181-
- [NanoTarget](#nanotarget)
180+
- [Name Service](#name-service)
181+
- [Resolve Username](#resolve-username)
182+
- [Resolve Target](#resolve-target)
183+
- [Datatypes](#datatypess)
184+
- [Nano Address](#nano-address)
185+
- [Nano Username](#nano-username)
186+
- [Nano Target](#nano-target)
182187

183188
## Wallet
184189

@@ -941,11 +946,66 @@ const info = await nona.rpc('account_info', {
941946
});
942947
```
943948

949+
## Name Service
950+
951+
### Resolve Username
952+
953+
```typescript
954+
resolveUsername(username: NanoUsername): Promise<NanoAddress>
955+
```
956+
957+
Resolves a username registered with the [Nano Name Service](https://nano.to) to the registed [NanoAddress](#nano-address)
958+
959+
```typescript
960+
const username = '@nona-lib';
961+
const address = resolveUsername(username): Promise<NanoAddress>
962+
```
963+
964+
### Resolve Target
965+
966+
```typescript
967+
resolveTarget(target: NanoTarget): Promise<NanoAddress>
968+
```
969+
970+
Takes in a [NanoTarget](#nano-target) to potentially resolve. It checks if the target is a valid [NanoAddress](#nano-address) or a [NanoUsername](#nano-username). In the case a [NanoUsername](#nano-username) is passed to the method, it is [automatically resolved](#resolve-username)
971+
972+
```typescript
973+
const target = '@nona-lib';
974+
const address = resolveTarget(target): Promise<NanoAddress>
975+
```
976+
977+
```typescript
978+
const target = 'nano_1rece';
979+
const address = resolveTarget(target): Promise<NanoAddress>
980+
```
981+
944982
## Datatypes
945983

946-
### NanoTarget
984+
### Nano Address
985+
986+
A valid Nano address according to the [offical docs](https://docs.nano.org/integration-guides/the-basics/#account-public-address):
987+
988+
```
989+
nano_1anrzcuwe64rwxzcco8dkhpyxpi8kd7zsjc1oeimpc3ppca4mrjtwnqposrs
990+
```
991+
992+
Its validity is checked with the [nanocurrency-js](https://github.com/marvinroger/nanocurrency-js/tree/master/packages/nanocurrency) package.
993+
994+
995+
### Nano Username
996+
997+
A Nano username in the form of `@name`:
998+
999+
```
1000+
@nona-lib
1001+
```
1002+
1003+
This username is resolved at runtime with the [Nano Name Service](https://nano.to).
1004+
1005+
1006+
### Nano Target
9471007

948-
A NanoTarget is either a valid address (e.g. `nano_1rece...`) or a resolveable username registered with the [Nano Name Service](nano.to) (e.g. `@nona-lib`). Nonalib automatically resolves these usernames to valid adresses for you.
1008+
A NanoTarget is either a valid [address](#nano-address) (e.g. `nano_1rece...`) or a resolveable username registered with the [Nano Name Service](https://nano.to) (e.g. `@nona-lib`). Nonalib automatically resolves these usernames to valid adresses for you.
9491009

9501010
## Handling Errors
9511011

0 commit comments

Comments
 (0)