UNPKG

@tatumio/tatum-v1

Version:

Tatum API client allows browsers and Node.js clients to interact with Tatum API.

87 lines 7.57 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Mint721BuiltInPrivateKeyValidator = void 0; const class_validator_1 = require("class-validator"); const request_1 = require("../request"); const SignatureIdValidator_1 = require("./SignatureIdValidator"); let Mint721BuiltInPrivateKeyValidator = class Mint721BuiltInPrivateKeyValidator { constructor() { this.message = null; } defaultMessage(validationArguments) { if (this.message) { return this.message; } return 'If you fill signatureId or privateKey/secret/fromPrivateKey, then tokenId, contractAddress must be present.'; } validate(value, validationArguments) { const data = validationArguments === null || validationArguments === void 0 ? void 0 : validationArguments.object; const chains = [request_1.Currency.BSC, request_1.Currency.ETH, request_1.Currency.CELO, request_1.Currency.ONE, request_1.Currency.MATIC, request_1.Currency.KLAY, request_1.Currency.ALGO, request_1.Currency.SOL]; const isAllowedChain = chains.includes(data.chain); if (data.minter) { if (data.fromPrivateKey || data.signatureId) { this.message = `If minter is present, no private key or signatureId must be entered. Minter is available only on these chains - ${chains}`; return false; } if (!this.validateRequiredFields(data)) { return false; } } if (!data.fromPrivateKey && !data.signatureId) { if (isAllowedChain) { return true; } else { if (!this.validateNonBuiltInPrivateKey(data, validationArguments)) { return false; } } } else { if (!this.validateNonBuiltInPrivateKey(data, validationArguments)) { return false; } } return true; } validateNonBuiltInPrivateKey(data, validationArguments) { if (!this.validateRequiredFields(data)) { return false; } if (!data.fromPrivateKey && !data.signatureId) { this.message = 'Field fromPrivateKey or signatureId must be filled.'; return false; } const signatureIdValidation = new SignatureIdValidator_1.SignatureIdValidator(); return signatureIdValidation.validate(data, validationArguments); } validateRequiredFields(data) { if (data.chain === request_1.Currency.SOL) { return true; } if (data.chain === request_1.Currency.CELO && (!data.feeCurrency || ![request_1.Currency.CELO, request_1.Currency.CUSD, request_1.Currency.CEUR].includes(data.feeCurrency))) { this.message = 'CELO chain must have assigned feeCurrency field.'; return false; } if (!data.tokenId && data.chain !== request_1.Currency.ALGO) { this.message = 'Field tokenId must be present.'; return false; } if (!data.contractAddress && data.chain !== request_1.Currency.ALGO) { this.message = 'Field contractAddress must be present.'; return false; } return true; } }; Mint721BuiltInPrivateKeyValidator = __decorate([ class_validator_1.ValidatorConstraint({ name: 'builtInPrivateKey', async: false }) ], Mint721BuiltInPrivateKeyValidator); exports.Mint721BuiltInPrivateKeyValidator = Mint721BuiltInPrivateKeyValidator; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWludDcyMUJ1aWx0SW5Qcml2YXRlS2V5VmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vZGVsL3ZhbGlkYXRpb24vTWludDcyMUJ1aWx0SW5Qcml2YXRlS2V5VmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLHFEQUF5RztBQUN6Ryx3Q0FBc0M7QUFDdEMsaUVBQThEO0FBRzlELElBQWEsaUNBQWlDLEdBQTlDLE1BQWEsaUNBQWlDO0lBQTlDO1FBRVUsWUFBTyxHQUFrQixJQUFJLENBQUM7SUEwRXhDLENBQUM7SUF4RVEsY0FBYyxDQUFDLG1CQUF5QztRQUM3RCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO1NBQ3JCO1FBQ0QsT0FBTyw2R0FBNkcsQ0FBQztJQUN2SCxDQUFDO0lBRU0sUUFBUSxDQUFDLEtBQVUsRUFBRSxtQkFBeUM7UUFDbkUsTUFBTSxJQUFJLEdBQUcsbUJBQW1CLGFBQW5CLG1CQUFtQix1QkFBbkIsbUJBQW1CLENBQUUsTUFBYSxDQUFDO1FBQ2hELE1BQU0sTUFBTSxHQUFHLENBQUMsa0JBQVEsQ0FBQyxHQUFHLEVBQUUsa0JBQVEsQ0FBQyxHQUFHLEVBQUUsa0JBQVEsQ0FBQyxJQUFJLEVBQUUsa0JBQVEsQ0FBQyxHQUFHLEVBQUUsa0JBQVEsQ0FBQyxLQUFLLEVBQUUsa0JBQVEsQ0FBQyxJQUFJLEVBQUUsa0JBQVEsQ0FBQyxJQUFJLEVBQUUsa0JBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNwSSxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVuRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZixJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDM0MsSUFBSSxDQUFDLE9B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