Sha256: ebf3323d2bb52bb64f7a61d849a72bf4d1bc62a4d05c93979aadf5eab2a76132

Contents?: true

Size: 911 Bytes

Versions: 1

Compression:

Stored size: 911 Bytes

Contents

import {TRANSACTION_TYPE} from '@waves/ts-types'
import {
  defaultValue,
  getError,
  ifElse,
  isArray,
  isBase64,
  isBoolean,
  isEq,
  isNaturalNumberLike,
  isNaturalNumberOrZeroLike,
  isNumber,
  isPublicKey,
  isRequired,
  isValidAssetDescription,
  isValidAssetName,
  orEq,
  validateByShema
} from './validators'

const issueScheme = {
  type: isEq(TRANSACTION_TYPE.ISSUE),
  version: orEq([undefined, 2, 3]),
  senderPublicKey: isPublicKey,
  name: isValidAssetName,
  description: isValidAssetDescription,
  quantity: isNaturalNumberLike,
  decimals: isNumber,
  reissuable: isBoolean,
  script: ifElse(
      isRequired(true),
      isBase64,
      defaultValue(true)
  ),
  chainId: isNumber,
  fee: isNaturalNumberOrZeroLike,
  timestamp: isNumber,
  proofs: ifElse(isArray, defaultValue(true), orEq([ undefined ])),
};

export const issueValidator = validateByShema(issueScheme, 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/issue.ts