JSFiddle - React, Tailwind, and code Playground

by Evgeniy Kvasyuk

JavaScript

[
  {
    "path": [
      "number"
    ],
    "rules": [
      {
        "ruleId": "NotNullRule",
        "params": {}
      },
      {
        "ruleId": "OnlyNumbersRule",
        "params": {}
      },
      {
        "ruleId": "RangeRule",
        "params": {
          "min": "1",
          "max": "9999999999"
        }
      }
    ]
  },
  {
    "path": [
      "bank:name"
    ],
    "rules": [
      {
        "ruleId": "NotNullRule",
        "params": {}
      }
    ]
  },
  {
    "path": [
      "organization:inn"
    ],
    "rules": [
      {
        "ruleId": "NotEmptyRule",
        "params": {}
      }
    ]
  },
  {
    "path": [
      "organization"
    ],
    "rules": [
      {
        "ruleId": "NotNullRule",
        "params": {}
      }
    ]
  },
  { 
    "path": [
      "originalDate"
    ],
    "rules": [
      {
        "ruleId": "NotNullRule",
        "params": {}
      },
      {
        "ruleId": "PastRule",
        "params": {
          "days": "0"
        }
      }
    ]
  },
  {
    "path": [
      "bank:bic"
    ],
    "rules": [
      {
        "ruleId": "NotNullRule",
        "params": {}
      },
      {
        "ruleId": "PatternRule",
        "params": {
          "regexp": "\\d{9}"
        }
      }
    ]
  },
  {
    "path": [
      "confirmingDocuments"
    ],
    "rules": [
      {
        "ruleId": "NotNullRule",
        "params": {}
      },
      {
        "ruleId": "NotEmptyCollectionRule",
        "params": {}
      }
    ]
  },
  {
    "path": [
      "dealPassportNumber"
    ],
    "rules": [
      {
        "ruleId": "NotEmptyRule",
        "params": {}
      },
      {
        "ruleId": "PatternRule",
        "params": {
          "regexp": "\\d{8}/\\d{4}/\\d{4}/\\d/\\d"
        }
      },
      {
        "ruleId": "ExactLengthRule",
        "params": {
          "length": 22
        }
      }
    ]
  },
  {
    "path": [
      "organization:shortName"
    ],
    "rules": [
      {
        "ruleId": "NotEmptyRule",
      ...