1 line
20 KiB
JSON
1 line
20 KiB
JSON
{"ast":null,"code":"'use strict';\n\nmodule.exports = function generate_items(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n var $errs = 'errs__' + $lvl;\n var $it = it.util.copy(it);\n var $closingBraces = '';\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n var $idx = 'i' + $lvl,\n $dataNxt = $it.dataLevel = it.dataLevel + 1,\n $nextData = 'data' + $dataNxt,\n $currentBaseId = it.baseId;\n out += 'var ' + $errs + ' = errors;var ' + $valid + ';';\n\n if (Array.isArray($schema)) {\n var $additionalItems = it.schema.additionalItems;\n\n if ($additionalItems === false) {\n out += ' ' + $valid + ' = ' + $data + '.length <= ' + $schema.length + '; ';\n var $currErrSchemaPath = $errSchemaPath;\n $errSchemaPath = it.errSchemaPath + '/additionalItems';\n out += ' if (!' + $valid + ') { ';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = '';\n /* istanbul ignore else */\n\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + 'additionalItems' + '\\' , dataPath: (dataPath || \\'\\') + ' + it.errorPath + ' , schemaPath: ' + it.util.toQuotedString($errSchemaPath) + ' , params: { limit: ' + $schema.length + ' } ';\n\n if (it.opts.messages !== false) {\n out += ' , message: \\'should NOT have more than ' + $schema.length + ' items\\' ';\n }\n\n if (it.opts.verbose) {\n out += ' , schema: false , parentSchema: validate.schema' + it.schemaPath + ' , data: ' + $data + ' ';\n }\n\n out += ' } ';\n } else {\n out += ' {} ';\n }\n\n var __err = out;\n out = $$outStack.pop();\n\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + __err + ']); ';\n } else {\n out += ' validate.errors = [' + __err + ']; return false; ';\n }\n } else {\n out += ' var err = ' + __err + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n\n out += ' } ';\n $errSchemaPath = $currErrSchemaPath;\n\n if ($breakOnError) {\n $closingBraces += '}';\n out += ' else { ';\n }\n }\n\n var arr1 = $schema;\n\n if (arr1) {\n var $sch,\n $i = -1,\n l1 = arr1.length - 1;\n\n while ($i < l1) {\n $sch = arr1[$i += 1];\n\n if (it.opts.strictKeywords ? typeof $sch == 'object' && Object.keys($sch).length > 0 || $sch === false : it.util.schemaHasRules($sch, it.RULES.all)) {\n out += ' ' + $nextValid + ' = true; if (' + $data + '.length > ' + $i + ') { ';\n var $passData = $data + '[' + $i + ']';\n $it.schema = $sch;\n $it.schemaPath = $schemaPath + '[' + $i + ']';\n $it.errSchemaPath = $errSchemaPath + '/' + $i;\n $it.errorPath = it.util.getPathExpr(it.errorPath, $i, it.opts.jsonPointers, true);\n $it.dataPathArr[$dataNxt] = $i;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + it.util.varReplace($code, $nextData, $passData) + ' ';\n } else {\n out += ' var ' + $nextData + ' = ' + $passData + '; ' + $code + ' ';\n }\n\n out += ' } ';\n\n if ($breakOnError) {\n out += ' if (' + $nextValid + ') { ';\n $closingBraces += '}';\n }\n }\n }\n }\n\n if (typeof $additionalItems == 'object' && (it.opts.strictKeywords ? typeof $additionalItems == 'object' && Object.keys($additionalItems).length > 0 || $additionalItems === false : it.util.schemaHasRules($additionalItems, it.RULES.all))) {\n $it.schema = $additionalItems;\n $it.schemaPath = it.schemaPath + '.additionalItems';\n $it.errSchemaPath = it.errSchemaPath + '/additionalItems';\n out += ' ' + $nextValid + ' = true; if (' + $data + '.length > ' + $schema.length + ') { for (var ' + $idx + ' = ' + $schema.length + '; ' + $idx + ' < ' + $data + '.length; ' + $idx + '++) { ';\n $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);\n var $passData = $data + '[' + $idx + ']';\n $it.dataPathArr[$dataNxt] = $idx;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + it.util.varReplace($code, $nextData, $passData) + ' ';\n } else {\n out += ' var ' + $nextData + ' = ' + $passData + '; ' + $code + ' ';\n }\n\n if ($breakOnError) {\n out += ' if (!' + $nextValid + ') break; ';\n }\n\n out += ' } } ';\n\n if ($breakOnError) {\n out += ' if (' + $nextValid + ') { ';\n $closingBraces += '}';\n }\n }\n } else if (it.opts.strictKeywords ? typeof $schema == 'object' && Object.keys($schema).length > 0 || $schema === false : it.util.schemaHasRules($schema, it.RULES.all)) {\n $it.schema = $schema;\n $it.schemaPath = $schemaPath;\n $it.errSchemaPath = $errSchemaPath;\n out += ' for (var ' + $idx + ' = ' + 0 + '; ' + $idx + ' < ' + $data + '.length; ' + $idx + '++) { ';\n $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);\n var $passData = $data + '[' + $idx + ']';\n $it.dataPathArr[$dataNxt] = $idx;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + it.util.varReplace($code, $nextData, $passData) + ' ';\n } else {\n out += ' var ' + $nextData + ' = ' + $passData + '; ' + $code + ' ';\n }\n\n if ($breakOnError) {\n out += ' if (!' + $nextValid + ') break; ';\n }\n\n out += ' }';\n }\n\n if ($breakOnError) {\n out += ' ' + $closingBraces + ' if (' + $errs + ' == errors) {';\n }\n\n return out;\n};","map":{"version":3,"sources":["/Users/tylerkoenig/Code/personal/react-scss2/node_modules/ajv/lib/dotjs/items.js"],"names":["module","exports","generate_items","it","$keyword","$ruleType","out","$lvl","level","$dataLvl","dataLevel","$schema","schema","$schemaPath","schemaPath","util","getProperty","$errSchemaPath","errSchemaPath","$breakOnError","opts","allErrors","$data","$valid","$errs","$it","copy","$closingBraces","$nextValid","$idx","$dataNxt","$nextData","$currentBaseId","baseId","Array","isArray","$additionalItems","additionalItems","length","$currErrSchemaPath","$$outStack","push","createErrors","errorPath","toQuotedString","messages","verbose","__err","pop","compositeRule","async","arr1","$sch","$i","l1","strictKeywords","Object","keys","schemaHasRules","RULES","all","$passData","getPathExpr","jsonPointers","dataPathArr","$code","validate","varOccurences","varReplace"],"mappings":"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","sourcesContent":["'use strict';\nmodule.exports = function generate_items(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n var $errs = 'errs__' + $lvl;\n var $it = it.util.copy(it);\n var $closingBraces = '';\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n var $idx = 'i' + $lvl,\n $dataNxt = $it.dataLevel = it.dataLevel + 1,\n $nextData = 'data' + $dataNxt,\n $currentBaseId = it.baseId;\n out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';';\n if (Array.isArray($schema)) {\n var $additionalItems = it.schema.additionalItems;\n if ($additionalItems === false) {\n out += ' ' + ($valid) + ' = ' + ($data) + '.length <= ' + ($schema.length) + '; ';\n var $currErrSchemaPath = $errSchemaPath;\n $errSchemaPath = it.errSchemaPath + '/additionalItems';\n out += ' if (!' + ($valid) + ') { ';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('additionalItems') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schema.length) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should NOT have more than ' + ($schema.length) + ' items\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } ';\n $errSchemaPath = $currErrSchemaPath;\n if ($breakOnError) {\n $closingBraces += '}';\n out += ' else { ';\n }\n }\n var arr1 = $schema;\n if (arr1) {\n var $sch, $i = -1,\n l1 = arr1.length - 1;\n while ($i < l1) {\n $sch = arr1[$i += 1];\n if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {\n out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($i) + ') { ';\n var $passData = $data + '[' + $i + ']';\n $it.schema = $sch;\n $it.schemaPath = $schemaPath + '[' + $i + ']';\n $it.errSchemaPath = $errSchemaPath + '/' + $i;\n $it.errorPath = it.util.getPathExpr(it.errorPath, $i, it.opts.jsonPointers, true);\n $it.dataPathArr[$dataNxt] = $i;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n out += ' } ';\n if ($breakOnError) {\n out += ' if (' + ($nextValid) + ') { ';\n $closingBraces += '}';\n }\n }\n }\n }\n if (typeof $additionalItems == 'object' && (it.opts.strictKeywords ? (typeof $additionalItems == 'object' && Object.keys($additionalItems).length > 0) || $additionalItems === false : it.util.schemaHasRules($additionalItems, it.RULES.all))) {\n $it.schema = $additionalItems;\n $it.schemaPath = it.schemaPath + '.additionalItems';\n $it.errSchemaPath = it.errSchemaPath + '/additionalItems';\n out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($schema.length) + ') { for (var ' + ($idx) + ' = ' + ($schema.length) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';\n $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);\n var $passData = $data + '[' + $idx + ']';\n $it.dataPathArr[$dataNxt] = $idx;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n if ($breakOnError) {\n out += ' if (!' + ($nextValid) + ') break; ';\n }\n out += ' } } ';\n if ($breakOnError) {\n out += ' if (' + ($nextValid) + ') { ';\n $closingBraces += '}';\n }\n }\n } else if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) {\n $it.schema = $schema;\n $it.schemaPath = $schemaPath;\n $it.errSchemaPath = $errSchemaPath;\n out += ' for (var ' + ($idx) + ' = ' + (0) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';\n $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);\n var $passData = $data + '[' + $idx + ']';\n $it.dataPathArr[$dataNxt] = $idx;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n if ($breakOnError) {\n out += ' if (!' + ($nextValid) + ') break; ';\n }\n out += ' }';\n }\n if ($breakOnError) {\n out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';\n }\n return out;\n}\n"]},"metadata":{},"sourceType":"script"} |