Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,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_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/wwwroot/mifepriston.org/node_modules/ajv-keywords/keywords/ |
Upload File : |
'use strict'; module.exports = function defFunc (ajv) { var transform = { trimLeft: function (value) { return value.replace(/^[\s]+/, ''); }, trimRight: function (value) { return value.replace(/[\s]+$/, ''); }, trim: function (value) { return value.trim(); }, toLowerCase: function (value) { return value.toLowerCase(); }, toUpperCase: function (value) { return value.toUpperCase(); }, toEnumCase: function (value, cfg) { return cfg.hash[makeHashTableKey(value)] || value; } }; defFunc.definition = { type: 'string', errors: false, modifying: true, valid: true, compile: function (schema, parentSchema) { var cfg; if (schema.indexOf('toEnumCase') !== -1) { // build hash table to enum values cfg = {hash: {}}; // requires `enum` in schema if (!parentSchema.enum) throw new Error('Missing enum. To use `transform:["toEnumCase"]`, `enum:[...]` is required.'); for (var i = parentSchema.enum.length; i--; i) { var v = parentSchema.enum[i]; if (typeof v !== 'string') continue; var k = makeHashTableKey(v); // requires all `enum` values have unique keys if (cfg.hash[k]) throw new Error('Invalid enum uniqueness. To use `transform:["toEnumCase"]`, all values must be unique when case insensitive.'); cfg.hash[k] = v; } } return function (data, dataPath, object, key) { // skip if value only if (!object) return; // apply transform in order provided for (var j = 0, l = schema.length; j < l; j++) data = transform[schema[j]](data, cfg); object[key] = data; }; }, metaSchema: { type: 'array', items: { type: 'string', enum: [ 'trimLeft', 'trimRight', 'trim', 'toLowerCase', 'toUpperCase', 'toEnumCase' ] } } }; ajv.addKeyword('transform', defFunc.definition); return ajv; function makeHashTableKey (value) { return value.toLowerCase(); } };