/
index.js
35 lines (32 loc) 路 974 Bytes
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
const { BaseModule } = require("lisk-sdk");
const { getAllNFTTokensAsJSON } = require("./nft");
const CreateNFTAsset = require("./transactions/create_nft_asset");
const PurchaseNFTAsset = require("./transactions/purchase_nft_asset");
const TransferNFTAsset = require("./transactions/transfer_nft_asset");
// Extend base module to implement your custom module
class NFTModule extends BaseModule {
name = "nft";
id = 1024;
accountSchema = {
type: "object",
required: ["ownNFTs"],
properties: {
ownNFTs: {
type: "array",
fieldNumber: 1,
items: {
dataType: "bytes",
},
},
},
default: {
ownNFTs: [],
},
};
transactionAssets = [new CreateNFTAsset(), new PurchaseNFTAsset(), new TransferNFTAsset()];
actions = {
// get all the registered NFT tokens from blockchain
getAllNFTTokens: async () => getAllNFTTokensAsJSON(this._dataAccess),
};
}
module.exports = { NFTModule };