mirror of
https://github.com/multipleof4/lynchmark.git
synced 2026-01-14 00:27:55 +00:00
Docs: Update benchmark results
This commit is contained in:
@@ -1,15 +1,17 @@
|
||||
const validateJSON = async (data, schema) => {
|
||||
const { default: Ajv } = await import('https://cdn.jsdelivr.net/npm/ajv@8/dist/ajv.bundle.js');
|
||||
|
||||
const ajv = new Ajv({ allErrors: true, verbose: true });
|
||||
const { default: Ajv } = await import('https://esm.sh/ajv@8.12.0');
|
||||
const ajv = new Ajv({ allErrors: true });
|
||||
const validate = ajv.compile(schema);
|
||||
const valid = validate(data);
|
||||
|
||||
return {
|
||||
valid,
|
||||
errors: valid ? [] : validate.errors.map(e =>
|
||||
`${e.instancePath || '/'} ${e.message}${e.params ? ': ' + JSON.stringify(e.params) : ''}`
|
||||
)
|
||||
errors: valid ? [] : validate.errors.map(e => ({
|
||||
path: e.instancePath || '/',
|
||||
message: e.message,
|
||||
keyword: e.keyword,
|
||||
params: e.params
|
||||
}))
|
||||
};
|
||||
};
|
||||
export default validateJSON;
|
||||
@@ -1,35 +1,17 @@
|
||||
const validateJSON = async (jsonObject, schemaObject) => {
|
||||
const validateJSON = async (data, schema) => {
|
||||
try {
|
||||
const [{
|
||||
default: Ajv
|
||||
}, {
|
||||
default: addFormats
|
||||
}] = await Promise.all([
|
||||
import('https://esm.sh/ajv'),
|
||||
import('https://esm.sh/ajv-formats')
|
||||
]);
|
||||
|
||||
const ajv = new Ajv({
|
||||
allErrors: true
|
||||
});
|
||||
addFormats(ajv);
|
||||
|
||||
const validate = ajv.compile(schemaObject);
|
||||
const valid = validate(jsonObject);
|
||||
|
||||
const errors = valid ? [] : validate.errors.map(
|
||||
e => `${e.instancePath || '<root>'}: ${e.message}`
|
||||
);
|
||||
const { default: Ajv } = await import('https://esm.sh/ajv@8');
|
||||
const validate = new Ajv({ allErrors: true }).compile(schema);
|
||||
const valid = validate(data);
|
||||
|
||||
return {
|
||||
valid,
|
||||
errors
|
||||
errors: valid ? [] : (validate.errors ?? []).map(
|
||||
({ instancePath, message }) => `${instancePath || 'root'} ${message}`.trim()
|
||||
),
|
||||
};
|
||||
} catch (e) {
|
||||
return {
|
||||
valid: false,
|
||||
errors: [`Validation setup failed: ${e.message}`]
|
||||
};
|
||||
return { valid: false, errors: [e.message] };
|
||||
}
|
||||
};
|
||||
export default validateJSON;
|
||||
@@ -1,8 +1,8 @@
|
||||
async function validateJSON(o, s) {
|
||||
const { default: Ajv } = await import('https://esm.sh/ajv@8');
|
||||
const a = new Ajv({ allErrors: true });
|
||||
const v = a.compile(s);
|
||||
const ok = v(o);
|
||||
return { valid: ok, errors: ok ? [] : v.errors.map(e => e.message) };
|
||||
async function validateJSON(d,s){
|
||||
const {default:Ajv}=await import('https://cdn.skypack.dev/ajv');
|
||||
const a=new Ajv({allErrors:true});
|
||||
const v=a.compile(s);
|
||||
const ok=v(d);
|
||||
return{valid:ok,errors:ok?[]:(v.errors||[]).map(e=>e.message||'')};
|
||||
}
|
||||
export default validateJSON;
|
||||
@@ -1,10 +1,9 @@
|
||||
const validateJSON=async(j,s)=>{
|
||||
const{default:Ajv}=await import('https://esm.sh/ajv@8')
|
||||
const{default:f}=await import('https://esm.sh/ajv-formats@2')
|
||||
const a=new Ajv({allErrors:1,strict:false})
|
||||
f(a)
|
||||
const v=a.compile(s)
|
||||
const ok=v(j)
|
||||
return{valid:ok,errors:ok?[]:(v.errors||[]).map(e=>`${e.instancePath||'/'} ${e.message}`.trim())}
|
||||
export async function validateJSON(data, schema) {
|
||||
const { default: Ajv } = await import('https://esm.sh/ajv@8?bundle');
|
||||
const ajv = new Ajv({ allErrors: true, strict: false });
|
||||
const validate = ajv.compile(schema);
|
||||
const valid = validate(data);
|
||||
const errors = valid ? [] : (validate.errors || []).map(e => `${e.instancePath || '/'} ${e.message || ''}`.trim());
|
||||
return { valid, errors };
|
||||
}
|
||||
export default validateJSON;
|
||||
Reference in New Issue
Block a user