@adguard/agtree
Version:
Tool set for working with adblock filter lists
46 lines (43 loc) • 1.42 kB
JavaScript
/*
* AGTree v3.2.2 (build date: Tue, 08 Jul 2025 13:39:47 GMT)
* (c) 2025 Adguard Software Ltd.
* Released under the MIT license
* https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
*/
import { UNDERSCORE } from '../utils/constants.js';
import { VALIDATION_ERROR_PREFIX } from './constants.js';
/**
* Validates the noop modifier (i.e. only underscores).
*
* @param value Value of the modifier.
*
* @returns True if the modifier is valid, false otherwise.
*/
const isValidNoopModifier = (value) => {
return value.split('').every((char) => char === UNDERSCORE);
};
/**
* Returns invalid validation result with given error message.
*
* @param error Error message.
*
* @returns Validation result `{ valid: false, error }`.
*/
const getInvalidValidationResult = (error) => {
return {
valid: false,
error,
};
};
/**
* Returns invalid validation result which uses {@link VALIDATION_ERROR_PREFIX.VALUE_REQUIRED} as prefix
* and specifies the given `modifierName` in the error message.
*
* @param modifierName Modifier name.
*
* @returns Validation result `{ valid: false, error }`.
*/
const getValueRequiredValidationResult = (modifierName) => {
return getInvalidValidationResult(`${VALIDATION_ERROR_PREFIX.VALUE_REQUIRED}: '${modifierName}'`);
};
export { getInvalidValidationResult, getValueRequiredValidationResult, isValidNoopModifier };