@locker/eslint-plugin-locker
Version:
Lightning Web Security ESLint rules
24 lines (23 loc) • 950 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const eslint_rule_maker_1 = require("@locker/eslint-rule-maker");
const util_1 = require("../util");
exports.default = (0, eslint_rule_maker_1.createRule)({
meta: {
docs: {
description: `disallowed CookieStore properties`,
category: 'Lightning Web Security',
recommended: true,
url: (0, util_1.docURL)('distorted-cookie-store-blocked-properties'),
},
},
rule: {
message({ pattern }) {
const cookieStoreDot = 'cookieStore.';
const lastIndex = pattern.lastIndexOf(cookieStoreDot);
const property = pattern.slice(lastIndex + cookieStoreDot.length);
return `CookieStore.prototype.${property} is disallowed by Lightning Web Security.`;
},
search: ['window.cookieStore.addEventListener', 'window.cookieStore.onchange'],
},
});