@akinon/eslint-plugin-projectzero 1.58.0 → 1.59.0-rc.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # @akinon/eslint-plugin-projectzero
2
2
 
3
+ ## 1.59.0-rc.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 5a4c6076: ZERO-2764: Add case-warning rule to eslint-plugin-projectzero
8
+ - 64699d3f: ZERO-2761: Fix invalid import for plugin module
9
+
3
10
  ## 1.58.0
4
11
 
5
12
  ## 1.57.0
@@ -9,6 +16,22 @@
9
16
  ### Minor Changes
10
17
 
11
18
  - 4d64ef7: ZERO-2611: Add check-sentry-options rule to eslint-plugin-projectzero
19
+ - 5a4c6076: ZERO-2764: Add case-warning rule to eslint-plugin-projectzero
20
+ - 64699d3: ZERO-2761: Fix invalid import for plugin module
21
+
22
+ ## 1.56.0-rc.3
23
+
24
+ ## 1.56.0-rc.2
25
+
26
+ ## 1.56.0-rc.1
27
+
28
+ ## 1.56.0-rc.0
29
+
30
+ ### Minor Changes
31
+
32
+ - 4d64ef7e: ZERO-2611: Add check-sentry-options rule to eslint-plugin-projectzero
33
+ - 5a4c6076: ZERO-2764: Add case-warning rule to eslint-plugin-projectzero
34
+ - 64699d3f: ZERO-2761: Fix invalid import for plugin module
12
35
 
13
36
  ## 1.55.0
14
37
 
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("@typescript-eslint/utils");
4
+ exports.default = utils_1.ESLintUtils.RuleCreator.withoutDocs({
5
+ create(context) {
6
+ return {
7
+ CallExpression(node) {
8
+ if (node.callee.type === 'MemberExpression' &&
9
+ node.callee.property.type === 'Identifier' &&
10
+ (node.callee.property.name === 'toLocaleUpperCase' ||
11
+ node.callee.property.name === 'toLocaleLowerCase')) {
12
+ const args = node.arguments;
13
+ if (args.length === 0) {
14
+ context.report({
15
+ node,
16
+ messageId: 'noLocale'
17
+ });
18
+ }
19
+ }
20
+ }
21
+ };
22
+ },
23
+ meta: {
24
+ messages: {
25
+ noLocale: 'toLocaleUpperCase() or toLocaleLowerCase() should specify a locale for consistent behavior across different environments.'
26
+ },
27
+ type: 'problem',
28
+ fixable: 'code',
29
+ schema: []
30
+ },
31
+ defaultOptions: []
32
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@akinon/eslint-plugin-projectzero",
3
- "version": "1.58.0",
3
+ "version": "1.59.0-rc.0",
4
4
  "private": false,
5
5
  "description": "ESLint plugin for Project Zero Next",
6
6
  "main": "dist/index.js",
@@ -0,0 +1,39 @@
1
+ import { ESLintUtils } from '@typescript-eslint/utils';
2
+ import { TSESTree } from '@typescript-eslint/types';
3
+
4
+ type MessageIds = 'noLocale';
5
+ type Options = readonly [];
6
+
7
+ export default ESLintUtils.RuleCreator.withoutDocs<Options, MessageIds>({
8
+ create(context) {
9
+ return {
10
+ CallExpression(node: TSESTree.CallExpression) {
11
+ if (
12
+ node.callee.type === 'MemberExpression' &&
13
+ node.callee.property.type === 'Identifier' &&
14
+ (node.callee.property.name === 'toLocaleUpperCase' ||
15
+ node.callee.property.name === 'toLocaleLowerCase')
16
+ ) {
17
+ const args = node.arguments;
18
+
19
+ if (args.length === 0) {
20
+ context.report({
21
+ node,
22
+ messageId: 'noLocale'
23
+ });
24
+ }
25
+ }
26
+ }
27
+ };
28
+ },
29
+ meta: {
30
+ messages: {
31
+ noLocale:
32
+ 'toLocaleUpperCase() or toLocaleLowerCase() should specify a locale for consistent behavior across different environments.'
33
+ },
34
+ type: 'problem',
35
+ fixable: 'code',
36
+ schema: []
37
+ },
38
+ defaultOptions: []
39
+ });