File: /var/www/vhost/disk-apps/pwa.sports-crowd.com/node_modules/codelyzer/util/selectorValidator.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SelectorValidator = void 0;
var selectorPropertyBase_1 = require("../selectorPropertyBase");
exports.SelectorValidator = {
attribute: function (selector) {
return selector.length !== 0;
},
camelCase: function (selector) {
return /^[a-zA-Z0-9\[\]]+$/.test(selector);
},
element: function (selector) {
return selector !== null;
},
kebabCase: function (selector) {
return /^[a-z0-9\-]+\-[a-z0-9\-]+$/.test(selector);
},
prefix: function (prefix, selectorStyle) {
var regex = new RegExp("^\\[?(" + prefix + ")");
return function (selector) {
if (!prefix)
return true;
if (!regex.test(selector))
return false;
var suffix = selector.replace(regex, '');
if (selectorStyle === selectorPropertyBase_1.OPTION_STYLE_CAMEL_CASE) {
return !suffix || suffix[0] === suffix[0].toUpperCase();
}
else if (selectorStyle === selectorPropertyBase_1.OPTION_STYLE_KEBAB_CASE) {
return !suffix || suffix[0] === '-';
}
throw Error('Invalid selector style!');
};
},
};