@bonfida/spl-name-service 0.1.24 → 0.1.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -36,9 +36,10 @@ export declare function updateNameRegistryData(connection: Connection, name: str
36
36
  * @param curentNameOwner the current name Owner
37
37
  * @param nameClass The class of this name, if it exsists
38
38
  * @param nameParent The parent name of this name, if it exists
39
+ * @param parentOwner Parent name owner
39
40
  * @returns
40
41
  */
41
- export declare function transferNameOwnership(connection: Connection, name: string, newOwner: PublicKey, nameClass?: PublicKey, nameParent?: PublicKey): Promise<TransactionInstruction>;
42
+ export declare function transferNameOwnership(connection: Connection, name: string, newOwner: PublicKey, nameClass?: PublicKey, nameParent?: PublicKey, parentOwner?: PublicKey): Promise<TransactionInstruction>;
42
43
  /**
43
44
  * Delete the name account and transfer the rent to the target.
44
45
  *
package/dist/bindings.js CHANGED
@@ -31,7 +31,7 @@ async function createNameRegistry(connection, name, space, payerKey, nameOwner,
31
31
  : await connection.getMinimumBalanceForRentExemption(space);
32
32
  let nameParentOwner;
33
33
  if (parentName) {
34
- const parentAccount = await utils_2.getNameOwner(connection, parentName);
34
+ const { registry: parentAccount } = await utils_2.getNameOwner(connection, parentName);
35
35
  nameParentOwner = parentAccount.owner;
36
36
  }
37
37
  const createNameInstr = instructions_1.createInstruction(exports.NAME_PROGRAM_ID, web3_js_1.SystemProgram.programId, nameAccountKey, nameOwner, payerKey, hashed_name,
@@ -61,7 +61,7 @@ async function updateNameRegistryData(connection, name, offset, input_data, name
61
61
  }
62
62
  else {
63
63
  signer = (await state_1.NameRegistryState.retrieve(connection, nameAccountKey))
64
- .owner;
64
+ .registry.owner;
65
65
  }
66
66
  const updateInstr = instructions_1.updateInstruction(exports.NAME_PROGRAM_ID, nameAccountKey,
67
67
  //@ts-ignore
@@ -78,9 +78,10 @@ exports.updateNameRegistryData = updateNameRegistryData;
78
78
  * @param curentNameOwner the current name Owner
79
79
  * @param nameClass The class of this name, if it exsists
80
80
  * @param nameParent The parent name of this name, if it exists
81
+ * @param parentOwner Parent name owner
81
82
  * @returns
82
83
  */
83
- async function transferNameOwnership(connection, name, newOwner, nameClass, nameParent) {
84
+ async function transferNameOwnership(connection, name, newOwner, nameClass, nameParent, parentOwner) {
84
85
  const hashed_name = await utils_2.getHashedName(name);
85
86
  const nameAccountKey = await utils_2.getNameAccountKey(hashed_name, nameClass, nameParent);
86
87
  let curentNameOwner;
@@ -88,9 +89,9 @@ async function transferNameOwnership(connection, name, newOwner, nameClass, name
88
89
  curentNameOwner = nameClass;
89
90
  }
90
91
  else {
91
- curentNameOwner = (await state_1.NameRegistryState.retrieve(connection, nameAccountKey)).owner;
92
+ curentNameOwner = (await state_1.NameRegistryState.retrieve(connection, nameAccountKey)).registry.owner;
92
93
  }
93
- const transferInstr = instructions_1.transferInstruction(exports.NAME_PROGRAM_ID, nameAccountKey, newOwner, curentNameOwner, nameClass);
94
+ const transferInstr = instructions_1.transferInstruction(exports.NAME_PROGRAM_ID, nameAccountKey, newOwner, curentNameOwner, nameClass, nameParent, parentOwner);
94
95
  return transferInstr;
95
96
  }
96
97
  exports.transferNameOwnership = transferNameOwnership;
@@ -113,7 +114,7 @@ async function deleteNameRegistry(connection, name, refundTargetKey, nameClass,
113
114
  }
114
115
  else {
115
116
  nameOwner = (await state_1.NameRegistryState.retrieve(connection, nameAccountKey))
116
- .owner;
117
+ .registry.owner;
117
118
  }
118
119
  const changeAuthoritiesInstr = instructions_1.deleteInstruction(exports.NAME_PROGRAM_ID, nameAccountKey, refundTargetKey, nameOwner);
119
120
  return changeAuthoritiesInstr;
@@ -1 +1 @@
1
- {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../src/bindings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../src/bindings.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -5,3 +5,4 @@ export * from "./twitter_bindings";
5
5
  export * from "./tokens";
6
6
  export * from "./utils";
7
7
  export * from "./instructions";
8
+ export * from "./nft";
package/dist/index.js CHANGED
@@ -17,4 +17,5 @@ __exportStar(require("./twitter_bindings"), exports);
17
17
  __exportStar(require("./tokens"), exports);
18
18
  __exportStar(require("./utils"), exports);
19
19
  __exportStar(require("./instructions"), exports);
20
+ __exportStar(require("./nft"), exports);
20
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB;AACxB,6CAA2B;AAC3B,0CAAwB;AACxB,qDAAmC;AACnC,2CAAyB;AACzB,0CAAwB;AACxB,iDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB;AACxB,6CAA2B;AAC3B,0CAAwB;AACxB,qDAAmC;AACnC,2CAAyB;AACzB,0CAAwB;AACxB,iDAA+B;AAC/B,wCAAsB"}
@@ -3,5 +3,5 @@ import { PublicKey, TransactionInstruction } from "@solana/web3.js";
3
3
  import { Numberu32, Numberu64 } from "./utils";
4
4
  export declare function createInstruction(nameProgramId: PublicKey, systemProgramId: PublicKey, nameKey: PublicKey, nameOwnerKey: PublicKey, payerKey: PublicKey, hashed_name: Buffer, lamports: Numberu64, space: Numberu32, nameClassKey?: PublicKey, nameParent?: PublicKey, nameParentOwner?: PublicKey): TransactionInstruction;
5
5
  export declare function updateInstruction(nameProgramId: PublicKey, nameAccountKey: PublicKey, offset: Numberu32, input_data: Buffer, nameUpdateSigner: PublicKey): TransactionInstruction;
6
- export declare function transferInstruction(nameProgramId: PublicKey, nameAccountKey: PublicKey, newOwnerKey: PublicKey, currentNameOwnerKey: PublicKey, nameClassKey?: PublicKey): TransactionInstruction;
6
+ export declare function transferInstruction(nameProgramId: PublicKey, nameAccountKey: PublicKey, newOwnerKey: PublicKey, currentNameOwnerKey: PublicKey, nameClassKey?: PublicKey, nameParent?: PublicKey, parentOwner?: PublicKey): TransactionInstruction;
7
7
  export declare function deleteInstruction(nameProgramId: PublicKey, nameAccountKey: PublicKey, refundTargetKey: PublicKey, nameOwnerKey: PublicKey): TransactionInstruction;
@@ -105,7 +105,7 @@ function updateInstruction(nameProgramId, nameAccountKey, offset, input_data, na
105
105
  });
106
106
  }
107
107
  exports.updateInstruction = updateInstruction;
108
- function transferInstruction(nameProgramId, nameAccountKey, newOwnerKey, currentNameOwnerKey, nameClassKey) {
108
+ function transferInstruction(nameProgramId, nameAccountKey, newOwnerKey, currentNameOwnerKey, nameClassKey, nameParent, parentOwner) {
109
109
  const buffers = [Buffer.from(Int8Array.from([2])), newOwnerKey.toBuffer()];
110
110
  const data = Buffer.concat(buffers);
111
111
  const keys = [
@@ -115,7 +115,7 @@ function transferInstruction(nameProgramId, nameAccountKey, newOwnerKey, current
115
115
  isWritable: true,
116
116
  },
117
117
  {
118
- pubkey: currentNameOwnerKey,
118
+ pubkey: parentOwner ? parentOwner : currentNameOwnerKey,
119
119
  isSigner: true,
120
120
  isWritable: false,
121
121
  },
@@ -127,6 +127,20 @@ function transferInstruction(nameProgramId, nameAccountKey, newOwnerKey, current
127
127
  isWritable: false,
128
128
  });
129
129
  }
130
+ if (parentOwner && nameParent) {
131
+ if (!nameClassKey) {
132
+ keys.push({
133
+ pubkey: web3_js_1.PublicKey.default,
134
+ isSigner: false,
135
+ isWritable: false,
136
+ });
137
+ }
138
+ keys.push({
139
+ pubkey: nameParent,
140
+ isSigner: false,
141
+ isWritable: false,
142
+ });
143
+ }
130
144
  return new web3_js_1.TransactionInstruction({
131
145
  keys,
132
146
  programId: nameProgramId,
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
package/dist/nft.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ /// <reference types="node" />
2
+ import { PublicKey, Connection } from "@solana/web3.js";
3
+ /**
4
+ * Mainnet program ID
5
+ */
6
+ export declare const NAME_TOKENIZER_ID: PublicKey;
7
+ /**
8
+ * PDA prefix
9
+ */
10
+ export declare const MINT_PREFIX: Buffer;
11
+ /**
12
+ * This function can be used to retrieve the owner of a tokenized domain name
13
+ *
14
+ * @param connection The solana connection object to the RPC node
15
+ * @param nameAccount The key of the domain name
16
+ * @returns
17
+ */
18
+ export declare const retrieveNftOwner: (connection: Connection, nameAccount: PublicKey) => Promise<PublicKey | undefined>;
19
+ /**
20
+ * This function can be used to retrieve all the tokenized domains name
21
+ *
22
+ * @param connection The solana connection object to the RPC node
23
+ * @returns
24
+ */
25
+ export declare const retrieveNfts: (connection: Connection) => Promise<PublicKey[]>;
package/dist/nft.js ADDED
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.retrieveNfts = exports.retrieveNftOwner = exports.MINT_PREFIX = exports.NAME_TOKENIZER_ID = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const spl_token_1 = require("@solana/spl-token");
6
+ /**
7
+ * Mainnet program ID
8
+ */
9
+ exports.NAME_TOKENIZER_ID = new web3_js_1.PublicKey("nftD3vbNkNqfj2Sd3HZwbpw4BxxKWr4AjGb9X38JeZk");
10
+ /**
11
+ * PDA prefix
12
+ */
13
+ exports.MINT_PREFIX = Buffer.from("tokenized_name");
14
+ /**
15
+ * This function can be used to retrieve the owner of a tokenized domain name
16
+ *
17
+ * @param connection The solana connection object to the RPC node
18
+ * @param nameAccount The key of the domain name
19
+ * @returns
20
+ */
21
+ const retrieveNftOwner = async (connection, nameAccount) => {
22
+ var _a;
23
+ try {
24
+ const [mint] = await web3_js_1.PublicKey.findProgramAddress([exports.MINT_PREFIX, nameAccount.toBuffer()], exports.NAME_TOKENIZER_ID);
25
+ const mintInfo = await spl_token_1.getMint(connection, mint);
26
+ if (mintInfo.supply.toString() === "0") {
27
+ return undefined;
28
+ }
29
+ const { value } = await connection.getTokenLargestAccounts(mint);
30
+ const holder = (_a = value.find((e) => e.amount === "1")) === null || _a === void 0 ? void 0 : _a.address;
31
+ if (!holder) {
32
+ return undefined;
33
+ }
34
+ const info = await connection.getAccountInfo(holder);
35
+ if (!info || !info.data) {
36
+ return undefined;
37
+ }
38
+ return new web3_js_1.PublicKey(info.data.slice(32, 64));
39
+ }
40
+ catch (err) {
41
+ console.log(err);
42
+ return undefined;
43
+ }
44
+ };
45
+ exports.retrieveNftOwner = retrieveNftOwner;
46
+ /**
47
+ * This function can be used to retrieve all the tokenized domains name
48
+ *
49
+ * @param connection The solana connection object to the RPC node
50
+ * @returns
51
+ */
52
+ const retrieveNfts = async (connection) => {
53
+ const filters = [
54
+ {
55
+ memcmp: {
56
+ offset: 0,
57
+ bytes: "3",
58
+ },
59
+ },
60
+ ];
61
+ const result = await connection.getProgramAccounts(exports.NAME_TOKENIZER_ID, {
62
+ filters,
63
+ });
64
+ const offset = 1 + 1 + 32 + 32;
65
+ return result.map((e) => new web3_js_1.PublicKey(e.account.data.slice(offset, offset + 32)));
66
+ };
67
+ exports.retrieveNfts = retrieveNfts;
68
+ //# sourceMappingURL=nft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nft.js","sourceRoot":"","sources":["../src/nft.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;AACxD,iDAA4C;AAE5C;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAI,mBAAS,CAC5C,6CAA6C,CAC9C,CAAC;AAEF;;GAEG;AACU,QAAA,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAEzD;;;;;;GAMG;AACI,MAAM,gBAAgB,GAAG,KAAK,EACnC,UAAsB,EACtB,WAAsB,EACtB,EAAE;;IACF,IAAI;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,mBAAS,CAAC,kBAAkB,CAC/C,CAAC,mBAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,EACrC,yBAAiB,CAClB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,mBAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,EAAE;YACtC,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAEjE,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,0CAAE,OAAO,CAAC;QAC5D,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACvB,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,mBAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;KAC/C;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,OAAO,SAAS,CAAC;KAClB;AACH,CAAC,CAAC;AAhCW,QAAA,gBAAgB,oBAgC3B;AAEF;;;;;GAKG;AACI,MAAM,YAAY,GAAG,KAAK,EAAE,UAAsB,EAAE,EAAE;IAC3D,MAAM,OAAO,GAAG;QACd;YACE,MAAM,EAAE;gBACN,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,GAAG;aACX;SACF;KACF,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,yBAAiB,EAAE;QACpE,OAAO;KACR,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,GAAG,CACf,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,mBAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAC,CAAC,CAChE,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,YAAY,gBAiBvB"}
package/dist/state.d.ts CHANGED
@@ -13,7 +13,10 @@ export declare class NameRegistryState {
13
13
  owner: Uint8Array;
14
14
  class: Uint8Array;
15
15
  });
16
- static retrieve(connection: Connection, nameAccountKey: PublicKey): Promise<NameRegistryState>;
16
+ static retrieve(connection: Connection, nameAccountKey: PublicKey): Promise<{
17
+ registry: NameRegistryState;
18
+ nftOwner: PublicKey | undefined;
19
+ }>;
17
20
  static _retrieveBatch(connection: Connection, nameAccountKeys: PublicKey[]): Promise<(NameRegistryState | undefined)[]>;
18
21
  static retrieveBatch(connection: Connection, nameAccountKeys: PublicKey[]): Promise<(NameRegistryState | undefined)[]>;
19
22
  }
package/dist/state.js CHANGED
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Mint = exports.TokenData = exports.NameRegistryState = void 0;
4
4
  const web3_js_1 = require("@solana/web3.js");
5
5
  const borsh_1 = require("borsh");
6
+ const nft_1 = require("./nft");
6
7
  class NameRegistryState {
7
8
  constructor(obj) {
8
9
  this.parentName = new web3_js_1.PublicKey(obj.parentName);
@@ -11,13 +12,14 @@ class NameRegistryState {
11
12
  }
12
13
  static async retrieve(connection, nameAccountKey) {
13
14
  var _a;
14
- let nameAccount = await connection.getAccountInfo(nameAccountKey, "processed");
15
+ const nameAccount = await connection.getAccountInfo(nameAccountKey);
15
16
  if (!nameAccount) {
16
17
  throw new Error("Invalid name account provided");
17
18
  }
18
19
  let res = borsh_1.deserializeUnchecked(this.schema, NameRegistryState, nameAccount.data);
19
20
  res.data = (_a = nameAccount.data) === null || _a === void 0 ? void 0 : _a.slice(this.HEADER_LEN);
20
- return res;
21
+ const nftOwner = await nft_1.retrieveNftOwner(connection, nameAccountKey);
22
+ return { registry: res, nftOwner };
21
23
  }
22
24
  static async _retrieveBatch(connection, nameAccountKeys) {
23
25
  const nameAccounts = await connection.getMultipleAccountsInfo(nameAccountKeys);
package/dist/state.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
package/dist/tokens.js CHANGED
@@ -7,7 +7,7 @@ const state_1 = require("./state");
7
7
  exports.TOKEN_TLD = new web3_js_1.PublicKey("6NSu2tci4apRKQtt257bAVcvqYjB3zV2H1dWo56vgpa6");
8
8
  const getTokenInfoFromMint = async (connection, mint) => {
9
9
  const nameKey = await utils_1.getNameAccountKey(await utils_1.getHashedName(mint.toBase58()), undefined, exports.TOKEN_TLD);
10
- const registry = await state_1.NameRegistryState.retrieve(connection, nameKey);
10
+ const { registry } = await state_1.NameRegistryState.retrieve(connection, nameKey);
11
11
  if (!registry.data) {
12
12
  throw new Error("Invalid account data");
13
13
  }
@@ -16,7 +16,7 @@ const getTokenInfoFromMint = async (connection, mint) => {
16
16
  exports.getTokenInfoFromMint = getTokenInfoFromMint;
17
17
  const getTokenInfoFromName = async (connection, name) => {
18
18
  const reverseNameKey = await utils_1.getNameAccountKey(await utils_1.getHashedName(name), undefined, exports.TOKEN_TLD);
19
- const reverseRegistry = await state_1.NameRegistryState.retrieve(connection, reverseNameKey);
19
+ const { registry: reverseRegistry } = await state_1.NameRegistryState.retrieve(connection, reverseNameKey);
20
20
  if (!reverseRegistry.data) {
21
21
  throw new Error("Invalid account data");
22
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;AACxD,mCAA2D;AAC3D,mCAA6D;AAEhD,QAAA,SAAS,GAAG,IAAI,mBAAS,CACpC,8CAA8C,CAC/C,CAAC;AAEK,MAAM,oBAAoB,GAAG,KAAK,EACvC,UAAsB,EACtB,IAAe,EACf,EAAE;IACF,MAAM,OAAO,GAAG,MAAM,yBAAiB,CACrC,MAAM,qBAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EACpC,SAAS,EACT,iBAAS,CACV,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,yBAAiB,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACzC;IACD,OAAO,iBAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC9C,CAAC,CAAC;AAdW,QAAA,oBAAoB,wBAc/B;AAEK,MAAM,oBAAoB,GAAG,KAAK,EACvC,UAAsB,EACtB,IAAY,EACZ,EAAE;IACF,MAAM,cAAc,GAAG,MAAM,yBAAiB,CAC5C,MAAM,qBAAa,CAAC,IAAI,CAAC,EACzB,SAAS,EACT,iBAAS,CACV,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,yBAAiB,CAAC,QAAQ,CACtD,UAAU,EACV,cAAc,CACf,CAAC;IACF,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACzC;IACD,MAAM,IAAI,GAAG,IAAI,mBAAS,CAAC,YAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IACxE,OAAO,MAAM,4BAAoB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC,CAAC;AAlBW,QAAA,oBAAoB,wBAkB/B"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;AACxD,mCAA2D;AAC3D,mCAA6D;AAEhD,QAAA,SAAS,GAAG,IAAI,mBAAS,CACpC,8CAA8C,CAC/C,CAAC;AAEK,MAAM,oBAAoB,GAAG,KAAK,EACvC,UAAsB,EACtB,IAAe,EACf,EAAE;IACF,MAAM,OAAO,GAAG,MAAM,yBAAiB,CACrC,MAAM,qBAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EACpC,SAAS,EACT,iBAAS,CACV,CAAC;IACF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,yBAAiB,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC3E,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACzC;IACD,OAAO,iBAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC9C,CAAC,CAAC;AAdW,QAAA,oBAAoB,wBAc/B;AAEK,MAAM,oBAAoB,GAAG,KAAK,EACvC,UAAsB,EACtB,IAAY,EACZ,EAAE;IACF,MAAM,cAAc,GAAG,MAAM,yBAAiB,CAC5C,MAAM,qBAAa,CAAC,IAAI,CAAC,EACzB,SAAS,EACT,iBAAS,CACV,CAAC;IACF,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,MAAM,yBAAiB,CAAC,QAAQ,CACpE,UAAU,EACV,cAAc,CACf,CAAC;IACF,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACzC;IACD,MAAM,IAAI,GAAG,IAAI,mBAAS,CAAC,YAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IACxE,OAAO,MAAM,4BAAoB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC,CAAC;AAlBW,QAAA,oBAAoB,wBAkB/B"}
@@ -92,7 +92,7 @@ exports.getTwitterRegistryKey = getTwitterRegistryKey;
92
92
  async function getTwitterRegistry(connection, twitter_handle) {
93
93
  const hashedTwitterHandle = await utils_1.getHashedName(twitter_handle);
94
94
  const twitterHandleRegistryKey = await utils_1.getNameAccountKey(hashedTwitterHandle, undefined, exports.TWITTER_ROOT_PARENT_REGISTRY_KEY);
95
- const registry = state_1.NameRegistryState.retrieve(connection, twitterHandleRegistryKey);
95
+ const { registry } = await state_1.NameRegistryState.retrieve(connection, twitterHandleRegistryKey);
96
96
  return registry;
97
97
  }
98
98
  exports.getTwitterRegistry = getTwitterRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"twitter_bindings.js","sourceRoot":"","sources":["../src/twitter_bindings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"twitter_bindings.js","sourceRoot":"","sources":["../src/twitter_bindings.ts"],"names":[],"mappings":";;;AAAA,6CAKyB;AAEzB,yCAAiE;AACjE,iDAKwB;AACxB,mCAA4C;AAC5C,mCAMiB;AACjB,iCAA6E;AAE7E,oDAAoD;AACpD,mBAAmB;AAEN,QAAA,8BAA8B,GAAG,IAAI,mBAAS,CACzD,8CAA8C,CAC/C,CAAC;AACF,2FAA2F;AAC3F,uFAAuF;AAC1E,QAAA,gCAAgC,GAAG,IAAI,mBAAS,CAC3D,8CAA8C,CAC/C,CAAC;AAEF,oDAAoD;AACpD,WAAW;AAEX,6DAA6D;AACtD,KAAK,UAAU,6BAA6B,CACjD,UAAsB,EACtB,aAAqB,EACrB,cAAyB,EACzB,KAAa,EAAE,6EAA6E;AAC5F,QAAmB;IAEnB,8BAA8B;IAC9B,MAAM,mBAAmB,GAAG,MAAM,qBAAa,CAAC,aAAa,CAAC,CAAC;IAC/D,MAAM,wBAAwB,GAAG,MAAM,yBAAiB,CACtD,mBAAmB,EACnB,SAAS,EACT,wCAAgC,CACjC,CAAC;IAEF,IAAI,YAAY,GAAG;QACjB,gCAAiB,CACf,0BAAe,EACf,uBAAa,CAAC,SAAS,EACvB,wBAAwB,EACxB,cAAc,EACd,QAAQ,EACR,mBAAmB;QACnB,YAAY;QACZ,IAAI,iBAAS,CAAC,MAAM,UAAU,CAAC,iCAAiC,CAAC,KAAK,CAAC,CAAC;QACxE,YAAY;QACZ,IAAI,iBAAS,CAAC,KAAK,CAAC,EACpB,SAAS,EACT,wCAAgC,EAChC,sCAA8B,CAAC,+EAA+E;SAC/G;KACF,CAAC;IAEF,YAAY,GAAG,YAAY,CAAC,MAAM,CAChC,MAAM,4BAA4B,CAChC,UAAU,EACV,aAAa,EACb,wBAAwB,EACxB,cAAc,EACd,QAAQ,CACT,CACF,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC;AA5CD,sEA4CC;AAED,iEAAiE;AACjE,gCAAgC;AACzB,KAAK,UAAU,yBAAyB,CAC7C,aAAqB,EACrB,cAAyB,EACzB,MAAc,EAAE,wEAAwE;AACxF,UAAkB;IAElB,MAAM,mBAAmB,GAAG,MAAM,qBAAa,CAAC,aAAa,CAAC,CAAC;IAC/D,MAAM,wBAAwB,GAAG,MAAM,yBAAiB,CACtD,mBAAmB,EACnB,SAAS,EACT,wCAAgC,CACjC,CAAC;IAEF,MAAM,YAAY,GAAG;QACnB,gCAAiB,CACf,0BAAe,EACf,wBAAwB;QACxB,YAAY;QACZ,IAAI,iBAAS,CAAC,MAAM,CAAC,EACrB,UAAU,EACV,cAAc,CACf;KACF,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC;AAzBD,8DAyBC;AAED,wDAAwD;AACxD,6DAA6D;AACtD,KAAK,UAAU,oBAAoB,CACxC,UAAsB,EACtB,aAAqB,EACrB,qBAAgC,EAChC,iBAA4B,EAC5B,QAAmB;IAEnB,MAAM,mBAAmB,GAAG,MAAM,qBAAa,CAAC,aAAa,CAAC,CAAC;IAC/D,MAAM,wBAAwB,GAAG,MAAM,yBAAiB,CACtD,mBAAmB,EACnB,SAAS,EACT,wCAAgC,CACjC,CAAC;IAEF,8CAA8C;IAC9C,IAAI,YAAY,GAAG;QACjB,kCAAmB,CACjB,0BAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,EACrB,SAAS,CACV;KACF,CAAC;IAEF,sCAAsC;IACtC,MAAM,2BAA2B,GAAG,MAAM,qBAAa,CACrD,qBAAqB,CAAC,QAAQ,EAAE,CACjC,CAAC;IACF,MAAM,yBAAyB,GAAG,MAAM,yBAAiB,CACvD,2BAA2B,EAC3B,sCAA8B,EAC9B,SAAS,CACV,CAAC;IACF,YAAY,CAAC,IAAI,CACf,MAAM,6BAAkB,CACtB,UAAU,EACV,qBAAqB,CAAC,QAAQ,EAAE,EAChC,QAAQ,EACR,sCAA8B,EAC9B,wCAAgC,CACjC,CACF,CAAC;IAEF,kCAAkC;IAClC,YAAY,GAAG,YAAY,CAAC,MAAM,CAChC,MAAM,4BAA4B,CAChC,UAAU,EACV,aAAa,EACb,wBAAwB,EACxB,iBAAiB,EACjB,QAAQ,CACT,CACF,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC;AAxDD,oDAwDC;AAED,0DAA0D;AAC1D,gCAAgC;AACzB,KAAK,UAAU,qBAAqB,CACzC,aAAqB,EACrB,cAAyB;IAEzB,MAAM,mBAAmB,GAAG,MAAM,qBAAa,CAAC,aAAa,CAAC,CAAC;IAC/D,MAAM,wBAAwB,GAAG,MAAM,yBAAiB,CACtD,mBAAmB,EACnB,SAAS,EACT,wCAAgC,CACjC,CAAC;IAEF,MAAM,oBAAoB,GAAG,MAAM,qBAAa,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5E,MAAM,kBAAkB,GAAG,MAAM,yBAAiB,CAChD,oBAAoB,EACpB,sCAA8B,EAC9B,wCAAgC,CACjC,CAAC;IAEF,MAAM,YAAY,GAAG;QACnB,kCAAkC;QAClC,gCAAiB,CACf,0BAAe,EACf,wBAAwB,EACxB,cAAc,EACd,cAAc,CACf;QACD,8BAA8B;QAC9B,gCAAiB,CACf,0BAAe,EACf,kBAAkB,EAClB,cAAc,EACd,cAAc,CACf;KACF,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC;AApCD,sDAoCC;AAED,0CAA0C;AAC1C,mBAAmB;AAEnB,8CAA8C;AACvC,KAAK,UAAU,qBAAqB,CACzC,cAAsB;IAEtB,MAAM,mBAAmB,GAAG,MAAM,qBAAa,CAAC,cAAc,CAAC,CAAC;IAChE,OAAO,MAAM,yBAAiB,CAC5B,mBAAmB,EACnB,SAAS,EACT,wCAAgC,CACjC,CAAC;AACJ,CAAC;AATD,sDASC;AAEM,KAAK,UAAU,kBAAkB,CACtC,UAAsB,EACtB,cAAsB;IAEtB,MAAM,mBAAmB,GAAG,MAAM,qBAAa,CAAC,cAAc,CAAC,CAAC;IAChE,MAAM,wBAAwB,GAAG,MAAM,yBAAiB,CACtD,mBAAmB,EACnB,SAAS,EACT,wCAAgC,CACjC,CAAC;IACF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,yBAAiB,CAAC,QAAQ,CACnD,UAAU,EACV,wBAAwB,CACzB,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAfD,gDAeC;AAEM,KAAK,UAAU,uBAAuB,CAC3C,UAAsB,EACtB,cAAyB;IAEzB,MAAM,oBAAoB,GAAG,MAAM,qBAAa,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5E,MAAM,kBAAkB,GAAG,MAAM,yBAAiB,CAChD,oBAAoB,EACpB,sCAA8B,EAC9B,wCAAgC,CACjC,CAAC;IAEF,IAAI,oBAAoB,GAAG,MAAM,2BAA2B,CAAC,QAAQ,CACnE,UAAU,EACV,kBAAkB,CACnB,CAAC;IACF,OAAO;QACL,oBAAoB,CAAC,aAAa;QAClC,IAAI,mBAAS,CAAC,oBAAoB,CAAC,kBAAkB,CAAC;KACvD,CAAC;AACJ,CAAC;AAnBD,0DAmBC;AAED,gEAAgE;AACzD,KAAK,UAAU,wCAAwC,CAC5D,UAAsB,EACtB,cAAyB;IAEzB,MAAM,OAAO,GAAG;QACd;YACE,MAAM,EAAE;gBACN,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,wCAAgC,CAAC,QAAQ,EAAE;aACnD;SACF;QACD;YACE,MAAM,EAAE;gBACN,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,cAAc,CAAC,QAAQ,EAAE;aACjC;SACF;QACD;YACE,MAAM,EAAE;gBACN,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,sCAA8B,CAAC,QAAQ,EAAE;aACjD;SACF;KACF,CAAC;IAEF,MAAM,gBAAgB,GAAG,MAAM,kCAA0B,CACvD,UAAU,EACV,0BAAe,EACf,OAAO,CACR,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,gBAAgB,EAAE;QAChC,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,yBAAiB,CAAC,UAAU,GAAG,EAAE,EAAE;YACjE,IAAI,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,yBAAiB,CAAC,UAAU,CAAC,CAAC;YAClE,IAAI,KAAK,GAAgC,mBAAW,CAClD,2BAA2B,CAAC,MAAM,EAClC,2BAA2B,EAC3B,IAAI,CACL,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,mBAAS,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;SACvE;KACF;IACD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;AACzC,CAAC;AA3CD,4FA2CC;AAED,gEAAgE;AAChE,kIAAkI;AAC3H,KAAK,UAAU,sBAAsB,CAC1C,UAAsB,EACtB,cAAyB;IAEzB,MAAM,OAAO,GAAG;QACd;YACE,MAAM,EAAE;gBACN,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,wCAAgC,CAAC,OAAO,EAAE;aAClD;SACF;QACD;YACE,MAAM,EAAE;gBACN,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,cAAc,CAAC,OAAO,EAAE;aAChC;SACF;QACD;YACE,MAAM,EAAE;gBACN,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,IAAI,mBAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;aACrD;SACF;KACF,CAAC;IAEF,MAAM,gBAAgB,GAAG,MAAM,kCAA0B,CACvD,UAAU,EACV,0BAAe,EACf,OAAO,CACR,CAAC;IAEF,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;KAClD;IAED,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAC/C,yBAAiB,CAAC,UAAU,CAC7B,CAAC;AACJ,CAAC;AAtCD,wDAsCC;AAED,8CAA8C;AAC9C,QAAQ;AAER,MAAa,2BAA2B;IAgBtC,YAAY,GAA8D;QACxE,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC,kBAAkB,CAAC;QACjD,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;IACzC,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAC1B,UAAsB,EACtB,wBAAmC;QAEnC,IAAI,qBAAqB,GAAG,MAAM,UAAU,CAAC,cAAc,CACzD,wBAAwB,EACxB,WAAW,CACZ,CAAC;QACF,IAAI,CAAC,qBAAqB,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC7D;QAED,IAAI,GAAG,GAAgC,4BAAoB,CACzD,IAAI,CAAC,MAAM,EACX,2BAA2B,EAC3B,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,yBAAiB,CAAC,UAAU,CAAC,CAC/D,CAAC;QAEF,OAAO,GAAG,CAAC;IACb,CAAC;;AAxCH,kEAyCC;AArCQ,kCAAM,GAAW,IAAI,GAAG,CAAC;IAC9B;QACE,2BAA2B;QAC3B;YACE,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE;gBACN,CAAC,oBAAoB,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC5B,CAAC,eAAe,EAAE,QAAQ,CAAC;aAC5B;SACF;KACF;CACF,CAAC,CAAC;AA4BE,KAAK,UAAU,4BAA4B,CAChD,UAAsB,EACtB,aAAqB,EACrB,kBAA6B,EAC7B,cAAyB,EACzB,QAAmB;IAEnB,qCAAqC;IACrC,MAAM,oBAAoB,GAAG,MAAM,qBAAa,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5E,MAAM,kBAAkB,GAAG,MAAM,yBAAiB,CAChD,oBAAoB,EACpB,sCAA8B,EAC9B,wCAAgC,CACjC,CAAC;IACF,IAAI,+BAA+B,GAAG,iBAAS,CAC7C,2BAA2B,CAAC,MAAM,EAClC,IAAI,2BAA2B,CAAC;QAC9B,kBAAkB,EAAE,kBAAkB,CAAC,OAAO,EAAE;QAChD,aAAa;KACd,CAAC,CACH,CAAC;IACF,OAAO;QACL,gCAAiB,CACf,0BAAe,EACf,uBAAa,CAAC,SAAS,EACvB,kBAAkB,EAClB,cAAc,EACd,QAAQ,EACR,oBAAoB,EACpB,IAAI,iBAAS;QACX,YAAY;QACZ,MAAM,UAAU,CAAC,iCAAiC,CAChD,+BAA+B,CAAC,MAAM,CACvC,CACF;QACD,YAAY;QACZ,IAAI,iBAAS,CAAC,+BAA+B,CAAC,MAAM,CAAC,EACrD,sCAA8B,EAAE,oEAAoE;QACpG,wCAAgC,EAAE,mDAAmD;QACrF,sCAA8B,CAC/B;QACD,gCAAiB,CACf,0BAAe,EACf,kBAAkB;QAClB,YAAY;QACZ,IAAI,iBAAS,CAAC,CAAC,CAAC,EAChB,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,EAC5C,sCAA8B,CAC/B;KACF,CAAC;AACJ,CAAC;AAlDD,oEAkDC"}
package/dist/utils.d.ts CHANGED
@@ -26,7 +26,10 @@ export declare class Numberu64 extends BN {
26
26
  export declare const signAndSendTransactionInstructions: (connection: Connection, signers: Array<Keypair>, feePayer: Keypair, txInstructions: Array<TransactionInstruction>) => Promise<string>;
27
27
  export declare function getHashedName(name: string): Promise<Buffer>;
28
28
  export declare function getNameAccountKey(hashed_name: Buffer, nameClass?: PublicKey, nameParent?: PublicKey): Promise<PublicKey>;
29
- export declare function getNameOwner(connection: Connection, nameAccountKey: PublicKey): Promise<NameRegistryState>;
29
+ export declare function getNameOwner(connection: Connection, nameAccountKey: PublicKey): Promise<{
30
+ registry: NameRegistryState;
31
+ nftOwner: PublicKey | undefined;
32
+ }>;
30
33
  export declare function getFilteredProgramAccounts(connection: Connection, programId: PublicKey, filters: any): Promise<{
31
34
  publicKey: PublicKey;
32
35
  accountInfo: AccountInfo<Buffer>;
package/dist/utils.js CHANGED
@@ -126,19 +126,19 @@ async function getFilteredProgramAccounts(connection, programId, filters) {
126
126
  }
127
127
  exports.getFilteredProgramAccounts = getFilteredProgramAccounts;
128
128
  async function performReverseLookup(connection, nameAccount) {
129
- let hashedReverseLookup = await getHashedName(nameAccount.toBase58());
130
- let reverseLookupAccount = await getNameAccountKey(hashedReverseLookup, exports.REVERSE_LOOKUP_CLASS);
131
- let name = await state_1.NameRegistryState.retrieve(connection, reverseLookupAccount);
132
- if (!name.data) {
129
+ const hashedReverseLookup = await getHashedName(nameAccount.toBase58());
130
+ const reverseLookupAccount = await getNameAccountKey(hashedReverseLookup, exports.REVERSE_LOOKUP_CLASS);
131
+ const { registry } = await state_1.NameRegistryState.retrieve(connection, reverseLookupAccount);
132
+ if (!registry.data) {
133
133
  throw "Could not retrieve name data";
134
134
  }
135
- let nameLength = new bn_js_1.default(name.data.slice(0, 4), "le").toNumber();
136
- return name.data.slice(4, 4 + nameLength).toString();
135
+ const nameLength = new bn_js_1.default(registry.data.slice(0, 4), "le").toNumber();
136
+ return registry.data.slice(4, 4 + nameLength).toString();
137
137
  }
138
138
  exports.performReverseLookup = performReverseLookup;
139
139
  async function getDNSRecordAddress(nameAccount, type) {
140
- let hashedName = await getHashedName("\0".concat(type));
141
- let recordAccount = await getNameAccountKey(hashedName, undefined, nameAccount);
140
+ const hashedName = await getHashedName("\0".concat(type));
141
+ const recordAccount = await getNameAccountKey(hashedName, undefined, nameAccount);
142
142
  return recordAccount;
143
143
  }
144
144
  exports.getDNSRecordAddress = getDNSRecordAddress;
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,8DAAqC;AAErC,6CAOyB;AACzB,kDAAuB;AAEvB,yCAA0D;AAC1D,mCAA4C;AAE/B,QAAA,oBAAoB,GAAG,IAAI,mBAAS,CAC/C,8CAA8C,CAC/C,CAAC;AAEF,MAAa,SAAU,SAAQ,eAAE;IAC/B;;OAEG;IACH,QAAQ;QACN,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAClB,OAAO,CAAC,CAAC;SACV;QACD,gBAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,qBAAqB,CAAC,CAAC;QAE5C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM;QACtB,gBAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,0BAA0B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACvE,OAAO,IAAI,eAAE,CACX,CAAC,GAAG,MAAM,CAAC;aACR,OAAO,EAAE;aACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3C,IAAI,CAAC,EAAE,CAAC,EACX,EAAE,CACH,CAAC;IACJ,CAAC;CACF;AA9BD,8BA8BC;AAED,MAAa,SAAU,SAAQ,eAAE;IAC/B;;OAEG;IACH,QAAQ;QACN,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAClB,OAAO,CAAC,CAAC;SACV;QACD,gBAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,qBAAqB,CAAC,CAAC;QAE5C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM;QACtB,gBAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,0BAA0B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACvE,OAAO,IAAI,eAAE,CACX,CAAC,GAAG,MAAM,CAAC;aACR,OAAO,EAAE;aACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3C,IAAI,CAAC,EAAE,CAAC,EACX,EAAE,CACH,CAAC;IACJ,CAAC;CACF;AA9BD,8BA8BC;AAEM,MAAM,kCAAkC,GAAG,KAAK;AACrD,4BAA4B;AAC5B,UAAsB,EACtB,OAAuB,EACvB,QAAiB,EACjB,cAA6C,EAC5B,EAAE;IACnB,MAAM,EAAE,GAAG,IAAI,qBAAW,EAAE,CAAC;IAC7B,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC;IACjC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,EAAE,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC;IAC1B,OAAO,MAAM,UAAU,CAAC,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;AACvD,CAAC,CAAC;AAZW,QAAA,kCAAkC,sCAY7C;AAEK,KAAK,UAAU,aAAa,CAAC,IAAY;IAC9C,MAAM,KAAK,GAAG,sBAAW,GAAG,IAAI,CAAC;IACjC,MAAM,MAAM,GAAG,qBAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;IACnE,OAAO,MAAM,CAAC;AAChB,CAAC;AAJD,sCAIC;AAEM,KAAK,UAAU,iBAAiB,CACrC,WAAmB,EACnB,SAAqB,EACrB,UAAsB;IAEtB,MAAM,KAAK,GAAG,CAAC,WAAW,CAAC,CAAC;IAC5B,IAAI,SAAS,EAAE;QACb,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;KAClC;SAAM;QACL,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;KAC9B;IACD,IAAI,UAAU,EAAE;QACd,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;KACnC;SAAM;QACL,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;KAC9B;IACD,MAAM,CAAC,cAAc,CAAC,GAAG,MAAM,mBAAS,CAAC,kBAAkB,CACzD,KAAK,EACL,0BAAe,CAChB,CAAC;IACF,OAAO,cAAc,CAAC;AACxB,CAAC;AArBD,8CAqBC;AAEM,KAAK,UAAU,YAAY,CAChC,UAAsB,EACtB,cAAyB;IAEzB,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IACpE,IAAI,CAAC,WAAW,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;IACD,OAAO,yBAAiB,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AAChE,CAAC;AATD,oCASC;AAED,kBAAkB;AACX,KAAK,UAAU,0BAA0B,CAC9C,UAAsB,EACtB,SAAoB,EACpB,OAAO;IAEP,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,SAAS,EAAE;QAC1D,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,OAAO;QACP,QAAQ,EAAE,QAAQ;KACnB,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,GAAG,CACb,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/D,SAAS,EAAE,MAAM;QACjB,WAAW,EAAE;YACX,IAAI,EAAE,IAAI;YACV,UAAU;YACV,KAAK,EAAE,KAAK;YACZ,QAAQ;SACT;KACF,CAAC,CACH,CAAC;AACJ,CAAC;AArBD,gEAqBC;AAEM,KAAK,UAAU,oBAAoB,CACxC,UAAsB,EACtB,WAAsB;IAEtB,MAAM,mBAAmB,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxE,MAAM,oBAAoB,GAAG,MAAM,iBAAiB,CAClD,mBAAmB,EACnB,4BAAoB,CACrB,CAAC;IAEF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,yBAAiB,CAAC,QAAQ,CACnD,UAAU,EACV,oBAAoB,CACrB,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAClB,MAAM,8BAA8B,CAAC;KACtC;IACD,MAAM,UAAU,GAAG,IAAI,eAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;IACtE,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC3D,CAAC;AAnBD,oDAmBC;AAEM,KAAK,UAAU,mBAAmB,CACvC,WAAsB,EACtB,IAAY;IAEZ,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAC3C,UAAU,EACV,SAAS,EACT,WAAW,CACZ,CAAC;IACF,OAAO,aAAa,CAAC;AACvB,CAAC;AAXD,kDAWC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bonfida/spl-name-service",
3
- "version": "0.1.24",
3
+ "version": "0.1.27",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -10,8 +10,8 @@
10
10
  "types": "dist/index.d.ts",
11
11
  "scripts": {
12
12
  "dev": "tsc && node --trace-warnings dist/test.js",
13
- "build": "tsc",
14
- "prepublish": "tsc",
13
+ "build": "rm -rf dist && tsc",
14
+ "prepublish": "rm -rf dist && tsc",
15
15
  "lint": "yarn pretty && eslint .",
16
16
  "lint:fix": "yarn pretty:fix && eslint . --fix",
17
17
  "pretty": "prettier --check 'src/*.[jt]s'",
@@ -35,13 +35,13 @@
35
35
  },
36
36
  "dependencies": {
37
37
  "@project-serum/sol-wallet-adapter": "^0.1.5",
38
- "@solana/spl-token": "0.1.3",
38
+ "@solana/buffer-layout": "^4.0.0",
39
+ "@solana/spl-token": "0.2.0",
39
40
  "@solana/web3.js": "^1.29.2",
40
41
  "bip32": "^2.0.6",
41
42
  "bn.js": "^5.1.3",
42
43
  "borsh": "^0.6.0",
43
44
  "bs58": "4.0.1",
44
- "buffer-layout": "^1.2.0",
45
45
  "core-util-is": "^1.0.2",
46
46
  "csv-parser": "^3.0.0",
47
47
  "fs": "^0.0.1-security",
package/src/bindings.ts CHANGED
@@ -64,7 +64,10 @@ export async function createNameRegistry(
64
64
 
65
65
  let nameParentOwner: PublicKey | undefined;
66
66
  if (parentName) {
67
- const parentAccount = await getNameOwner(connection, parentName);
67
+ const { registry: parentAccount } = await getNameOwner(
68
+ connection,
69
+ parentName
70
+ );
68
71
  nameParentOwner = parentAccount.owner;
69
72
  }
70
73
 
@@ -117,7 +120,7 @@ export async function updateNameRegistryData(
117
120
  signer = nameClass;
118
121
  } else {
119
122
  signer = (await NameRegistryState.retrieve(connection, nameAccountKey))
120
- .owner;
123
+ .registry.owner;
121
124
  }
122
125
 
123
126
  const updateInstr = updateInstruction(
@@ -141,6 +144,7 @@ export async function updateNameRegistryData(
141
144
  * @param curentNameOwner the current name Owner
142
145
  * @param nameClass The class of this name, if it exsists
143
146
  * @param nameParent The parent name of this name, if it exists
147
+ * @param parentOwner Parent name owner
144
148
  * @returns
145
149
  */
146
150
  export async function transferNameOwnership(
@@ -148,7 +152,8 @@ export async function transferNameOwnership(
148
152
  name: string,
149
153
  newOwner: PublicKey,
150
154
  nameClass?: PublicKey,
151
- nameParent?: PublicKey
155
+ nameParent?: PublicKey,
156
+ parentOwner?: PublicKey
152
157
  ): Promise<TransactionInstruction> {
153
158
  const hashed_name = await getHashedName(name);
154
159
  const nameAccountKey = await getNameAccountKey(
@@ -163,7 +168,7 @@ export async function transferNameOwnership(
163
168
  } else {
164
169
  curentNameOwner = (
165
170
  await NameRegistryState.retrieve(connection, nameAccountKey)
166
- ).owner;
171
+ ).registry.owner;
167
172
  }
168
173
 
169
174
  const transferInstr = transferInstruction(
@@ -171,7 +176,9 @@ export async function transferNameOwnership(
171
176
  nameAccountKey,
172
177
  newOwner,
173
178
  curentNameOwner,
174
- nameClass
179
+ nameClass,
180
+ nameParent,
181
+ parentOwner
175
182
  );
176
183
 
177
184
  return transferInstr;
@@ -206,7 +213,7 @@ export async function deleteNameRegistry(
206
213
  nameOwner = nameClass;
207
214
  } else {
208
215
  nameOwner = (await NameRegistryState.retrieve(connection, nameAccountKey))
209
- .owner;
216
+ .registry.owner;
210
217
  }
211
218
 
212
219
  const changeAuthoritiesInstr = deleteInstruction(
package/src/index.ts CHANGED
@@ -5,3 +5,4 @@ export * from "./twitter_bindings";
5
5
  export * from "./tokens";
6
6
  export * from "./utils";
7
7
  export * from "./instructions";
8
+ export * from "./nft";
@@ -131,7 +131,9 @@ export function transferInstruction(
131
131
  nameAccountKey: PublicKey,
132
132
  newOwnerKey: PublicKey,
133
133
  currentNameOwnerKey: PublicKey,
134
- nameClassKey?: PublicKey
134
+ nameClassKey?: PublicKey,
135
+ nameParent?: PublicKey,
136
+ parentOwner?: PublicKey
135
137
  ): TransactionInstruction {
136
138
  const buffers = [Buffer.from(Int8Array.from([2])), newOwnerKey.toBuffer()];
137
139
 
@@ -144,7 +146,7 @@ export function transferInstruction(
144
146
  isWritable: true,
145
147
  },
146
148
  {
147
- pubkey: currentNameOwnerKey,
149
+ pubkey: parentOwner ? parentOwner : currentNameOwnerKey,
148
150
  isSigner: true,
149
151
  isWritable: false,
150
152
  },
@@ -158,6 +160,21 @@ export function transferInstruction(
158
160
  });
159
161
  }
160
162
 
163
+ if (parentOwner && nameParent) {
164
+ if (!nameClassKey) {
165
+ keys.push({
166
+ pubkey: PublicKey.default,
167
+ isSigner: false,
168
+ isWritable: false,
169
+ });
170
+ }
171
+ keys.push({
172
+ pubkey: nameParent,
173
+ isSigner: false,
174
+ isWritable: false,
175
+ });
176
+ }
177
+
161
178
  return new TransactionInstruction({
162
179
  keys,
163
180
  programId: nameProgramId,
package/src/nft.ts ADDED
@@ -0,0 +1,80 @@
1
+ import { PublicKey, Connection } from "@solana/web3.js";
2
+ import { getMint } from "@solana/spl-token";
3
+
4
+ /**
5
+ * Mainnet program ID
6
+ */
7
+ export const NAME_TOKENIZER_ID = new PublicKey(
8
+ "nftD3vbNkNqfj2Sd3HZwbpw4BxxKWr4AjGb9X38JeZk"
9
+ );
10
+
11
+ /**
12
+ * PDA prefix
13
+ */
14
+ export const MINT_PREFIX = Buffer.from("tokenized_name");
15
+
16
+ /**
17
+ * This function can be used to retrieve the owner of a tokenized domain name
18
+ *
19
+ * @param connection The solana connection object to the RPC node
20
+ * @param nameAccount The key of the domain name
21
+ * @returns
22
+ */
23
+ export const retrieveNftOwner = async (
24
+ connection: Connection,
25
+ nameAccount: PublicKey
26
+ ) => {
27
+ try {
28
+ const [mint] = await PublicKey.findProgramAddress(
29
+ [MINT_PREFIX, nameAccount.toBuffer()],
30
+ NAME_TOKENIZER_ID
31
+ );
32
+
33
+ const mintInfo = await getMint(connection, mint);
34
+ if (mintInfo.supply.toString() === "0") {
35
+ return undefined;
36
+ }
37
+
38
+ const { value } = await connection.getTokenLargestAccounts(mint);
39
+
40
+ const holder = value.find((e) => e.amount === "1")?.address;
41
+ if (!holder) {
42
+ return undefined;
43
+ }
44
+
45
+ const info = await connection.getAccountInfo(holder);
46
+ if (!info || !info.data) {
47
+ return undefined;
48
+ }
49
+
50
+ return new PublicKey(info.data.slice(32, 64));
51
+ } catch (err) {
52
+ console.log(err);
53
+ return undefined;
54
+ }
55
+ };
56
+
57
+ /**
58
+ * This function can be used to retrieve all the tokenized domains name
59
+ *
60
+ * @param connection The solana connection object to the RPC node
61
+ * @returns
62
+ */
63
+ export const retrieveNfts = async (connection: Connection) => {
64
+ const filters = [
65
+ {
66
+ memcmp: {
67
+ offset: 0,
68
+ bytes: "3",
69
+ },
70
+ },
71
+ ];
72
+
73
+ const result = await connection.getProgramAccounts(NAME_TOKENIZER_ID, {
74
+ filters,
75
+ });
76
+ const offset = 1 + 1 + 32 + 32;
77
+ return result.map(
78
+ (e) => new PublicKey(e.account.data.slice(offset, offset + 32))
79
+ );
80
+ };
package/src/state.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Connection, PublicKey } from "@solana/web3.js";
2
2
  import { deserializeUnchecked, Schema, serialize } from "borsh";
3
+ import { retrieveNftOwner } from "./nft";
3
4
 
4
5
  export class NameRegistryState {
5
6
  static HEADER_LEN = 96;
@@ -34,11 +35,8 @@ export class NameRegistryState {
34
35
  public static async retrieve(
35
36
  connection: Connection,
36
37
  nameAccountKey: PublicKey
37
- ): Promise<NameRegistryState> {
38
- let nameAccount = await connection.getAccountInfo(
39
- nameAccountKey,
40
- "processed"
41
- );
38
+ ) {
39
+ const nameAccount = await connection.getAccountInfo(nameAccountKey);
42
40
  if (!nameAccount) {
43
41
  throw new Error("Invalid name account provided");
44
42
  }
@@ -51,7 +49,9 @@ export class NameRegistryState {
51
49
 
52
50
  res.data = nameAccount.data?.slice(this.HEADER_LEN);
53
51
 
54
- return res;
52
+ const nftOwner = await retrieveNftOwner(connection, nameAccountKey);
53
+
54
+ return { registry: res, nftOwner };
55
55
  }
56
56
 
57
57
  static async _retrieveBatch(
package/src/tokens.ts CHANGED
@@ -15,7 +15,7 @@ export const getTokenInfoFromMint = async (
15
15
  undefined,
16
16
  TOKEN_TLD
17
17
  );
18
- const registry = await NameRegistryState.retrieve(connection, nameKey);
18
+ const { registry } = await NameRegistryState.retrieve(connection, nameKey);
19
19
  if (!registry.data) {
20
20
  throw new Error("Invalid account data");
21
21
  }
@@ -31,7 +31,7 @@ export const getTokenInfoFromName = async (
31
31
  undefined,
32
32
  TOKEN_TLD
33
33
  );
34
- const reverseRegistry = await NameRegistryState.retrieve(
34
+ const { registry: reverseRegistry } = await NameRegistryState.retrieve(
35
35
  connection,
36
36
  reverseNameKey
37
37
  );
@@ -238,7 +238,7 @@ export async function getTwitterRegistry(
238
238
  undefined,
239
239
  TWITTER_ROOT_PARENT_REGISTRY_KEY
240
240
  );
241
- const registry = NameRegistryState.retrieve(
241
+ const { registry } = await NameRegistryState.retrieve(
242
242
  connection,
243
243
  twitterHandleRegistryKey
244
244
  );
package/src/utils.ts CHANGED
@@ -128,7 +128,7 @@ export async function getNameAccountKey(
128
128
  export async function getNameOwner(
129
129
  connection: Connection,
130
130
  nameAccountKey: PublicKey
131
- ): Promise<NameRegistryState> {
131
+ ) {
132
132
  const nameAccount = await connection.getAccountInfo(nameAccountKey);
133
133
  if (!nameAccount) {
134
134
  throw new Error("Unable to find the given account.");
@@ -164,26 +164,29 @@ export async function performReverseLookup(
164
164
  connection: Connection,
165
165
  nameAccount: PublicKey
166
166
  ): Promise<string> {
167
- let hashedReverseLookup = await getHashedName(nameAccount.toBase58());
168
- let reverseLookupAccount = await getNameAccountKey(
167
+ const hashedReverseLookup = await getHashedName(nameAccount.toBase58());
168
+ const reverseLookupAccount = await getNameAccountKey(
169
169
  hashedReverseLookup,
170
170
  REVERSE_LOOKUP_CLASS
171
171
  );
172
172
 
173
- let name = await NameRegistryState.retrieve(connection, reverseLookupAccount);
174
- if (!name.data) {
173
+ const { registry } = await NameRegistryState.retrieve(
174
+ connection,
175
+ reverseLookupAccount
176
+ );
177
+ if (!registry.data) {
175
178
  throw "Could not retrieve name data";
176
179
  }
177
- let nameLength = new BN(name.data.slice(0, 4), "le").toNumber();
178
- return name.data.slice(4, 4 + nameLength).toString();
180
+ const nameLength = new BN(registry.data.slice(0, 4), "le").toNumber();
181
+ return registry.data.slice(4, 4 + nameLength).toString();
179
182
  }
180
183
 
181
184
  export async function getDNSRecordAddress(
182
185
  nameAccount: PublicKey,
183
186
  type: string
184
187
  ) {
185
- let hashedName = await getHashedName("\0".concat(type));
186
- let recordAccount = await getNameAccountKey(
188
+ const hashedName = await getHashedName("\0".concat(type));
189
+ const recordAccount = await getNameAccountKey(
187
190
  hashedName,
188
191
  undefined,
189
192
  nameAccount