eslint-plugin-nima 0.1.8 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,18 +15,23 @@ exports.rule = utils_1.ESLintUtils.RuleCreator.withoutDocs({
15
15
  function isFileMatched(filename, folders, files) {
16
16
  const dir = path_1.default.dirname(filename);
17
17
  const base = path_1.default.basename(filename);
18
- if (folders.length === 0 && files.length === 0) {
18
+ const hasFolders = folders.length > 0;
19
+ const hasFiles = files.length > 0;
20
+ if (!hasFolders && !hasFiles) {
19
21
  return false;
20
22
  }
21
- const folderMatch = folders.length === 0 || folders.some((f) => (0, minimatch_1.minimatch)(dir, f));
22
- const fileMatch = files.length === 0 || files.some((f) => (0, minimatch_1.minimatch)(base, f));
23
- if (folders.length > 0 && files.length === 0) {
24
- return folderMatch;
23
+ if (hasFolders && hasFiles) {
24
+ const folderMatch = folders.some((f) => (0, minimatch_1.minimatch)(dir, f));
25
+ const fileMatch = files.some((f) => (0, minimatch_1.minimatch)(base, f));
26
+ return folderMatch && fileMatch;
25
27
  }
26
- if (files.length > 0 && folders.length === 0) {
27
- return fileMatch;
28
+ if (hasFolders && !hasFiles) {
29
+ return folders.some((f) => (0, minimatch_1.minimatch)(dir, f));
28
30
  }
29
- return folderMatch && fileMatch;
31
+ if (!hasFolders && hasFiles) {
32
+ return files.some((f) => (0, minimatch_1.minimatch)(base, f));
33
+ }
34
+ return false;
30
35
  }
31
36
  function isFunctionDisabled(fnName, filename) {
32
37
  return allOptions.some((option) => {
@@ -41,10 +46,19 @@ exports.rule = utils_1.ESLintUtils.RuleCreator.withoutDocs({
41
46
  else {
42
47
  appliesToFile = isFileMatched(filename, folders, files);
43
48
  }
44
- if (!appliesToFile) {
49
+ if (allowFunctions.length > 0) {
50
+ const functionIsInAllowList = allowFunctions.some((fn) => fn.toLowerCase() === fnName.toLowerCase());
51
+ if (functionIsInAllowList) {
52
+ if (files.length === 0 && folders.length === 0) {
53
+ return false;
54
+ }
55
+ else {
56
+ return !appliesToFile;
57
+ }
58
+ }
45
59
  return false;
46
60
  }
47
- if (allowFunctions.some((fn) => fn.toLowerCase() === fnName.toLowerCase())) {
61
+ if (!appliesToFile) {
48
62
  return false;
49
63
  }
50
64
  if (disableFunctions.some((fn) => fn.toLowerCase() === fnName.toLowerCase())) {
@@ -1 +1 @@
1
- {"version":3,"file":"manage-functions.js","sourceRoot":"","sources":["../../src/rules/manage-functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manage-functions.js","sourceRoot":"","sources":["../../src/rules/manage-functions.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-plugin-nima",
3
- "version": "0.1.8",
3
+ "version": "0.2.0",
4
4
  "description": "ESLint plugin for NIMA Labs",
5
5
  "keywords": [
6
6
  "eslint",