@push.rocks/smartguard
Version:
A TypeScript library for creating and managing validation guards, aiding in data validation and security checks.
25 lines • 1.59 kB
JavaScript
import * as plugins from './smartguard.plugins.js';
export class Guard {
constructor(guardFunctionArg, optionsArg) {
this.guardFunction = guardFunctionArg;
this.guardoOptions = optionsArg;
}
/**
* executes the guard against a data argument;
* @param dataArg
*/
async exec(dataArg) {
const result = await this.guardFunction(dataArg);
return result;
}
async getFailedHint(dataArg) {
const result = await this.exec(dataArg);
if (!result) {
return this.guardoOptions.failedHint;
}
else {
return null;
}
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRndWFyZC5jbGFzc2VzLmd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvc21hcnRndWFyZC5jbGFzc2VzLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0seUJBQXlCLENBQUM7QUFTbkQsTUFBTSxPQUFPLEtBQUs7SUFHaEIsWUFBWSxnQkFBbUMsRUFBRSxVQUEwQjtRQUN6RSxJQUFJLENBQUMsYUFBYSxHQUFHLGdCQUFnQixDQUFDO1FBQ3RDLElBQUksQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQVU7UUFDMUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsYUFBYSxDQUFDLE9BQVU7UUFDbkMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7UUFDdkMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0NBQ0YifQ==