@pobammer-ts/eslint-cease-nonsense-rules 1.2.1 → 1.2.2

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.
@@ -13,13 +13,13 @@ function normalizeConfig(options) {
13
13
  if (isArrayConfig.Check(bannedInstances)) {
14
14
  const map = new Map();
15
15
  for (const className of bannedInstances)
16
- map.set(className, undefined);
16
+ map.set(className.toLowerCase(), { originalName: className, message: undefined });
17
17
  return { bannedClasses: map };
18
18
  }
19
19
  if (isObjectConfig.Check(bannedInstances)) {
20
20
  const map = new Map();
21
21
  for (const [className, message] of Object.entries(bannedInstances))
22
- map.set(className, message);
22
+ map.set(className.toLowerCase(), { originalName: className, message });
23
23
  return { bannedClasses: map };
24
24
  }
25
25
  return { bannedClasses: new Map() };
@@ -33,18 +33,18 @@ const banInstances = {
33
33
  const config = normalizeConfig(context.options[0]);
34
34
  if (config.bannedClasses.size === 0)
35
35
  return {};
36
- function reportBannedClass(node, className) {
37
- const customMessage = config.bannedClasses.get(className);
38
- if (customMessage !== undefined && customMessage !== "") {
36
+ function reportBannedClass(node, entry) {
37
+ const { originalName, message } = entry;
38
+ if (message !== undefined && message !== "") {
39
39
  context.report({
40
- data: { className, customMessage },
40
+ data: { className: originalName, customMessage: message },
41
41
  messageId: "bannedInstanceCustom",
42
42
  node,
43
43
  });
44
44
  }
45
45
  else {
46
46
  context.report({
47
- data: { className },
47
+ data: { className: originalName },
48
48
  messageId: "bannedInstance",
49
49
  node,
50
50
  });
@@ -62,11 +62,11 @@ const banInstances = {
62
62
  // Only lowercase JSX elements are Roblox Instances
63
63
  if (firstChar !== firstChar.toLowerCase())
64
64
  return;
65
- // Capitalize first letter to match Roblox class name convention
66
- const className = firstChar.toUpperCase() + elementName.slice(1);
67
- if (!config.bannedClasses.has(className))
65
+ // Lookup by lowercase (config keys are stored lowercase)
66
+ const entry = config.bannedClasses.get(elementName.toLowerCase());
67
+ if (!entry)
68
68
  return;
69
- reportBannedClass(node, className);
69
+ reportBannedClass(node, entry);
70
70
  },
71
71
  // Handle: new Instance("ClassName")
72
72
  NewExpression(node) {
@@ -79,10 +79,11 @@ const banInstances = {
79
79
  return;
80
80
  if (typeof firstArgument.value !== "string")
81
81
  return;
82
- const className = firstArgument.value;
83
- if (!config.bannedClasses.has(className))
82
+ // Lookup by lowercase (config keys are stored lowercase)
83
+ const entry = config.bannedClasses.get(firstArgument.value.toLowerCase());
84
+ if (!entry)
84
85
  return;
85
- reportBannedClass(node, className);
86
+ reportBannedClass(node, entry);
86
87
  },
87
88
  };
88
89
  },
@@ -1 +1 @@
1
- {"version":3,"file":"ban-instances.js","sourceRoot":"","sources":["../../src/rules/ban-instances.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAyB1C,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AACzD,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAC1E,MAAM,eAAe,GAAG,OAAO,CAC9B,IAAI,CAAC,MAAM,CAAC;IACX,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CACnG,CAAC,CACF,CAAC;AAMF,SAAS,eAAe,CAAC,OAAgB,EAAoB;IAC5D,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,aAAa,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IAEzE,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC;IAEpC,IAAI,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,IAAI,GAAG,EAA8B,CAAC;QAClD,KAAK,MAAM,SAAS,IAAI,eAAe;YAAE,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACvE,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;QAC3C,MAAM,GAAG,GAAG,IAAI,GAAG,EAA8B,CAAC;QAClD,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC;YAAE,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAChG,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED,OAAO,EAAE,aAAa,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;AAAA,CACpC;AAMD,MAAM,IAAI,GAA4B;IACrC,WAAW,EAAE,iFAAiF;IAC9F,WAAW,EAAE,KAAK;CAClB,CAAC;AAEF,MAAM,YAAY,GAAkF;IACnG,MAAM,CAAC,OAAO,EAAE;QACf,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnD,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAE/C,SAAS,iBAAiB,CAAC,IAAmB,EAAE,SAAiB,EAAQ;YACxE,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAE1D,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;gBACzD,OAAO,CAAC,MAAM,CAAC;oBACd,IAAI,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE;oBAClC,SAAS,EAAE,sBAAsB;oBACjC,IAAI;iBACJ,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,MAAM,CAAC;oBACd,IAAI,EAAE,EAAE,SAAS,EAAE;oBACnB,SAAS,EAAE,gBAAgB;oBAC3B,IAAI;iBACJ,CAAC,CAAC;YACJ,CAAC;QAAA,CACD;QAED,OAAO;YACN,iEAAiE;YACjE,mEAAmE;YACnE,iBAAiB,CAAC,IAAgC,EAAE;gBACnD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;gBAEtB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,cAAc,CAAC,aAAa;oBAAE,OAAO;gBAEhE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC9B,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAExC,mDAAmD;gBACnD,IAAI,SAAS,KAAK,SAAS,CAAC,WAAW,EAAE;oBAAE,OAAO;gBAElD,gEAAgE;gBAChE,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC;oBAAE,OAAO;gBAEjD,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAAA,CACnC;YACD,oCAAoC;YACpC,aAAa,CAAC,IAA4B,EAAE;gBAC3C,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,cAAc,CAAC,UAAU;oBAAE,OAAO;gBACpE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU;oBAAE,OAAO;gBAE5C,MAAM,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;gBACvC,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,IAAI,KAAK,QAAQ,CAAC,cAAc,CAAC,OAAO;oBAAE,OAAO;gBACrF,IAAI,OAAO,aAAa,CAAC,KAAK,KAAK,QAAQ;oBAAE,OAAO;gBAEpD,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC;gBACtC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC;oBAAE,OAAO;gBAEjD,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAAA,CACnC;SACD,CAAC;IAAA,CACF;IACD,cAAc,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;IACzC,IAAI,EAAE;QACL,IAAI;QACJ,QAAQ,EAAE;YACT,cAAc,EAAE,2CAA2C;YAC3D,oBAAoB,EAAE,mBAAmB;SACzC;QACD,MAAM,EAAE;YACP;gBACC,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACX,eAAe,EAAE;wBAChB,WAAW,EACV,qFAAqF;wBACtF,KAAK,EAAE;4BACN;gCACC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACzB,IAAI,EAAE,OAAO;6BACb;4BACD;gCACC,oBAAoB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACxC,IAAI,EAAE,QAAQ;6BACd;yBACD;qBACD;iBACD;gBACD,QAAQ,EAAE,CAAC,iBAAiB,CAAC;gBAC7B,IAAI,EAAE,QAAQ;aACd;SACD;QACD,IAAI,EAAE,SAAS;KACf;CACD,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ban-instances.js","sourceRoot":"","sources":["../../src/rules/ban-instances.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -78,5 +78,5 @@
78
78
  },
79
79
  "type": "module",
80
80
  "types": "./dist/index.d.ts",
81
- "version": "1.2.1"
81
+ "version": "1.2.2"
82
82
  }