{"_id":"mobitel-json-schema-template","_rev":"4-b3ecdd2051c7cd0a9aae5f91ada8001f","name":"mobitel-json-schema-template","description":"NodeJs module for helping creation JSON schemas","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"mobitel-json-schema-template","version":"1.0.0","description":"NodeJs module for helping creation JSON schemas","main":"index.js","scripts":{"pretest":"eslint --quiet --ignore-pattern '/test/' .","test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/mobitel-ltd/mobitel-json-schema-template.git"},"keywords":["json","schema","template","simple","create","mobitel"],"author":{"name":"Dmitry Furman aka PragmaWolf, Mobitel Ltd"},"license":"MIT","bugs":{"url":"https://github.com/mobitel-ltd/mobitel-json-schema-template/issues"},"homepage":"https://github.com/mobitel-ltd/mobitel-json-schema-template#readme","devDependencies":{"mocha":"^3.5.0"},"gitHead":"2bb8bfd642f5d60c814590303ff0d9b943f73bd7","_id":"mobitel-json-schema-template@1.0.0","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"mobitel-ltd","email":"pragmawolf@gmail.com"},"dist":{"integrity":"sha512-opJ4dgRuN9c10wIwUh2NVOLbSnVsGIR84mqao99FemOtoqCUbwAv+rDtNAS0rbOa1NvjlHpQvFsknoPb4XDaRQ==","shasum":"f8d34a8ef9e5ee302b2276200b9f1474292898d0","tarball":"https://registry.npmjs.org/mobitel-json-schema-template/-/mobitel-json-schema-template-1.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGQmjF79Q2eU4MbSJNMEOVumper6ghevXBMGEM1SgyrFAiEAx2aE7DiOhQfhuJObLNgs4fnB7iO+goKFgpdVUY7Uz64="}]},"maintainers":[{"name":"mobitel-ltd","email":"pragmawolf@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobitel-json-schema-template-1.0.0.tgz_1503416410899_0.9268533939030021"}},"1.0.1":{"name":"mobitel-json-schema-template","version":"1.0.1","description":"NodeJs module for helping creation JSON schemas","main":"index.js","scripts":{"pretest":"eslint --quiet --ignore-pattern '/test/' .","test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/mobitel-ltd/mobitel-json-schema-template.git"},"keywords":["json","schema","template","simple","create","mobitel"],"author":{"name":"Dmitry Furman aka PragmaWolf, Mobitel Ltd","email":"pragmawolf@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/mobitel-ltd/mobitel-json-schema-template/issues"},"homepage":"https://github.com/mobitel-ltd/mobitel-json-schema-template#readme","devDependencies":{"eslint":"^4.5.0","eslint-config-google":"^0.9.1","eslint-plugin-import":"^2.7.0","mocha":"^3.5.0"},"engines":{"node":">=8.3","npm":">=5"},"gitHead":"e3751328cd3a287e236296074054d09f22342fd7","_id":"mobitel-json-schema-template@1.0.1","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"mobitel-ltd","email":"pragmawolf@gmail.com"},"dist":{"integrity":"sha512-anTLvJkko744LU6dosjPD215+YZKZ+OTaQG0XuJjHwy7BVdxOdK5YFhRLSOQ1Jdz6F/N/PATY3+7tZ7Ps1rfgg==","shasum":"3f9364e18ced97eef80f6f8149d6d08e254e97d5","tarball":"https://registry.npmjs.org/mobitel-json-schema-template/-/mobitel-json-schema-template-1.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFdUEc4LRkOFdMZexLJb7alsa+YWlZXk8dvFLrvdPsBDAiAxtlzldFH/gErs2Wkfp2fS5j3QLWQhQt1uCrJgED/7qA=="}]},"maintainers":[{"name":"mobitel-ltd","email":"pragmawolf@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobitel-json-schema-template-1.0.1.tgz_1503590385912_0.5835096915252507"}},"1.0.2":{"name":"mobitel-json-schema-template","version":"1.0.2","description":"NodeJs module for helping creation JSON schemas","main":"index.js","scripts":{"pretest":"eslint --quiet --ignore-pattern '/test/' .","test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/mobitel-ltd/mobitel-json-schema-template.git"},"keywords":["json","schema","template","simple","create","mobitel"],"author":{"name":"Dmitry Furman aka PragmaWolf, Mobitel Ltd","email":"pragmawolf@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/mobitel-ltd/mobitel-json-schema-template/issues"},"homepage":"https://github.com/mobitel-ltd/mobitel-json-schema-template#readme","devDependencies":{"eslint":"^4.5.0","eslint-config-google":"^0.9.1","eslint-plugin-import":"^2.7.0","mocha":"^3.5.0"},"engines":{"node":">=8.3","npm":">=5"},"gitHead":"98077fdfdeeca54b456309d7e349d39e2f628367","_id":"mobitel-json-schema-template@1.0.2","_npmVersion":"5.4.0","_nodeVersion":"8.4.0","_npmUser":{"name":"mobitel-ltd","email":"pragmawolf@gmail.com"},"dist":{"integrity":"sha512-64gHt1xtoll4fApHEr2Suaer5sBx/Sgz37OAraSUePefVdKkoGdPC84DrFDpAB3Wwr1GtN3V/Iy46b4xy9e7Ew==","shasum":"27c71e9e0609da290fa1da67882514c455250c47","tarball":"https://registry.npmjs.org/mobitel-json-schema-template/-/mobitel-json-schema-template-1.0.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC/w6e+MPPnfAu+8FjXIFjAKkHBhdcRG0TUxGepy25kVAiEAwfkN84pir9PKO9FXJF8BxJHHv9iDW7Z8CPHGyxKO7J8="}]},"maintainers":[{"name":"mobitel-ltd","email":"pragmawolf@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobitel-json-schema-template-1.0.2.tgz_1504609586170_0.9467364768497646"}},"1.0.3":{"name":"mobitel-json-schema-template","version":"1.0.3","description":"NodeJs module for helping creation JSON schemas","main":"index.js","directories":{"test":"test"},"scripts":{"pretest":"eslint --quiet --ignore-pattern '/test/' .","test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/mobitel-ltd/mobitel-json-schema-template.git"},"keywords":["json","schema","template","simple","create","mobitel"],"author":{"name":"Dmitry Furman aka PragmaWolf, Mobitel Ltd","email":"pragmawolf@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/mobitel-ltd/mobitel-json-schema-template/issues"},"homepage":"https://github.com/mobitel-ltd/mobitel-json-schema-template#readme","devDependencies":{"eslint":"^4.5.0","eslint-config-google":"^0.9.1","mocha":"^3.5.0"},"engines":{"node":">=8","npm":">=5"},"gitHead":"b27ad1545441c46bcba100bb507189542975441f","_id":"mobitel-json-schema-template@1.0.3","_npmVersion":"5.5.1","_nodeVersion":"8.7.0","_npmUser":{"name":"mobitel-ltd","email":"pragmawolf@gmail.com"},"dist":{"integrity":"sha512-mszLxeaJ7qmAnZfGtbiDCEa1Oo8SIwkXWOr9K3yc4WKRUh54zB1FQHas9Yo18ijsADGf+ZGGurlbar1l/hCGKw==","shasum":"b92236c4d2b3f9c3c1148aeceebd3c48b2eab37b","tarball":"https://registry.npmjs.org/mobitel-json-schema-template/-/mobitel-json-schema-template-1.0.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCRXyW99DAMH5uTVvzasLSfcGT83Vb48xN+lO9fQ/TkIAIhAOJwDltcTBrEkAfqlEZXc+J7Q0J4o8HlT/bHxf85P/Ox"}]},"maintainers":[{"name":"mobitel-ltd","email":"pragmawolf@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobitel-json-schema-template-1.0.3.tgz_1507932579384_0.006659778533503413"}}},"readme":"# Mobitel Ltd. JSON-Schema template\nA small helper for generating a JSON schema elements.\n\n> What is JSON schema? Look [here](http://json-schema.org/) and [here](https://spacetelescope.github.io/understanding-json-schema/)\n\n## Attention\nThis module writing and testing on **NodeJs v.8+** and **NPM v.5+**.\nUsing the module in previous versions of NodeJs does not guarantee its correct operation.\n\n## <a name=\"navigation\">Navigation</a>\n\n* [Installation](#installation)\n* [Example](#example)\n* [API](#api)\n    * [Initializing](#initializing)\n    * [.allOf()](#jst-allof)\n    * [.anyOf()](#jst-anyof)\n    * [.boolean()](#jst-boolean)\n    * [.enum()](#jst-enum)\n    * [.not()](#jst-not)\n    * [.null()](#jst-null)\n    * [.oneOf()](#jst-oneof)\n    * [.ref()](#jst-ref)\n    * [.stringFormat()](#jst-string-format)\n    * [.array()](#jst-array)\n        * [.array().additional()](#jst-array-additional)\n        * [.array().items()](#jst-array-items)\n        * [.array().max()](#jst-array-max)\n        * [.array().min()](#jst-array-min)\n        * [.array().unique()](#jst-array-unique)\n    * [.integer()](#jst-integer)\n        * [.integer().allOf()](#jst-integer-allof)\n        * [.integer().anyOf()](#jst-integer-anyof)\n        * [.integer().eMax()](#jst-integer-emax)\n        * [.integer().eMin()](#jst-integer-emin)\n        * [.integer().enum()](#jst-integer-enum)\n        * [.integer().max()](#jst-integer-max)\n        * [.integer().min()](#jst-integer-min)\n        * [.integer().multipleOf()](#jst-integer-multipleof)\n        * [.integer().not()](#jst-integer-not)\n        * [.integer().oneOf()](#jst-integer-oneof)\n        * [.integer().done()](#jst-integer-done)\n    * [.number()](#jst-number)\n        * [.number().allOf()](#jst-number-allof)\n        * [.number().anyOf()](#jst-number-anyof)\n        * [.number().eMax()](#jst-number-emax)\n        * [.number().eMin()](#jst-number-emin)\n        * [.number().enum()](#jst-number-enum)\n        * [.number().max()](#jst-number-max)\n        * [.number().min()](#jst-number-min)\n        * [.number().multipleOf()](#jst-number-multipleof)\n        * [.number().not()](#jst-number-not)\n        * [.number().oneOf()](#jst-number-oneof)\n        * [.number().done()](#jst-number-done)\n    * [.string()](#jst-string)\n        * [.string().allOf()](#jst-string-allof)\n        * [.string().anyOf()](#jst-string-anyof)\n        * [.string().enum()](#jst-string-enum)\n        * [.string().max()](#jst-string-max)\n        * [.string().min()](#jst-string-min)\n        * [.string().not()](#jst-string-not)\n        * [.string().oneOf()](#jst-string-oneof)\n        * [.string().pattern()](#jst-string-pattern)\n        * [.string().done()](#jst-string-done)\n* [Testing](#testing)\n* [License](#license)\n\n## <a name=\"installation\">Installation</a>\n\n    npm i --save mobitel-json-schema-template\n\n## <a name=\"example\">Example</a>\n\nWriting JSON-schema\n```javascript\nconst jst = require('mobitel-json-schema-template');\n\nmodule.exports = {\n    id: 'exampleSchema',\n    type: 'object',\n    additionalProperties: false,\n    required: [\n        'propArray',\n        'propInteger',\n        'propNumber',\n        'propString',\n        'propEnum',\n        'propNull',\n        'propBoolean',\n        'propStringFormat',\n        'propAnyOf',\n        'propAllOf',\n        'propOneOf',\n        'propNot',\n        'propRef',\n    ],\n    properties: {\n        propArray: jst.array()\n            .additional(false)\n            .items(\n                [\n                    {type: 'object'},\n                    jst.boolean(),\n                ]\n            ).done(),\n        propInteger: jst.integer().min(10).max(100).eMax().done(),\n        propNumber: jst.number().enum([1, 3, 5, 7, 9]).done(),\n        propString: jst.string().pattern(/^\\w+$/).done(),\n        propEnum: jst.enum('viva', 'vita'),\n        propNull: jst.null(),\n        propBoolean: jst.boolean(false),\n        propStringFormat: jst.stringFormat('hostname'),\n        propAnyOf: jst.anyOf([\n            jst.string().done(),\n            jst.integer().done(),\n        ]),\n        propAllOf: jst.allOf([\n            jst.string().done(),\n            jst.string().max(10).done(),\n        ]),\n        propOneOf: jst.oneOf([\n            jst.string().done(),\n            jst.integer().done(),\n        ]),\n        propNot: jst.not(jst.null()),\n        propRef: jst.ref('#/definitions/refExample'),\n    },\n    definitions: {\n        refExample: {\n            type: 'object',\n            required: [\n                'asString',\n                'asNumber',\n                'asNull',\n            ],\n            properties: {\n                asString: jst.string().min(1).done(),\n                asNumber: jst.number().min(1).done(),\n                asNull: jst.null(),\n            },\n        },\n    },\n};\n```\n\nResult\n```json\n{\n  \"id\": \"exampleSchema\",\n  \"type\": \"object\",\n  \"additionalProperties\": false,\n  \"required\": [\n    \"propArray\",\n    \"propInteger\",\n    \"propNumber\",\n    \"propString\",\n    \"propEnum\",\n    \"propNull\",\n    \"propBoolean\",\n    \"propStringFormat\",\n    \"propAnyOf\",\n    \"propAllOf\",\n    \"propOneOf\",\n    \"propNot\",\n    \"propRef\"\n  ],\n  \"properties\": {\n    \"propArray\": {\n      \"type\": \"array\",\n      \"additionalItems\": false,\n      \"items\": [\n        {\"type\": \"object\"},\n        {\"type\": \"boolean\"}\n      ]\n    },\n    \"propInteger\": {\n      \"type\":\"integer\",\n      \"minimum\": 10,\n      \"maximum\": 100,\n      \"exclusiveMaximum\": true\n    },\n    \"propNumber\": {\n      \"type\": \"number\",\n      \"enum\": [1, 3, 5, 7, 9]\n    },\n    \"propString\": {\n      \"type\": \"string\",\n      \"pattern\": \"/^\\\\w+$/\"\n    },\n    \"propEnum\": {\n      \"enum\": [\"viva\", \"vita\"]\n    },\n    \"propNull\": {\n      \"type\": \"null\"\n    },\n    \"propBoolean\": {\n      \"type\": \"boolean\",\n      \"enum\": [false]\n    },\n    \"propStringFormat\": {\n      \"type\": \"string\",\n      \"format\": \"hostname\"\n    },\n    \"propAnyOf\": {\n      \"anyOf\": [\n        {\"type\": \"string\"},\n        {\"type\": \"integer\"}\n      ]\n    },\n    \"propAllOf\": {\n      \"allOf\": [\n        {\"type\": \"string\"},\n        {\n          \"type\": \"string\",\n          \"maxLength\": 10\n        }\n      ]\n    },\n    \"propOneOf\": {\n      \"oneOf\": [\n        {\"type\": \"string\"},\n        {\"type\": \"integer\"}\n      ]\n    },\n    \"propNot\": {\n      \"not\": {\"type\": \"null\"}\n    },\n    \"propRef\": {\n    \"$ref\": \"#/definitions/refExample\"\n    }\n  },\n  \"definitions\":{\n    \"refExample\": {\n      \"type\": \"object\",\n      \"required\": [\n        \"asString\",\n        \"asNumber\",\n        \"asNull\"\n      ],\n      \"properties\": {\n        \"asString\": {\n          \"type\": \"string\",\n          \"minLength\": 1\n        },\n        \"asNumber\": {\n          \"type\": \"number\",\n          \"minimum\": 1\n        },\n        \"asNull\": {\"type\": \"null\"}\n      }\n    }\n  }\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n## <a name=\"api\">API</a>\n\n### <a name=\"initializing\">Initializing</a>\n\n```javascript\nconst jst = require('mobitel-json-schema-template');\n```\nReturns object for generating a JSON schema elements.\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n### <a name=\"jst-allof\">.allOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.allOf(\n    [\n        { type: 'string' },\n        { maxLength: 5 }\n    ]\n);\n```\n\nResult\n```json\n{\n  \"allOf\": [\n    { \"type\": \"string\" },\n    { \"maxLength\": 5 }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n### <a name=\"jst-anyof\">.anyOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.anyOf(\n    [\n        {type: 'string'},\n        jst.number().done()\n    ]\n);\n```\n\nResult\n```json\n{\n  \"anyOf\": [\n    { \"type\": \"string\" },\n    { \"type\": \"number\" }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n### <a name=\"jst-boolean\">.boolean([arg])</a>\nArguments - `Boolean` or `'all'` (default)\n\n**Example Boolean**\n```javascript\njst.boolean(true);\n```\n\n**Result Boolean**\n```json\n{\n  \"type\": \"boolean\",\n  \"enum\": [true]\n}\n```\n\n**Example `'all'`**\n```javascript\njst.boolean();\n```\n\n**Result `'all'`**\n```json\n{\n  \"type\": \"boolean\"\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n### <a name=\"jst-enum\">.enum(arg[, arg2[, arg3]...])</a>\nArguments - `Array|*`\nCan accept mix of `Array` and `*`\n\nExample\n```javascript\njst.enum(['one', 'two', 'three']);\n```\n\nResult\n```json\n{\n  \"enum\": [\n    \"one\",\n    \"two\",\n    \"three\"\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n### <a name=\"jst-not\">.not(arg)</a>\nArguments - `Object`\n\nExample\n```javascript\njst.not({type: 'string'});\n```\n\nResult\n```json\n{\n  \"not\": {\"type\": \"string\"}\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n### <a name=\"jst-null\">.null()</a>\nArguments - no\n\nExample\n```javascript\njst.null();\n```\n\nResult\n```json\n{\n  \"type\": \"null\"\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n### <a name=\"jst-oneof\">.oneOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.oneOf(\n    [\n        { type: 'number', multipleOf: 5 },\n        jst.number().multipleOf(3).done()\n    ]\n);\n```\n\nResult\n```json\n{\n  \"oneOf\": [\n    { \"type\": \"number\", \"multipleOf\": 5 },\n    { \"type\": \"number\", \"multipleOf\": 3 }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n### <a name=\"jst-ref\">.ref(arg)</a>\nArguments - `String`\n\nExample\n```javascript\njst.ref('#/definitions/subschema');\n```\n\nResult\n```json\n{\n  \"$ref\": \"#/definitions/address\"\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n### <a name=\"jst-string-format\">.stringFormat(arg)</a>\nArguments - `String`\nArgument must be values like:\n* date-time\n* email\n* hostname\n* ipv4\n* ipv6\n* uri\n\nExample\n```javascript\njst.stringFormat('hostname');\n```\n\nResult\n```json\n{\n  \"type\": \"string\",\n  \"format\": \"hostname\"\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n\n\n\n\n### <a name=\"jst-array\">.array()</a>\nArguments - no\n\nExample\n```javascript\njst.array().done();\n```\n\nResult\n```json\n{\n  \"type\": \"array\"\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-array-additional\">.array().additional(arg)</a>\nArguments - `Boolean`\n\nExample\n```javascript\njst.array().additional(true).done();\n```\n\nResult\n```json\n{\n  \"type\": \"array\",\n  \"additionalItems\": true\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-array-items\">.array().items(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.array().items(\n    [\n        {type: 'string'},\n        jst.number().done()\n    ]\n).done();\n```\n\nResult\n```json\n{\n  \"type\": \"array\",\n  \"items\": [\n    {\"type\": \"string\"},\n    {\"type\": \"number\"}\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-array-max\">.array().max(arg)</a>\nArguments - positive `Number`\n\nExample\n```javascript\njst.array().max(10).done();\n```\n\nResult\n```json\n{\n  \"type\": \"array\",\n  \"maxItems\": 10\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-array-min\">.array().min(arg)</a>\nArguments - positive `Number`\n\nExample\n```javascript\njst.array().min(1).done();\n```\n\nResult\n```json\n{\n  \"type\": \"array\",\n  \"minItems\": 1\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-array-unique\">.array().unique()</a>\nArguments - no\n\nExample\n```javascript\njst.array().unique().done();\n```\n\nResult\n```json\n{\n  \"type\": \"array\",\n  \"uniqueItems\": true\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-done\">.array().done()</a>\nArguments - no\nFinalize creation JSON schema template by type and return complete object.\n\nExample\n```javascript\njst.array().max(10).done();\n```\n\nResult\n```json\n{\n  \"type\": \"array\",\n  \"maxItems\": 10\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n\n\n\n\n### <a name=\"jst-integer\">.integer()</a>\nArguments - no\n\nExample\n```javascript\njst.integer().done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\"\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-allof\">.integer().allOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.integer().allOf(\n [\n     { type: 'integer' },\n     { maximum: 5 }\n ]\n).done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\",\n  \"allOf\": [\n    { \"type\": \"integer\" },\n    { \"maximum\": 5 }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-anyof\">.integer().anyOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.integer().anyOf(\n    [\n        {type: 'integer', enum: [1, 5, 10]},\n        jst.integer().min(10).done()\n    ]\n).done();\n```\n\nResult\n```json\n{\n  \"anyOf\": [\n    {\n      \"type\": \"integer\",\n      \"enum\": [1, 5, 10]\n    },\n    {\n      \"type\": \"integer\",\n      \"minimum\": 10\n    }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-emax\">.integer().eMax()</a>\nArguments - no\n\nExample\n```javascript\njst.integer().eMax().done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\",\n  \"exclusiveMaximum\": true\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-emin\">.integer().eMin()</a>\nArguments - no\n\nExample\n```javascript\njst.integer().eMin().done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\",\n  \"exclusiveMinimum\": true\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-enum\">.integer().enum(arg[, arg2[, arg3]...])</a>\nArguments - `Array|*`\nCan accept mix of `Array` and `*`\n\nExample\n```javascript\njst.integer().enum([1, 2, 3]).done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\",\n  \"enum\": [1, 2, 3]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-max\">.integer().max(arg)</a>\nArguments - `Number` as integer\n\nExample\n```javascript\njst.integer().max(10).done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\",\n  \"maximum\": 10\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-min\">.integer().min(arg)</a>\nArguments - `Number` as integer\n\nExample\n```javascript\njst.integer().min(1).done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\",\n  \"minimum\": 1\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-multipleof\">.integer().multipleOf(arg)</a>\nArguments - positive `Number` as integer\n\nExample\n```javascript\njst.integer().multipleOf(10).done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\",\n  \"multipleOf\": 10\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-not\">.integer().not(arg)</a>\nArguments - `Object`\n\nExample\n```javascript\njst.integer().not({enum: [1, 2, 3]}).done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\",\n  \"not\": {\n    \"enum\": [1, 2, 3]\n  }\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-oneof\">.integer().oneOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.integer().oneOf(\n    [\n        { type: 'integer', maximum: 5 },\n        jst.integer().max(3).done()\n    ]\n).done();\n```\n\nResult\n```json\n{\n  \"oneOf\": [\n    { \"type\": \"integer\", \"maximum\": 5 },\n    { \"type\": \"integer\", \"maximum\": 3 }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-integer-done\">.integer().done()</a>\nArguments - no\nFinalize creation JSON schema template by type and return complete object.\n\nExample\n```javascript\njst.integer().max(10).done();\n```\n\nResult\n```json\n{\n  \"type\": \"integer\",\n  \"maximum\": 10\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n\n\n\n\n### <a name=\"jst-number\">.number()</a>\nArguments - no\n\nExample\n```javascript\njst.number().done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\"\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-allof\">.number().allOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.number().allOf(\n [\n     { type: 'number' },\n     { maximum: 5 }\n ]\n).done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\",\n  \"allOf\": [\n    { \"type\": \"number\" },\n    { \"maximum\": 5 }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-anyof\">.number().anyOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.number().anyOf(\n    [\n        {type: 'number', enum: [1, 5, 10]},\n        jst.number().min(10).done()\n    ]\n).done();\n```\n\nResult\n```json\n{\n  \"anyOf\": [\n    {\n      \"type\": \"number\",\n      \"enum\": [1, 5, 10]\n    },\n    {\n      \"type\": \"number\",\n      \"minimum\": 10\n    }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-emax\">.number().eMax()</a>\nArguments - no\n\nExample\n```javascript\njst.number().eMax().done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\",\n  \"exclusiveMaximum\": true\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-emin\">.number().eMin()</a>\nArguments - no\n\nExample\n```javascript\njst.number().eMin().done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\",\n  \"exclusiveMinimum\": true\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-enum\">.number().enum(arg[, arg2[, arg3]...])</a>\nArguments - `Array|*`\nCan accept mix of `Array` and `*`\n\nExample\n```javascript\njst.number().enum([1.5, 2.5, 3.5]).done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\",\n  \"enum\": [1.5, 2.5, 3.5]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-max\">.number().max(arg)</a>\nArguments - `Number`\n\nExample\n```javascript\njst.number().max(10.5).done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\",\n  \"maximum\": 10.5\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-min\">.number().min(arg)</a>\nArguments - `Number`\n\nExample\n```javascript\njst.number().min(1.5).done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\",\n  \"minimum\": 1.5\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-multipleof\">.number().multipleOf(arg)</a>\nArguments - positive `Number` as integer\n\nExample\n```javascript\njst.number().multipleOf(10).done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\",\n  \"multipleOf\": 10\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-not\">.number().not(arg)</a>\nArguments - `Object`\n\nExample\n```javascript\njst.number().not({enum: [1.5, 2.5, 3.5]}).done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\",\n  \"not\": {\n    \"enum\": [\n      1.5,\n      2.5,\n      3.5\n    ]\n  }\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-oneof\">.number().oneOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.number().oneOf(\n    [\n        { type: 'number', maximum: 5 },\n        jst.number().max(3).done()\n    ]\n).done();\n```\n\nResult\n```json\n{\n  \"oneOf\": [\n    { \"type\": \"number\", \"maximum\": 5 },\n    { \"type\": \"number\", \"maximum\": 3 }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-number-done\">.number().done()</a>\nArguments - no\nFinalize creation JSON schema template by type and return complete object.\n\nExample\n```javascript\njst.number().max(10).done();\n```\n\nResult\n```json\n{\n  \"type\": \"number\",\n  \"maximum\": 10\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n\n\n\n\n### <a name=\"jst-string\">.string()</a>\nArguments - no\n\nExample\n```javascript\njst.string().done();\n```\n\nResult\n```json\n{\n  \"type\": \"string\"\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-string-allof\">.string().allOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.string().allOf(\n [\n     { type: 'string' },\n     { maxLength: 5 }\n ]\n).done();\n```\n\nResult\n```json\n{\n  \"type\": \"string\",\n  \"allOf\": [\n    { \"type\": \"string\" },\n    { \"maxLength\": 5 }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-string-anyof\">.string().anyOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.string().anyOf(\n    [\n        {type: 'string', pattern: \"^\\\\d+$\"},\n        jst.string().min(10).done()\n    ]\n).done();\n```\n\nResult\n```json\n{\n  \"anyOf\": [\n    {\n      \"type\": \"string\",\n      \"pattern\": \"^\\\\d+$\"\n    },\n    {\n      \"type\": \"string\",\n      \"minLength\": 10\n    }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-string-enum\">.string().enum(arg[, arg2[, arg3]...])</a>\nArguments - `Array|*`\nCan accept mix of `Array` and `*`\n\nExample\n```javascript\njst.string().enum(['one', 'two', 'three']).done();\n```\n\nResult\n```json\n{\n  \"type\": \"string\",\n  \"enum\": [\n    \"one\",\n    \"two\",\n    \"three\"\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-string-max\">.string().max(arg)</a>\nArguments - positive `Number` as integer\n\nExample\n```javascript\njst.string().max(10).done();\n```\n\nResult\n```json\n{\n  \"type\": \"string\",\n  \"maxLength\": 10\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-string-min\">.string().min(arg)</a>\nArguments - positive `Number` as integer\n\nExample\n```javascript\njst.string().min(1).done();\n```\n\nResult\n```json\n{\n  \"type\": \"string\",\n  \"minLength\": 1\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-string-not\">.string().not(arg)</a>\nArguments - `Object`\n\nExample\n```javascript\njst.string().not({enum: ['one', 'two', 'three']}).done();\n```\n\nResult\n```json\n{\n  \"type\": \"string\",\n  \"not\": {\n    \"enum\": [\n      \"one\",\n      \"two\",\n      \"three\"\n    ]\n  }\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-string-oneof\">.string().oneOf(arg[, arg2[, arg3]...])</a>\nArguments - `Object[]|Object`\nCan accept mix of `Object[]` and `Object`\n\nExample\n```javascript\njst.string().oneOf(\n    [\n        { type: 'string', maxLength: 5 },\n        jst.string().max(3).done()\n    ]\n).done();\n```\n\nResult\n```json\n{\n  \"oneOf\": [\n    { \"type\": \"string\", \"maxLength\": 5 },\n    { \"type\": \"string\", \"maxLength\": 3 }\n  ]\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-string-pattern\">.string().pattern(arg)</a>\nArguments - `RegExp|String`\n\nExample\n```javascript\njst.string().pattern(\"^\\\\d+$\").done();\n```\n\nResult\n```json\n{\n  \"type\": \"string\",\n  \"pattern\": \"^\\\\d+$\"\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n#### <a name=\"jst-string-done\">.string().done()</a>\nArguments - no\nFinalize creation JSON schema template by type and return complete object.\n\nExample\n```javascript\njst.string().max(10).done();\n```\n\nResult\n```json\n{\n  \"type\": \"string\",\n  \"maxLength\": 10\n}\n```\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n\n## <a name=\"testing\">Testing</a>\n\n    npm run test\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n\n## <a name=\"license\">License</a>\nMIT License.\nCopyright (c) 2017 Mobitel Ltd\n[<p align=\"right\">up to navigation</p>](#navigation)\n\n","maintainers":[{"name":"mobitel-ltd","email":"pragmawolf@gmail.com"}],"time":{"modified":"2022-05-09T13:54:27.608Z","created":"2017-08-22T15:40:12.737Z","1.0.0":"2017-08-22T15:40:12.737Z","1.0.1":"2017-08-24T15:59:47.416Z","1.0.2":"2017-09-05T11:06:27.198Z","1.0.3":"2017-10-13T22:09:40.567Z"},"homepage":"https://github.com/mobitel-ltd/mobitel-json-schema-template#readme","keywords":["json","schema","template","simple","create","mobitel"],"repository":{"type":"git","url":"git+https://github.com/mobitel-ltd/mobitel-json-schema-template.git"},"author":{"name":"Dmitry Furman aka PragmaWolf, Mobitel Ltd","email":"pragmawolf@gmail.com"},"bugs":{"url":"https://github.com/mobitel-ltd/mobitel-json-schema-template/issues"},"license":"MIT","readmeFilename":"README.md"}