| Server IP : 82.148.16.210 / Your IP : 216.73.216.19 Web Server : nginx/1.29.5 System : Linux mail.sarafai.ru 6.1.0-43-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.162-1 (2026-02-08) x86_64 User : root ( 0) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /usr/share/nodejs/ajv/lib/dotjs/ |
Upload File : |
'use strict';
module.exports = function generate__limitProperties(it, $keyword, $ruleType) {
var out=' '; var $lvl = it.level; var $dataLvl = it.dataLevel; var $schema = it.schema[$keyword]; var $schemaPath = it.schemaPath + it.util.getProperty($keyword); var $errSchemaPath = it.errSchemaPath + '/' + $keyword; var $breakOnError = !it.opts.allErrors; var $errorKeyword; var $data = 'data' + ($dataLvl || ''); var $isData = it.opts.$data && $schema && $schema.$data , $schemaValue; if($isData){out+=' var schema'+($lvl)+' = '+( it.util.getData($schema.$data, $dataLvl, it.dataPathArr) )+'; '; $schemaValue = 'schema' + $lvl; }else{ $schemaValue = $schema; }if(!($isData || typeof $schema == 'number')){ throw new Error($keyword + ' must be number'); } var $op = $keyword == 'maxProperties' ? '>' : '<'; out+='if ( ';if($isData){out+=' ('+($schemaValue)+' !== undefined && typeof '+($schemaValue)+' != \'number\') || ';}out+=' Object.keys('+($data)+').length '+($op)+' '+($schemaValue)+') { '; var $errorKeyword = $keyword; var $$outStack = $$outStack || []; $$outStack.push(out); out = ''; /* istanbul ignore else */ if(it.createErrors !== false){out+=' { keyword: \''+( $errorKeyword || '_limitProperties' )+'\' , dataPath: (dataPath || \'\') + '+( it.errorPath )+' , schemaPath: '+(it.util.toQuotedString($errSchemaPath))+' , params: { limit: '+($schemaValue)+' } ';if(it.opts.messages !== false){out+=' , message: \'should NOT have ';if($keyword=='maxProperties'){out+='more';}else{out+='fewer';}out+=' than ';if($isData){out+='\' + '+($schemaValue)+' + \'';}else{out+=''+($schema);}out+=' properties\' ';}if(it.opts.verbose){out+=' , schema: ';if($isData){out+='validate.schema'+($schemaPath);}else{out+=''+($schema);}out+=' , parentSchema: validate.schema'+(it.schemaPath)+' , data: '+($data)+' ';}out+=' } ';}else{out+=' {} ';} var __err = out; out = $$outStack.pop(); if(!it.compositeRule && $breakOnError){ /* istanbul ignore if */ if(it.async){out+=' throw new ValidationError(['+(__err)+']); ';}else{out+=' validate.errors = ['+(__err)+']; return false; ';}}else{out+=' var err = '+(__err)+'; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';}out+='} ';if($breakOnError){out+=' else { ';}return out;
}