UNPKG

@bbachain/spl-token-metadata

Version:
116 lines (115 loc) 4.18 kB
"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; exports.__esModule = true; exports.createCreateMetadataAccountInstruction = exports.createMetadataAccountInstructionDiscriminator = exports.CreateMetadataAccountStruct = void 0; var beet = __importStar(require("@bbachain/beet")); var web3 = __importStar(require("@bbachain/web3.js")); var types_1 = require("../types"); var __1 = require(".."); /** * @category Instructions * @category CreateMetadataAccount */ exports.CreateMetadataAccountStruct = new beet.FixableBeetArgsStruct([ ['instructionDiscriminator', beet.u8], ['createMetadataAccountArgs', types_1.createMetadataAccountArgsBeet], ], 'CreateMetadataAccountInstructionArgs'); exports.createMetadataAccountInstructionDiscriminator = 0; /** * Creates a _CreateMetadataAccount_ instruction. * * Optional accounts that are not provided will be omitted from the accounts * array passed with the instruction. * An optional account that is set cannot follow an optional account that is unset. * Otherwise an Error is raised. * * @param accounts that will be accessed while the instruction is processed * @param args to provide as instruction data to the program * * @category Instructions * @category CreateMetadataAccount */ function createCreateMetadataAccountInstruction(accounts, args, programId) { var _a; if (programId === void 0) { programId = new web3.PublicKey(__1.PROGRAM_ADDRESS); } var data = exports.CreateMetadataAccountStruct.serialize(__assign({ instructionDiscriminator: exports.createMetadataAccountInstructionDiscriminator }, args))[0]; var keys = [ { pubkey: accounts.metadata, isWritable: true, isSigner: false }, { pubkey: accounts.mint, isWritable: false, isSigner: false }, { pubkey: accounts.mintAuthority, isWritable: false, isSigner: true }, { pubkey: accounts.payer, isWritable: true, isSigner: true }, { pubkey: accounts.updateAuthority, isWritable: false, isSigner: false }, { pubkey: (_a = accounts.systemProgram) !== null && _a !== void 0 ? _a : web3.SystemProgram.programId, isWritable: false, isSigner: false }, ]; if (accounts.rent != null) { keys.push({ pubkey: accounts.rent, isWritable: false, isSigner: false }); } var ix = new web3.TransactionInstruction({ programId: programId, keys: keys, data: data }); return ix; } exports.createCreateMetadataAccountInstruction = createCreateMetadataAccountInstruction;