This commit is contained in:
Danil Kovtonyuk 2022-04-22 13:05:56 +10:00
commit 44f31f8b9f
No known key found for this signature in database
GPG key ID: E72A919BF08C3746
402 changed files with 47865 additions and 0 deletions

42
services/schema/index.js Normal file
View file

@ -0,0 +1,42 @@
import { toBN } from 'web3-utils'
import relayerSchemas from './relayer'
const Ajv = require('ajv')
const ajv = new Ajv({ allErrors: true, schemas: relayerSchemas })
ajv.addKeyword('BN', {
validate: (schema, data) => {
try {
toBN(data)
return true
} catch (e) {
return false
}
},
errors: true
})
function getRelayerValidateFunction(netId) {
switch (netId) {
case 56:
return ajv.getSchema('bscRelayer')
case 100:
return ajv.getSchema('xdaiRelayer')
case 137:
return ajv.getSchema('polygonRelayer')
case 43114:
return ajv.getSchema('avalancheRelayer')
case 10:
case 42161:
return ajv.getSchema('l2Relayer')
default:
return ajv.getSchema('defaultRelayer')
}
}
export default {
getRelayerValidateFunction
}