mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-26 18:37:31 +09:00
import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo
This commit is contained in:
commit
dcd9973243
150858 changed files with 23884658 additions and 0 deletions
|
|
@ -0,0 +1,48 @@
|
|||
/**
|
||||
* @fileoverview Reject some uses of require.
|
||||
*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
// Rule Definition
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
module.exports = function(context) {
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Public
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
if (typeof(context.options[0]) !== "string") {
|
||||
throw new Error("reject-some-requires expects a regexp");
|
||||
}
|
||||
const RX = new RegExp(context.options[0]);
|
||||
|
||||
const checkPath = function(node, path) {
|
||||
if (RX.test(path)) {
|
||||
context.report(node, `require(${path}) is not allowed`);
|
||||
}
|
||||
};
|
||||
|
||||
return {
|
||||
"CallExpression": function(node) {
|
||||
if (node.callee.type == "Identifier" &&
|
||||
node.callee.name == "require" &&
|
||||
node.arguments.length == 1 &&
|
||||
node.arguments[0].type == "Literal") {
|
||||
checkPath(node, node.arguments[0].value);
|
||||
} else if (node.callee.type == "MemberExpression" &&
|
||||
node.callee.property.type == "Identifier" &&
|
||||
node.callee.property.name == "lazyRequireGetter" &&
|
||||
node.arguments.length >= 3 &&
|
||||
node.arguments[2].type == "Literal") {
|
||||
checkPath(node, node.arguments[2].value);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue