{"ast":null,"code":"'use strict';\n\nvar ruleModules = require('../dotjs'),\n toHash = require('./util').toHash;\n\nmodule.exports = function rules() {\n var RULES = [{\n type: 'number',\n rules: [{\n 'maximum': ['exclusiveMaximum']\n }, {\n 'minimum': ['exclusiveMinimum']\n }, 'multipleOf', 'format']\n }, {\n type: 'string',\n rules: ['maxLength', 'minLength', 'pattern', 'format']\n }, {\n type: 'array',\n rules: ['maxItems', 'minItems', 'items', 'contains', 'uniqueItems']\n }, {\n type: 'object',\n rules: ['maxProperties', 'minProperties', 'required', 'dependencies', 'propertyNames', {\n 'properties': ['additionalProperties', 'patternProperties']\n }]\n }, {\n rules: ['$ref', 'const', 'enum', 'not', 'anyOf', 'oneOf', 'allOf', 'if']\n }];\n var ALL = ['type', '$comment'];\n var KEYWORDS = ['$schema', '$id', 'id', '$data', '$async', 'title', 'description', 'default', 'definitions', 'examples', 'readOnly', 'writeOnly', 'contentMediaType', 'contentEncoding', 'additionalItems', 'then', 'else'];\n var TYPES = ['number', 'integer', 'string', 'array', 'object', 'boolean', 'null'];\n RULES.all = toHash(ALL);\n RULES.types = toHash(TYPES);\n RULES.forEach(function (group) {\n group.rules = group.rules.map(function (keyword) {\n var implKeywords;\n\n if (typeof keyword == 'object') {\n var key = Object.keys(keyword)[0];\n implKeywords = keyword[key];\n keyword = key;\n implKeywords.forEach(function (k) {\n ALL.push(k);\n RULES.all[k] = true;\n });\n }\n\n ALL.push(keyword);\n var rule = RULES.all[keyword] = {\n keyword: keyword,\n code: ruleModules[keyword],\n implements: implKeywords\n };\n return rule;\n });\n RULES.all.$comment = {\n keyword: '$comment',\n code: ruleModules.$comment\n };\n if (group.type) RULES.types[group.type] = group;\n });\n RULES.keywords = toHash(ALL.concat(KEYWORDS));\n RULES.custom = {};\n return RULES;\n};","map":{"version":3,"sources":["/Users/tylerkoenig/Code/personal/react-scss2/node_modules/ajv/lib/compile/rules.js"],"names":["ruleModules","require","toHash","module","exports","rules","RULES","type","ALL","KEYWORDS","TYPES","all","types","forEach","group","map","keyword","implKeywords","key","Object","keys","k","push","rule","code","implements","$comment","keywords","concat","custom"],"mappings":"AAAA;;AAEA,IAAIA,WAAW,GAAGC,OAAO,CAAC,UAAD,CAAzB;AAAA,IACIC,MAAM,GAAGD,OAAO,CAAC,QAAD,CAAP,CAAkBC,MAD/B;;AAGAC,MAAM,CAACC,OAAP,GAAiB,SAASC,KAAT,GAAiB;AAChC,MAAIC,KAAK,GAAG,CACV;AAAEC,IAAAA,IAAI,EAAE,QAAR;AACEF,IAAAA,KAAK,EAAE,CAAE;AAAE,iBAAW,CAAC,kBAAD;AAAb,KAAF,EACE;AAAE,iBAAW,CAAC,kBAAD;AAAb,KADF,EACuC,YADvC,EACqD,QADrD;AADT,GADU,EAIV;AAAEE,IAAAA,IAAI,EAAE,QAAR;AACEF,IAAAA,KAAK,EAAE,CAAE,WAAF,EAAe,WAAf,EAA4B,SAA5B,EAAuC,QAAvC;AADT,GAJU,EAMV;AAAEE,IAAAA,IAAI,EAAE,OAAR;AACEF,IAAAA,KAAK,EAAE,CAAE,UAAF,EAAc,UAAd,EAA0B,OAA1B,EAAmC,UAAnC,EAA+C,aAA/C;AADT,GANU,EAQV;AAAEE,IAAAA,IAAI,EAAE,QAAR;AACEF,IAAAA,KAAK,EAAE,CAAE,eAAF,EAAmB,eAAnB,EAAoC,UAApC,EAAgD,cAAhD,EAAgE,eAAhE,EACE;AAAE,oBAAc,CAAC,sBAAD,EAAyB,mBAAzB;AAAhB,KADF;AADT,GARU,EAWV;AAAEA,IAAAA,KAAK,EAAE,CAAE,MAAF,EAAU,OAAV,EAAmB,MAAnB,EAA2B,KAA3B,EAAkC,OAAlC,EAA2C,OAA3C,EAAoD,OAApD,EAA6D,IAA7D;AAAT,GAXU,CAAZ;AAcA,MAAIG,GAAG,GAAG,CAAE,MAAF,EAAU,UAAV,CAAV;AACA,MAAIC,QAAQ,GAAG,CACb,SADa,EACF,KADE,EACK,IADL,EACW,OADX,EACoB,QADpB,EAC8B,OAD9B,EAEb,aAFa,EAEE,SAFF,EAEa,aAFb,EAGb,UAHa,EAGD,UAHC,EAGW,WAHX,EAIb,kBAJa,EAIO,iBAJP,EAKb,iBALa,EAKM,MALN,EAKc,MALd,CAAf;AAOA,MAAIC,KAAK,GAAG,CAAE,QAAF,EAAY,SAAZ,EAAuB,QAAvB,EAAiC,OAAjC,EAA0C,QAA1C,EAAoD,SAApD,EAA+D,MAA/D,CAAZ;AACAJ,EAAAA,KAAK,CAACK,GAAN,GAAYT,MAAM,CAACM,GAAD,CAAlB;AACAF,EAAAA,KAAK,CAACM,KAAN,GAAcV,MAAM,CAACQ,KAAD,CAApB;AAEAJ,EAAAA,KAAK,CAACO,OAAN,CAAc,UAAUC,KAAV,EAAiB;AAC7BA,IAAAA,KAAK,CAACT,KAAN,GAAcS,KAAK,CAACT,KAAN,CAAYU,GAAZ,CAAgB,UAAUC,OAAV,EAAmB;AAC/C,UAAIC,YAAJ;;AACA,UAAI,OAAOD,OAAP,IAAkB,QAAtB,EAAgC;AAC9B,YAAIE,GAAG,GAAGC,MAAM,CAACC,IAAP,CAAYJ,OAAZ,EAAqB,CAArB,CAAV;AACAC,QAAAA,YAAY,GAAGD,OAAO,CAACE,GAAD,CAAtB;AACAF,QAAAA,OAAO,GAAGE,GAAV;AACAD,QAAAA,YAAY,CAACJ,OAAb,CAAqB,UAAUQ,CAAV,EAAa;AAChCb,UAAAA,GAAG,CAACc,IAAJ,CAASD,CAAT;AACAf,UAAAA,KAAK,CAACK,GAAN,CAAUU,CAAV,IAAe,IAAf;AACD,SAHD;AAID;;AACDb,MAAAA,GAAG,CAACc,IAAJ,CAASN,OAAT;AACA,UAAIO,IAAI,GAAGjB,KAAK,CAACK,GAAN,CAAUK,OAAV,IAAqB;AAC9BA,QAAAA,OAAO,EAAEA,OADqB;AAE9BQ,QAAAA,IAAI,EAAExB,WAAW,CAACgB,OAAD,CAFa;AAG9BS,QAAAA,UAAU,EAAER;AAHkB,OAAhC;AAKA,aAAOM,IAAP;AACD,KAlBa,CAAd;AAoBAjB,IAAAA,KAAK,CAACK,GAAN,CAAUe,QAAV,GAAqB;AACnBV,MAAAA,OAAO,EAAE,UADU;AAEnBQ,MAAAA,IAAI,EAAExB,WAAW,CAAC0B;AAFC,KAArB;AAKA,QAAIZ,KAAK,CAACP,IAAV,EAAgBD,KAAK,CAACM,KAAN,CAAYE,KAAK,CAACP,IAAlB,IAA0BO,KAA1B;AACjB,GA3BD;AA6BAR,EAAAA,KAAK,CAACqB,QAAN,GAAiBzB,MAAM,CAACM,GAAG,CAACoB,MAAJ,CAAWnB,QAAX,CAAD,CAAvB;AACAH,EAAAA,KAAK,CAACuB,MAAN,GAAe,EAAf;AAEA,SAAOvB,KAAP;AACD,CA5DD","sourcesContent":["'use strict';\n\nvar ruleModules = require('../dotjs')\n , toHash = require('./util').toHash;\n\nmodule.exports = function rules() {\n var RULES = [\n { type: 'number',\n rules: [ { 'maximum': ['exclusiveMaximum'] },\n { 'minimum': ['exclusiveMinimum'] }, 'multipleOf', 'format'] },\n { type: 'string',\n rules: [ 'maxLength', 'minLength', 'pattern', 'format' ] },\n { type: 'array',\n rules: [ 'maxItems', 'minItems', 'items', 'contains', 'uniqueItems' ] },\n { type: 'object',\n rules: [ 'maxProperties', 'minProperties', 'required', 'dependencies', 'propertyNames',\n { 'properties': ['additionalProperties', 'patternProperties'] } ] },\n { rules: [ '$ref', 'const', 'enum', 'not', 'anyOf', 'oneOf', 'allOf', 'if' ] }\n ];\n\n var ALL = [ 'type', '$comment' ];\n var KEYWORDS = [\n '$schema', '$id', 'id', '$data', '$async', 'title',\n 'description', 'default', 'definitions',\n 'examples', 'readOnly', 'writeOnly',\n 'contentMediaType', 'contentEncoding',\n 'additionalItems', 'then', 'else'\n ];\n var TYPES = [ 'number', 'integer', 'string', 'array', 'object', 'boolean', 'null' ];\n RULES.all = toHash(ALL);\n RULES.types = toHash(TYPES);\n\n RULES.forEach(function (group) {\n group.rules = group.rules.map(function (keyword) {\n var implKeywords;\n if (typeof keyword == 'object') {\n var key = Object.keys(keyword)[0];\n implKeywords = keyword[key];\n keyword = key;\n implKeywords.forEach(function (k) {\n ALL.push(k);\n RULES.all[k] = true;\n });\n }\n ALL.push(keyword);\n var rule = RULES.all[keyword] = {\n keyword: keyword,\n code: ruleModules[keyword],\n implements: implKeywords\n };\n return rule;\n });\n\n RULES.all.$comment = {\n keyword: '$comment',\n code: ruleModules.$comment\n };\n\n if (group.type) RULES.types[group.type] = group;\n });\n\n RULES.keywords = toHash(ALL.concat(KEYWORDS));\n RULES.custom = {};\n\n return RULES;\n};\n"]},"metadata":{},"sourceType":"script"}