{"_id":"ia-schema","_rev":"27-4749d5fd63d2cb9f8c7eac04e0a0c115","name":"ia-schema","time":{"modified":"2022-06-18T23:51:04.500Z","created":"2015-01-12T21:53:24.376Z","0.0.2":"2015-01-12T21:53:24.376Z","0.0.3":"2015-01-12T22:01:16.030Z","0.0.1":"2015-01-12T22:04:06.902Z","0.0.4":"2015-01-20T21:42:07.365Z","0.0.5":"2015-01-30T18:05:49.645Z","1.0.0":"2015-02-01T20:03:21.040Z","1.0.1":"2015-02-01T20:24:56.733Z","1.0.2":"2015-02-09T03:45:52.247Z","1.0.3":"2015-02-09T04:25:26.808Z","1.0.4":"2015-02-24T19:23:43.975Z","1.0.5":"2015-03-10T01:25:12.785Z","1.0.6":"2015-03-25T02:48:24.373Z","1.0.7":"2015-04-20T16:03:04.732Z"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist-tags":{"latest":"1.0.7"},"description":"Schema builder to validate input","readme":"IA-Schema\n===============\n\nIA Schema is and object validation module that can be used stand alone or\nas a data base schema with <a href='https://github.com/interactioncr/iamongo', target='_blank'>IA-Mongo</a>.\n\n## Installation\n\n  npm install ia-schema\n\n## Basic Usage\n  ```javascript\n  var IASchema = require('ia-schema');\n  ```\n  ```javascript\n  var schemaOptions = {\n    requiredErrorFormatter: function(key) {\n      return key + ' is required';\n    },\n    typeErrorFormatter: function(key) {\n      return key + ' is not of correct data type';\n    }\n  };\n  ```\n  ```javascript\n  var schema = {\n    name: {\n      required: true,\n    },\n    lastname: {\n      required: true\n    },\n    createdAt: {\n      type: Date,\n      required: true,\n      default: function() {\n        return new Date();\n      }\n    },\n    deletedAt: {\n      type: Date,\n      default: null\n    }\n  };\n  ```\n## Schema Options\n  IA-Schema uses predefined functions to format errors.\n\n\n  requiredErrorFormatter: \n    <br>\n    Called when a required field is undefined, null, or an empty string.\n    <br>\n    Receives the name of the missing property.\n    <br>\n    Returns the error in the format you need.\n  ```javascript\n  var requiredErrorFormatter= function(key) {\n    var err = {};\n    err[key] = 'this field is required';\n    return err;\n  };\n  ```\n  <br>\n  <br>\n  <br>\n  typeErrorFormatter: \n    <br>\n    Called when a field is not of the correct data type.\n    <br>\n    Receives the name of the property, and the type it should be.\n    <br>\n    Returns the error in the format you need.\n  ```javascript\n  var typeErrorFormatter= function(key, type) {\n    var err = {};\n    err[key] = 'should be of type '+type;\n    return err;\n  };\n  ```\n## Data types\n  IA-Schema supports validation for the following types:\n\n  ```javascript\n  type: Number (Accepts and transforms numbers send as strings,)\n  type: String (Accepts and transform numbers to string)\n  type: Date (Accepts strings, if the string is a valid date it will transform it)\n  type: Boolean (Accepts strings 'true' and 'false' and transforms them)\n  type: Array\n  type: Object\n  type: Function\n  ```\n  This validation will only check if the field's value is of the correct type.\n  If you need a custom validation you can use the <strong>validator</strong> option.\n\n  **Note: All data types accept null as a valid value\n\n## Validator\n  \n  You can use the validator property as a function or as an enum array.\n  <br>\n  If the validation does not pass the function should return false, otherwise\n  it should return the validated property value.\n\n  ```javascript\n  fixedSizedNumberStrong: {\n    type: Number,\n    validator: function(val){\n      if(val < 0 && val > 9) return false;\n      return val;\n    }\n  }\n  ```\n  ```javascript\n  fixedSizedNumberAdjustment: {\n    type: Number,\n    validator: function(val){\n      if(val < 0 && val > 9) val = 0;\n      return val;\n    }\n  }\n  ```\n  If <strong>type</strong> is specified in the field and the validator returns\n  a diferent data type the validation will fail. You can however use validator\n  without specifying any data type.\n\n  You can use other properties in a following validation.\n\n  ```javascript\n  aNumber: {\n      type: Number,\n      default:0\n  },\n  aPositiveNumber:{\n    type: Number,\n    validator: function(val){\n      if((val - this.aNumber) < 0) return false;\n      return val;\n    }\n  }\n  ```\n  IA Schema doesn't currently support async default or validator functions.\n\n  To use validator as enum just place the array of accepted values\n\n  ```javascript\n  category: {\n      type: String,\n      validator:['shoes','shirts','pants']\n  }\n  ```\n  If  the value is not in the array the validation will not pass\n\n## Default\n  You can use the default property as a constant value or as a function\n\n  ```javascript\n  aNumber: {\n    type: Number,\n    default: 100\n  }\n  ```\n\n  ```javascript\n  randomNumber: {\n    type: Number,\n    default: function(){\n      return Math.random() * (100 - 10) + 10;\n    }\n  }\n  ```\n  If <strong>type</strong> is specified in the field and the default returns \n  a diferent data type the validation will fail. You can however use default\n  without specifying any data type.\n\n  You can use other properties in a following default.\n\n  ```javascript\n  items: {\n      type: Array,\n      required:true\n  },\n  itemsLength:{\n    type: Number,\n    default: function(){\n      return this.items.length;\n    }\n  }\n  ```\n  IA Schema doesn't currently support async default or validator functions.\n\n\n## Schema Creation\n  \n  Schema options:\n  ```javascript\n  var schemaOptions = {\n    requiredErrorFormatter: function(key) {\n      return key + ' is required';\n    },\n    typeErrorFormatter: function(key) {\n      return key + ' is not of correct data type';\n    }\n  };\n  ```\n  If not options are given default error formaters return the name of the property.\n\n  Schema fields support the following properties\n\n  <strong>required (Boolean, default false):</strong> if true the object to validate must contain this property. Exception with omitUndefined option, see below.\n\n  <strong>default:</strong> can be a fix value or a function that returns a value. See details above.\n\n  <strong>validator:</strong> can be and array of valued or a function. See details above.\n\n  <strong>type:</strong> the data type the object's property should be. See details above.\n\n  ```javascript\n  var schema = {\n    name: {\n      required: true,\n    },\n    lastname: {\n      required: true\n    },\n    createdAt: {\n      type: Date,\n      required: true,\n      default: function() {\n        return new Date();\n      }\n    },\n    deletedAt: {\n      type: Date,\n      default: null\n    }\n  };\n  ```\n  Creating new Schema:\n  ```javascript\n  var schema = new IASchema(schema, schemaOptions);\n  ```\n## Available methods\n\n  IA Schema is promise oriented all functions starting with p the capital letter \n  will return a promise\n\n  <strong>+path</strong>\n    Fetches a copy of the schema property\n    Receives:\n      Property key (string)\n    Returns\n      Object\n\n  <strong>+eachPath</strong>\n    Iterates over each schema property, with the defined fuction\n    Receives:\n      Iterator (function): receives value and key\n    Returns\n      undefined\n\n  <strong>+requiredPaths</strong>\n    Returns an array of keys of all the schema properties thar are required\n    Receives:\n      None\n    Returns\n      Array of property names\n\n  <strong>+pMakeStruct</strong>\n  Makes struct based on the schema provided\n\n  Receives:\n  Object to validate (if it has properties that are not defined on the schema they will be ignored and not included in the result)\n\n  Options Object:\n    omitUndefined(Boolean, default false), if omit undefined is true all schema properties that are undefined in the object to validate will no subjected to validation and will be ignored in the result\n\n  Extention Object(default empty object), object to validate will be extendend with this BEFORE it's validated, so properties should also be defined in schema and they will be validated\n\n  Returns\n    promise, see below\n\n  ```javascript\n  schema.pMakeStruct({\n    name: 'Jose',\n    lastname: 'Rodriguez'\n  }).then(function(struct){\n      //Struct will be \n      //{\n        //name: 'Jose',\n        //lastname: 'Rodriguez',\n        //createdAt: Date Object,\n        //deletedAt: null\n      //}\n      console.log(struct);\n    },function(err){\n\n      //Array of all validation errors\n      console.log(err);\n      });\n  ```\n\n## Tests\n\n  npm test\n\n## Contributing\n\nIn lieu of a formal styleguide, take care to maintain the existing coding style.\nAdd unit tests for any new or changed functionality. Lint and test your code.\n\n## Release History\n\n* 0.0.1 Initial release\n* 0.0.4 Fixed error delivery to string\n* 0.0.5 Optimized required detection, allow use of object data in default and validator functions, improved Date type validation\n* 1.0.0 \nIf Default and validator are functions they can use \"this\" to reference object\nValidator can be an array of accepted values (enum)\npMakeStruct parameters are now (data, options,extention)\noptions omitUndefined(boolean) for pMakeStruct added\n* 1.0.1 Readme Fix\n* 1.0.4 This scope in default and validator fix\n* 1.0.7 Node version fixed\n","versions":{"0.0.3":{"name":"ia-schema","version":"0.0.3","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"_id":"ia-schema@0.0.3","_shasum":"111076c537702c31eca076755d91905d13631252","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"111076c537702c31eca076755d91905d13631252","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-0.0.3.tgz","integrity":"sha512-K1JjPKSnNydxEhUuhv1HaYC37Xi2LQ3L2cgWkkIKQrpLiRv4tklHjsVO310mK5XKmnh2A5IfXkBIYh3Lyn/GHQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCS5YNzvT2mFEOpBufmXbY63u1K27L/n0ZJAw09CmQhQIgfTP5CZVPIUJdvT2YPJCqNu0B+90HvpG/mDKXUQyifPQ="}]}},"0.0.1":{"name":"ia-schema","version":"0.0.1","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"_id":"ia-schema@0.0.1","_shasum":"e2a46afb8b1f12b222919e3c824accba193b8d9c","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"e2a46afb8b1f12b222919e3c824accba193b8d9c","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-0.0.1.tgz","integrity":"sha512-ZhYkZ/YmIyDIoATAdHf++RRMIzbo+JQW5lV4Hwe3VGEIFgKRrB0r0xkaWpnImbsxsh3hRjp6ADsiSGC4ZMEAgg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB4CkbLNQevEnmXyloDv3y9cu/wQngxa6KevwjPTh/CIAiEA1UPMeDWbdzCxCbkXhBGqg3RkDHA6nR36odt+3c5RLq0="}]}},"0.0.4":{"name":"ia-schema","version":"0.0.4","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"gitHead":"b50b691a403e2a4c08bbd95036285e7c5c85fdab","bugs":{"url":"https://github.com/interactioncr/iaschema/issues"},"homepage":"https://github.com/interactioncr/iaschema","_id":"ia-schema@0.0.4","_shasum":"a83507c59e810981f4e88222cc3f8577c470a60e","_from":".","_npmVersion":"2.2.0","_nodeVersion":"0.10.25","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"a83507c59e810981f4e88222cc3f8577c470a60e","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-0.0.4.tgz","integrity":"sha512-Bfve1qSx2ewKtM3S2dA2uUArXedF4TpE4mmOelCMGrLEcs7Of9k07PmuDq3dwvXU/8jv2nuFZyCeTdah85B/tQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDlN+8LNFhhXsiR6tvnAOdn/+zxlKWrbiveyCzE2Ap9CwIhAPT4M76Tcw8mFTP3XaORvAqx9QZxJ2DBTXOc+KZf1HV9"}]}},"0.0.5":{"name":"ia-schema","version":"0.0.5","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"_id":"ia-schema@0.0.5","_shasum":"d7167cde6d66b820b5945bbac663145785b76290","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"d7167cde6d66b820b5945bbac663145785b76290","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-0.0.5.tgz","integrity":"sha512-LMTDY+NXJVoQ3qjr3fAMGXh21jvEBb03BATd7JiXD1hNSIAfUVwA2PdbD9FSwYgjJiVuq5/WnrHe0yyvb+Bp6Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH9QMg5TihBImmrecpgldYSSU2sHtRc5ME0uaVoNglJ+AiEA4+bq8nbXddj9mfznCRlaGHz1/5QPXUt9WZX4j+qjB2s="}]}},"1.0.0":{"name":"ia-schema","version":"1.0.0","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"gitHead":"3b3bf7fc7075bc307fc414ffdb5e94a153d6c914","bugs":{"url":"https://github.com/interactioncr/iaschema/issues"},"homepage":"https://github.com/interactioncr/iaschema","_id":"ia-schema@1.0.0","_shasum":"2fc244c9fac050810ffed5ce43da56fb23453769","_from":".","_npmVersion":"2.2.0","_nodeVersion":"0.10.25","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"2fc244c9fac050810ffed5ce43da56fb23453769","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-1.0.0.tgz","integrity":"sha512-LoOKzIGsJuM1BED+CPfQqQzxZJ+Jj0hZmS/InMKMn15zPGrrJpCvLQBlWWxXtdx9wamgNT8uCNiEMEd4MndT9Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCf8YiEkKkwNIO2HpP+HWfOL7WxVlZJAt/BNtXztMiZYwIhAN1iCXuJbStMwDuG76sbwtsqPQ2fR+yVGgHMwrQ5DjE1"}]}},"1.0.1":{"name":"ia-schema","version":"1.0.1","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"gitHead":"b2f83bda76aa85973ba6e0b69d80fcbef1a1b9c3","bugs":{"url":"https://github.com/interactioncr/iaschema/issues"},"homepage":"https://github.com/interactioncr/iaschema","_id":"ia-schema@1.0.1","_shasum":"3535cfee46431854481470020fe134beb228c8c9","_from":".","_npmVersion":"2.2.0","_nodeVersion":"0.10.25","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"3535cfee46431854481470020fe134beb228c8c9","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-1.0.1.tgz","integrity":"sha512-BRGf6RyuJU7iwckyDDx0mB/H/SPtPM8aYJvgigpSFNA+LivEOh/M1hdLBwsZjE6KLyvfdpxy3UxvCSi89n5pPQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDNT1LjbrHkpbaaz85W9+A6RDcZA0qsW1rs/pgbxxJ7kwIhAPS/4LdbMYks8llXWxtCFoHxEB/sCNjX37d4J2sWLdtZ"}]}},"1.0.2":{"name":"ia-schema","version":"1.0.2","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"gitHead":"71a824727f8268166095f7c3734445f7a838cee3","bugs":{"url":"https://github.com/interactioncr/iaschema/issues"},"homepage":"https://github.com/interactioncr/iaschema","_id":"ia-schema@1.0.2","_shasum":"924497e6304421a2f0f76991fb6a9ca2d8aa47b0","_from":".","_npmVersion":"2.2.0","_nodeVersion":"0.10.25","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"924497e6304421a2f0f76991fb6a9ca2d8aa47b0","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-1.0.2.tgz","integrity":"sha512-TVE2IND2LQmxvm+PlR8E5kmAFPBGErV0aFfv12b8LTFHTJTK8QSVpPiFIIIdMtgOI61pQL+poOIxj9DMpy3olw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGJTOfPQeg5Ktn9XBvi9bOAKQkNDb2L100GmI53mcZJfAiARyHDfF27SJCIjRityobf8xyghH4lA3xJ8lYbSCV3tcA=="}]}},"1.0.3":{"name":"ia-schema","version":"1.0.3","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"gitHead":"a7601d265fc62ca24cd958113239ced9442475f7","bugs":{"url":"https://github.com/interactioncr/iaschema/issues"},"homepage":"https://github.com/interactioncr/iaschema","_id":"ia-schema@1.0.3","_shasum":"60508e357a0e0185c16350e0117eb4754888136b","_from":".","_npmVersion":"2.2.0","_nodeVersion":"0.10.25","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"60508e357a0e0185c16350e0117eb4754888136b","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-1.0.3.tgz","integrity":"sha512-9iFE5GLfhaSiySU6pdrl3BV0kxcMY75dU20lrrLPrDeP6YVtN3VJOaDvV2rmoEXOSjYHr0YPZBMYj1eSkajKKw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICyzJWWDrpQMluMX4T31uEQkEZzsrEJ5bkHfIONH+L+2AiAc43T6+yBxZAjHiRztNzQgcX4n1fyUkix3a9DTEZsFoA=="}]}},"1.0.4":{"name":"ia-schema","version":"1.0.4","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"_id":"ia-schema@1.0.4","_shasum":"6afdced579e0b1db8f757fda92a6b414a3ae7ccd","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"6afdced579e0b1db8f757fda92a6b414a3ae7ccd","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-1.0.4.tgz","integrity":"sha512-8oZyBOYlNi90h//CIRebmPsImbKwDBU/YyYfY2BG+x5uyLSeQNfzNTA2QrgpWHS+O+paK2HsExxgzm0SqGLQVw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICIwJKqyRBHiSIsxIIviHzBXHG4kEmXfTYeB48de+5fUAiAc6pqyficiq6vXhqceOUEHpSTO6JjMrZM6DK/U6VFMPA=="}]}},"1.0.5":{"name":"ia-schema","version":"1.0.5","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"gitHead":"8876fbb8d1ae61d3615b5abfc0914dea9fe22efa","bugs":{"url":"https://github.com/interactioncr/iaschema/issues"},"homepage":"https://github.com/interactioncr/iaschema","_id":"ia-schema@1.0.5","_shasum":"06bf4eae5c10bdab54e670dc1ad417d9fbe77a77","_from":".","_npmVersion":"2.6.0","_nodeVersion":"0.10.0","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"06bf4eae5c10bdab54e670dc1ad417d9fbe77a77","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-1.0.5.tgz","integrity":"sha512-ydQN6I2Xp6QGcanBrCSB1s64yi+W/y//1XP7lrF1IUOHlLS5rxiyGKJ5g55s++8+dVPtFZiMayalVvBuKn+mPQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDnMbDWkQvEnc85pV4LQ2RVMQBry/ny0s+0UlMAPEscZgIgc8bAGLtnMDCKtBMquiGIHwyE0Yg9C16feT68k5tz770="}]}},"1.0.6":{"name":"ia-schema","version":"1.0.6","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"gitHead":"31556010c2889254dd092e35c5460e821c11b713","bugs":{"url":"https://github.com/interactioncr/iaschema/issues"},"homepage":"https://github.com/interactioncr/iaschema","_id":"ia-schema@1.0.6","_shasum":"8ffd1f059e69e689a6e0cd153cd4df60134d0160","_from":".","_npmVersion":"2.6.0","_nodeVersion":"0.10.0","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"8ffd1f059e69e689a6e0cd153cd4df60134d0160","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-1.0.6.tgz","integrity":"sha512-hvJpaDDu9Kgp2AgtEE0g7Ojf84ZNQfDY0dOr0gxalCnRUYUdhMwA3wQMLc68dMrqUTgZw1VJA1TH7OdIS+HP1A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDKPnnn+meF+5CS4SjPKovtnGE7kB+KKN0HJ0guMdmDwAiEAwF6Mc8dOGo3GQQVZMYQhI/oqeKumxp2yYvIFV34QFCA="}]}},"1.0.7":{"name":"ia-schema","version":"1.0.7","description":"Schema builder to validate input","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"keywords":["schema"],"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","dependencies":{"when":"3.5.*","underscore":"1.7.*"},"engines":{"node":">= 0.10.0"},"devDependencies":{"mocha":"2.0.1","chai":"1.9.2","chai-as-promised":"4.1.1"},"directories":{"test":"test"},"gitHead":"2edf9d5c5ddf2c6ea7afa9cd55a690d2a8486a0c","bugs":{"url":"https://github.com/interactioncr/iaschema/issues"},"homepage":"https://github.com/interactioncr/iaschema","_id":"ia-schema@1.0.7","_shasum":"ab589d59d138260e8fcb29cbf28cec6ddde169d5","_from":".","_npmVersion":"2.6.0","_nodeVersion":"0.10.0","_npmUser":{"name":"zombitos","email":"jprodma@gmail.com"},"maintainers":[{"name":"zombitos","email":"jprodma@gmail.com"}],"dist":{"shasum":"ab589d59d138260e8fcb29cbf28cec6ddde169d5","tarball":"https://registry.npmjs.org/ia-schema/-/ia-schema-1.0.7.tgz","integrity":"sha512-lIswKe5OoBGszmlWM5NKKtqCBjaV6c5pAhIHWB40SmInSybY5uu3JU1sbEY3jGGqqCnvtpX5uaadPG0lweE/dg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBcG1hfXz3Vgk9EifcdHE+2LPtFEhD9JKJ+/YgdfiOBVAiEA2SsKahbKHjWA2/Yq6MUGMvTP1LcD9GHTmfQn4RJr3So="}]}}},"keywords":["schema"],"repository":{"type":"git","url":"git+https://github.com/interactioncr/iaschema.git"},"author":{"name":"Jay","email":"jprodma@gmail.com","url":"http://www.interaction.cr/"},"license":"MIT","readmeFilename":"README.md","homepage":"https://github.com/interactioncr/iaschema","bugs":{"url":"https://github.com/interactioncr/iaschema/issues"}}