UNPKG

@deskpro/react-forms

Version:
59 lines (56 loc) 3.38 kB
"use strict"; exports.valid = { fullName: "John Doe", age: 47, state: "Massachusetts", city: "Boston", zip: 16417, married: false, dozen: 12, dozenOrBakersDozen: 13, favoriteEvenNumber: 14, topThreeFavoriteColors: ["red", "blue", "green"], favoriteSingleDigitWholeNumbers: [7], favoriteFiveLetterWord: "coder", emailAddresses: ["abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@letters-in-local.org", "01234567890@numbers-in-local.net", "&'*+-./=?^_{}~@other-valid-characters-in-local.net", "mixed-1234-in-{+^}-local@sld.net", "a@single-character-in-local.org", "\"quoted\"@sld.com", "\"\\e\\s\\c\\a\\p\\e\\d\"@sld.com", "\"quoted-at-sign@sld.org\"@sld.com", "\"escaped\\\"quote\"@sld.com", "\"back\\slash\"@sld.com", "one-character-third-level@a.example.com", "single-character-in-sld@x.org", "local@dash-in-sld.com", "letters-in-sld@123.com", "one-letter-sld@x.org", "uncommon-tld@sld.museum", "uncommon-tld@sld.travel", "uncommon-tld@sld.mobi", "country-code-tld@sld.uk", "country-code-tld@sld.rw", "local@sld.newTLD", "the-total-length@of-an-entire-address.cannot-be-longer-than-two-hundred-and-fifty-four-characters.and-this-address-is-254-characters-exactly.so-it-should-be-valid.and-im-going-to-add-some-more-words-here.to-increase-the-lenght-blah-blah-blah-blah-bla.org", "the-character-limit@for-each-part.of-the-domain.is-sixty-three-characters.this-is-exactly-sixty-three-characters-so-it-is-valid-blah-blah.com", "local@sub.domains.com"], ipAddresses: ["127.0.0.1", "24.48.64.2", "192.168.1.1", "209.68.44.3", "2.2.2.2"] }; exports.invalid = { fullName: null, age: -1, state: 47, city: false, zip: [null], married: "yes", dozen: 50, dozenOrBakersDozen: "over 9000", favoriteEvenNumber: 15, topThreeFavoriteColors: ["red", 5], favoriteSingleDigitWholeNumbers: [78, 2, 999], favoriteFiveLetterWord: "codernaut", emailAddresses: [], ipAddresses: ["999.0.099.1", "294.48.64.2346", false, "2221409.64214128.42414.235233", "124124.12412412"] }; exports.schema = { // from cosmic thingy name: "test", type: "object", additionalProperties: false, required: ["fullName", "age", "zip", "married", "dozen", "dozenOrBakersDozen", "favoriteEvenNumber", "topThreeFavoriteColors", "favoriteSingleDigitWholeNumbers", "favoriteFiveLetterWord", "emailAddresses", "ipAddresses"], properties: { fullName: { type: "string" }, age: { type: "integer", minimum: 0 }, optionalItem: { type: "string" }, state: { type: "string" }, city: { type: "string" }, zip: { type: "integer", minimum: 0, maximum: 99999 }, married: { type: "boolean" }, dozen: { type: "integer", minimum: 12, maximum: 12 }, dozenOrBakersDozen: { type: "integer", minimum: 12, maximum: 13 }, favoriteEvenNumber: { type: "integer", multipleOf: 2 }, topThreeFavoriteColors: { type: "array", minItems: 3, maxItems: 3, uniqueItems: true, items: { type: "string" } }, favoriteSingleDigitWholeNumbers: { type: "array", minItems: 1, maxItems: 10, uniqueItems: true, items: { type: "integer", minimum: 0, maximum: 9 } }, favoriteFiveLetterWord: { type: "string", minLength: 5, maxLength: 5 }, emailAddresses: { type: "array", minItems: 1, uniqueItems: true, items: { type: "string", format: "email" } }, ipAddresses: { type: "array", uniqueItems: true, items: { type: "string", format: "ipv4" } } } };