Sha256: f4560f92ba64073f4ee6af08844bc3e8fb8394087bf31d6937f0bdb76f22488c
Contents?: true
Size: 1.11 KB
Versions: 1
Compression:
Stored size: 1.11 KB
Contents
import {TRANSACTION_TYPE} from '@waves/ts-types' import { defaultValue, getError, gte, ifElse, isArray, isAttachment, isEq, isNaturalNumberOrZeroLike, isNumber, isPublicKey, isRecipient, isRequired, isWavesOrAssetId, lte, orEq, pipe, prop, validateByShema, validatePipe } from './validators' const massTransferScheme = { type: isEq(TRANSACTION_TYPE.MASS_TRANSFER), senderPublicKey: isPublicKey, version: orEq([undefined, 1, 2]), transfers: validatePipe( isArray, pipe(prop('length'), gte(0)), pipe(prop('length'), lte(100)), (data: Array<unknown>) => data.every( validatePipe( isRequired(true), pipe(prop('recipient'), isRecipient), pipe(prop('amount'), isNaturalNumberOrZeroLike) ) ) ), assetId: isWavesOrAssetId, attachment: isAttachment, fee: isNaturalNumberOrZeroLike, timestamp: isNumber, proofs: ifElse(isArray, defaultValue(true), orEq([ undefined ])), } export const massTransferValidator = validateByShema(massTransferScheme, getError);
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
waves_lib-0.1.0 | js/node_modules/@waves/waves-transactions/src/validators/mass-transfer.ts |