@simplysm/lint 13.0.100 → 14.0.1

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.
@@ -1,14 +1,11 @@
1
1
  import noHardPrivate from "./rules/no-hard-private.js";
2
2
  import noSubpathImportsFromSimplysm from "./rules/no-subpath-imports-from-simplysm.js";
3
3
  import tsNoThrowNotImplementedError from "./rules/ts-no-throw-not-implemented-error.js";
4
- var eslint_plugin_default = {
5
- rules: {
6
- "no-hard-private": noHardPrivate,
7
- "no-subpath-imports-from-simplysm": noSubpathImportsFromSimplysm,
8
- "ts-no-throw-not-implemented-error": tsNoThrowNotImplementedError
9
- }
4
+ export default {
5
+ rules: {
6
+ "no-hard-private": noHardPrivate,
7
+ "no-subpath-imports-from-simplysm": noSubpathImportsFromSimplysm,
8
+ "ts-no-throw-not-implemented-error": tsNoThrowNotImplementedError,
9
+ },
10
10
  };
11
- export {
12
- eslint_plugin_default as default
13
- };
14
- //# sourceMappingURL=eslint-plugin.js.map
11
+ //# sourceMappingURL=eslint-plugin.js.map
@@ -1,6 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/eslint-plugin.ts"],
4
- "mappings": "AAAA,OAAO,mBAAmB;AAC1B,OAAO,kCAAkC;AACzC,OAAO,kCAAkC;AAEzC,IAAO,wBAAQ;AAAA,EACb,OAAO;AAAA,IACL,mBAAmB;AAAA,IACnB,oCAAoC;AAAA,IACpC,qCAAqC;AAAA,EACvC;AACF;",
5
- "names": []
6
- }
1
+ {"version":3,"file":"eslint-plugin.js","sourceRoot":"","sources":["../src/eslint-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,yBAAyB,CAAC;AACpD,OAAO,4BAA4B,MAAM,0CAA0C,CAAC;AACpF,OAAO,4BAA4B,MAAM,2CAA2C,CAAC;AAErF,eAAe;IACb,KAAK,EAAE;QACL,iBAAiB,EAAE,aAAa;QAChC,kCAAkC,EAAE,4BAA4B;QAChE,mCAAmC,EAAE,4BAA4B;KAClE;CACF,CAAC"}
@@ -1,3 +1,4 @@
1
- declare const _default: import("eslint/config").Config[];
1
+ import { type FlatConfig } from "typescript-eslint";
2
+ declare const _default: FlatConfig.ConfigArray;
2
3
  export default _default;
3
4
  //# sourceMappingURL=eslint-recommended.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"eslint-recommended.d.ts","sourceRoot":"","sources":["../src/eslint-recommended.ts"],"names":[],"mappings":";AA+EA,wBA6MG"}
1
+ {"version":3,"file":"eslint-recommended.d.ts","sourceRoot":"","sources":["../src/eslint-recommended.ts"],"names":[],"mappings":"AAAA,OAAiB,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;;AA2D9D,wBA0IE"}
@@ -1,273 +1,176 @@
1
- import globals from "globals";
2
1
  import tseslint, {} from "typescript-eslint";
2
+ import angular from "angular-eslint";
3
3
  import plugin from "./eslint-plugin.js";
4
4
  import importPlugin from "eslint-plugin-import";
5
5
  import unusedImportsPlugin from "eslint-plugin-unused-imports";
6
- import solidPlugin from "eslint-plugin-solid";
7
- import tailwindcssPlugin from "eslint-plugin-tailwindcss";
8
- import { defineConfig, globalIgnores } from "eslint/config";
9
6
  import { ESLint } from "eslint";
10
7
  import { fileURLToPath } from "url";
11
8
  const commonRules = {
12
- "no-console": "error",
13
- "no-warning-comments": "warn",
14
- "eqeqeq": ["error", "always", { null: "ignore" }],
15
- "no-self-compare": "error",
16
- "array-callback-return": "error"
9
+ "no-console": "error",
10
+ "no-warning-comments": "warn",
11
+ "eqeqeq": ["error", "always", { null: "ignore" }],
12
+ "no-self-compare": "error",
13
+ "array-callback-return": "error",
17
14
  };
18
15
  const noNodeBuiltinsRules = {
19
- "no-restricted-globals": [
20
- "error",
21
- {
22
- name: "Buffer",
23
- message: "Use Uint8Array. For complex operations, use BytesUtils from @simplysm/core-common."
24
- }
25
- ],
26
- "no-restricted-imports": [
27
- "error",
28
- {
29
- paths: [
16
+ "no-restricted-globals": [
17
+ "error",
30
18
  {
31
- name: "buffer",
32
- message: "Use Uint8Array. For complex operations, use BytesUtils from @simplysm/core-common."
19
+ name: "Buffer",
20
+ message: "Uint8Array 사용하세요. 복잡한 연산에는 @simplysm/core-common의 BytesUtils를 사용하세요.",
33
21
  },
22
+ ],
23
+ "no-restricted-imports": [
24
+ "error",
34
25
  {
35
- name: "events",
36
- message: "Use EventEmitter from @simplysm/core-common."
26
+ paths: [
27
+ {
28
+ name: "buffer",
29
+ message: "Uint8Array를 사용하세요. 복잡한 연산에는 @simplysm/core-common의 BytesUtils를 사용하세요.",
30
+ },
31
+ {
32
+ name: "events",
33
+ message: "@simplysm/core-common의 EventEmitter를 사용하세요.",
34
+ },
35
+ {
36
+ name: "eventemitter3",
37
+ message: "@simplysm/core-common의 EventEmitter를 사용하세요.",
38
+ },
39
+ ],
37
40
  },
38
- {
39
- name: "eventemitter3",
40
- message: "Use EventEmitter from @simplysm/core-common."
41
- }
42
- ]
43
- }
44
- ]
41
+ ],
45
42
  };
46
43
  const unusedImportsRules = {
47
- "unused-imports/no-unused-imports": "error",
48
- "unused-imports/no-unused-vars": [
49
- "error",
50
- {
51
- vars: "all",
52
- varsIgnorePattern: "^_",
53
- args: "after-used",
54
- argsIgnorePattern: "^_"
55
- }
56
- ]
44
+ "unused-imports/no-unused-imports": "error",
45
+ "unused-imports/no-unused-vars": [
46
+ "error",
47
+ {
48
+ vars: "all",
49
+ varsIgnorePattern: "^_",
50
+ args: "after-used",
51
+ argsIgnorePattern: "^_",
52
+ },
53
+ ],
57
54
  };
58
- var eslint_recommended_default = defineConfig([
59
- globalIgnores([
60
- // Skip traversal itself in directory/** form
61
- "**/node_modules/**",
62
- "**/dist/**",
63
- "**/.*/**",
64
- "**/_*/**"
65
- ]),
66
- {
55
+ export default tseslint.config({
56
+ ignores: [
57
+ // directory/** 형태의 순회 자체를 건너뜀
58
+ "**/node_modules/**",
59
+ "**/dist/**",
60
+ "**/.*/**",
61
+ "**/_*/**",
62
+ ],
63
+ }, {
67
64
  languageOptions: {
68
- globals: {
69
- ...globals.node,
70
- ...globals.es2024,
71
- ...globals.browser
72
- },
73
- ecmaVersion: 2024,
74
- sourceType: "module"
75
- }
76
- },
77
- {
78
- files: ["**/*.js", "**/*.jsx"],
65
+ ecmaVersion: 2024,
66
+ sourceType: "module",
67
+ },
68
+ }, {
69
+ files: ["**/*.js", "**/*.mjs", "**/*.cjs"],
79
70
  plugins: {
80
- "import": importPlugin,
81
- "@simplysm": plugin,
82
- "unused-imports": unusedImportsPlugin
71
+ "import": importPlugin,
72
+ "@simplysm": plugin,
73
+ "unused-imports": unusedImportsPlugin,
83
74
  },
84
75
  rules: {
85
- ...commonRules,
86
- "require-await": "error",
87
- "no-shadow": "error",
88
- "no-duplicate-imports": "error",
89
- "no-unused-expressions": "error",
90
- "no-undef": "error",
91
- ...unusedImportsRules,
92
- "import/no-extraneous-dependencies": [
93
- "error",
94
- {
95
- devDependencies: [
96
- "**/lib/**",
97
- "**/eslint.config.{js,cjs,mjs}",
98
- "**/simplysm.{js,cjs,mjs}",
99
- "**/vitest.config.{js,cjs,mjs}"
100
- ]
101
- }
102
- ],
103
- // Common rules for JS/TS
104
- "@simplysm/no-subpath-imports-from-simplysm": "error",
105
- "@simplysm/no-hard-private": "error",
106
- ...noNodeBuiltinsRules
107
- }
108
- },
109
- {
110
- files: ["**/*.ts", "**/*.tsx"],
76
+ ...commonRules,
77
+ "require-await": "error",
78
+ "no-shadow": "error",
79
+ "no-duplicate-imports": "error",
80
+ "no-unused-expressions": "error",
81
+ "no-undef": "error",
82
+ ...unusedImportsRules,
83
+ "import/no-extraneous-dependencies": [
84
+ "error",
85
+ {
86
+ devDependencies: [
87
+ "**/lib/**",
88
+ "**/eslint.config.{js,cjs,mjs}",
89
+ "**/simplysm.{js,cjs,mjs}",
90
+ "**/vitest.config.{js,cjs,mjs}",
91
+ ],
92
+ },
93
+ ],
94
+ // JS/TS 공통 규칙
95
+ "@simplysm/no-subpath-imports-from-simplysm": "error",
96
+ "@simplysm/no-hard-private": "error",
97
+ ...noNodeBuiltinsRules,
98
+ },
99
+ }, ...angular.configs.tsRecommended, {
100
+ files: ["**/*.ts"],
101
+ processor: angular.processInlineTemplates,
111
102
  plugins: {
112
- "@typescript-eslint": tseslint.plugin,
113
- "@simplysm": plugin,
114
- "import": importPlugin,
115
- "unused-imports": unusedImportsPlugin
103
+ "@typescript-eslint": tseslint.plugin,
104
+ "@simplysm": plugin,
105
+ "import": importPlugin,
106
+ "unused-imports": unusedImportsPlugin,
116
107
  },
117
108
  settings: {
118
- "import/resolver": {
119
- [fileURLToPath(import.meta.resolve("eslint-import-resolver-typescript"))]: {
120
- alwaysTryTypes: true
121
- }
122
- }
109
+ "import/resolver": {
110
+ [fileURLToPath(import.meta.resolve("eslint-import-resolver-typescript"))]: {
111
+ alwaysTryTypes: true,
112
+ },
113
+ },
123
114
  },
124
115
  languageOptions: {
125
- parser: tseslint.parser,
126
- parserOptions: {
127
- project: true
128
- }
116
+ parser: tseslint.parser,
117
+ parserOptions: {
118
+ project: true,
119
+ },
129
120
  },
130
121
  rules: {
131
- ...commonRules,
132
- "@typescript-eslint/require-await": "error",
133
- "@typescript-eslint/await-thenable": "error",
134
- "@typescript-eslint/return-await": ["error", "in-try-catch"],
135
- "@typescript-eslint/no-floating-promises": "error",
136
- "@typescript-eslint/no-shadow": "error",
137
- "@typescript-eslint/no-unnecessary-condition": [
138
- "error",
139
- { allowConstantLoopConditions: true }
140
- ],
141
- "@typescript-eslint/no-unnecessary-type-assertion": "error",
142
- // "@typescript-eslint/non-nullable-type-assertion-style": "error",
143
- "@typescript-eslint/prefer-reduce-type-parameter": "error",
144
- "@typescript-eslint/prefer-return-this-type": "error",
145
- "@typescript-eslint/no-unused-expressions": "error",
146
- "@typescript-eslint/strict-boolean-expressions": [
147
- "error",
148
- {
149
- allowNullableBoolean: true,
150
- allowNullableObject: true
151
- }
152
- ],
153
- "@typescript-eslint/ban-ts-comment": [
154
- "error",
155
- {
156
- "ts-expect-error": "allow-with-description",
157
- "minimumDescriptionLength": 3
158
- }
159
- ],
160
- "@typescript-eslint/prefer-readonly": "error",
161
- // Prevent mistakes: passing async function to void callback (prevent error loss)
162
- // - arguments: false → allow socket.on("event", async () => {}) (handled with internal try-catch)
163
- // - attributes: false allow JSX event handlers (SolidJS compatible)
164
- "@typescript-eslint/no-misused-promises": [
165
- "error",
166
- { checksVoidReturn: { arguments: false, attributes: false } }
167
- ],
168
- // Prevent mistakes: throwing non-Error objects (prevent stack trace loss)
169
- "@typescript-eslint/only-throw-error": "error",
170
- // Prevent mistakes: using delete on arrays (prevent sparse array bugs)
171
- "@typescript-eslint/no-array-delete": "error",
172
- "@simplysm/no-hard-private": "error",
173
- "@simplysm/no-subpath-imports-from-simplysm": "error",
174
- "@simplysm/ts-no-throw-not-implemented-error": "warn",
175
- ...unusedImportsRules,
176
- ...noNodeBuiltinsRules,
177
- "import/no-extraneous-dependencies": [
178
- "error",
179
- {
180
- devDependencies: [
181
- "**/lib/**",
182
- "**/eslint.config.ts",
183
- "**/simplysm.ts",
184
- "**/vitest.config.ts",
185
- "**/vitest-e2e.config.ts",
186
- "**/vitest.setup.ts",
187
- "**/vitest.setup.ts"
188
- ]
189
- }
190
- ]
191
- }
192
- },
193
- // Test folders: allow root devDependencies (vitest, etc.)
194
- {
195
- files: [
196
- "**/tests/**/*.ts",
197
- "**/tests/**/*.tsx",
198
- "**/tests-e2e/**/*.ts",
199
- "**/tests-e2e/**/*.tsx"
200
- ],
201
- rules: {
202
- "no-console": "off",
203
- "import/no-extraneous-dependencies": "off",
204
- "@simplysm/ts-no-throw-not-implemented-error": "off"
205
- }
206
- },
207
- // SolidJS TSX files: explicitly configure all rules (error)
208
- {
209
- files: ["**/*.ts", "**/*.tsx"],
210
- plugins: {
211
- solid: solidPlugin,
212
- tailwindcss: tailwindcssPlugin
213
- },
214
- settings: {
215
- tailwindcss: {
216
- // Support template literal tags: recognize clsx`py-0.5 px-1.5` form
217
- tags: ["clsx"]
218
- }
122
+ ...commonRules,
123
+ "@typescript-eslint/require-await": "error",
124
+ "@typescript-eslint/await-thenable": "error",
125
+ "@typescript-eslint/return-await": ["error", "in-try-catch"],
126
+ "@typescript-eslint/no-floating-promises": "error",
127
+ "@typescript-eslint/no-shadow": "error",
128
+ "@typescript-eslint/no-unnecessary-condition": [
129
+ "error",
130
+ { allowConstantLoopConditions: true },
131
+ ],
132
+ "@typescript-eslint/no-unnecessary-type-assertion": "error",
133
+ // "@typescript-eslint/non-nullable-type-assertion-style": "error",
134
+ "@typescript-eslint/prefer-reduce-type-parameter": "error",
135
+ "@typescript-eslint/prefer-return-this-type": "error",
136
+ "@typescript-eslint/no-unused-expressions": "error",
137
+ "@typescript-eslint/strict-boolean-expressions": [
138
+ "error",
139
+ {
140
+ allowNullableBoolean: true,
141
+ allowNullableObject: true,
142
+ },
143
+ ],
144
+ "@typescript-eslint/ban-ts-comment": [
145
+ "error",
146
+ {
147
+ "ts-expect-error": "allow-with-description",
148
+ "minimumDescriptionLength": 3,
149
+ },
150
+ ],
151
+ "@typescript-eslint/prefer-readonly": "error",
152
+ "@typescript-eslint/no-misused-promises": [
153
+ "error",
154
+ { checksVoidReturn: { arguments: false } },
155
+ ],
156
+ "@typescript-eslint/only-throw-error": "error",
157
+ "@typescript-eslint/no-array-delete": "error",
158
+ "@simplysm/no-hard-private": "error",
159
+ "@simplysm/no-subpath-imports-from-simplysm": "error",
160
+ "@simplysm/ts-no-throw-not-implemented-error": "warn",
161
+ ...unusedImportsRules,
162
+ ...noNodeBuiltinsRules,
163
+ "import/no-extraneous-dependencies": "error",
219
164
  },
165
+ }, {
166
+ files: ["**/*.html"],
167
+ extends: [...angular.configs.templateRecommended, ...angular.configs.templateAccessibility],
168
+ }, {
169
+ files: ["**/tests/**/*.ts"],
220
170
  rules: {
221
- // ─── Prevent mistakes ───
222
- "solid/reactivity": "off",
223
- "solid/no-destructure": "error",
224
- // Props destructuring → reactivity loss
225
- "solid/components-return-once": "error",
226
- // early return → bugs
227
- "solid/jsx-no-duplicate-props": "error",
228
- // Duplicate props
229
- "solid/jsx-no-undef": ["error", { typescriptEnabled: true }],
230
- // Undefined variables
231
- "solid/no-react-deps": "error",
232
- // React dependency array mistakes
233
- "solid/no-react-specific-props": "error",
234
- // React props mistakes (className, etc.)
235
- // ─── Security ───
236
- "solid/no-innerhtml": "error",
237
- // Prevent XSS
238
- "solid/jsx-no-script-url": "error",
239
- // Prevent javascript: URLs
240
- // ─── Tooling support ───
241
- "solid/jsx-uses-vars": "error",
242
- // Prevent false positives in unused import detection
243
- // ─── Conventions ───
244
- "solid/prefer-for": "error",
245
- // Recommend For component
246
- "solid/event-handlers": "error",
247
- // Event handler naming
248
- "solid/imports": "error",
249
- // Import consistency
250
- "solid/style-prop": "error",
251
- // style prop format
252
- "solid/self-closing-comp": "error",
253
- // Self-closing tags
254
- // ─── Tailwind CSS ───
255
- "tailwindcss/classnames-order": "warn",
256
- // Auto-sort class order
257
- "tailwindcss/enforces-negative-arbitrary-values": "error",
258
- // Unify negative arbitrary value format
259
- "tailwindcss/enforces-shorthand": "error",
260
- // Recommend shorthand usage
261
- "tailwindcss/no-contradicting-classname": "error",
262
- // Prohibit conflicting classes (p-2 p-4, etc.)
263
- "tailwindcss/no-custom-classname": "error",
264
- // Prohibit custom classes not in Tailwind
265
- "tailwindcss/no-unnecessary-arbitrary-value": "error"
266
- // Prohibit unnecessary arbitrary values
267
- }
268
- }
269
- ]);
270
- export {
271
- eslint_recommended_default as default
272
- };
273
- //# sourceMappingURL=eslint-recommended.js.map
171
+ "no-console": "off",
172
+ "import/no-extraneous-dependencies": "off",
173
+ "@simplysm/ts-no-throw-not-implemented-error": "off",
174
+ },
175
+ });
176
+ //# sourceMappingURL=eslint-recommended.js.map
@@ -1,6 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/eslint-recommended.ts"],
4
- "mappings": "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",
5
- "names": []
6
- }
1
+ {"version":3,"file":"eslint-recommended.js","sourceRoot":"","sources":["../src/eslint-recommended.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  /**
2
- * ESLint rule that restricts ECMAScript private fields (`#field`) and enforces TypeScript `private` keyword usage.
2
+ * ECMAScript private 필드(`#field`) 제한하고 TypeScript `private` 키워드 사용을 강제하는 ESLint 규칙.
3
3
  *
4
4
  * @remarks
5
- * This rule checks:
6
- * - Class field declarations: `#field`
7
- * - Class method declarations: `#method()`
8
- * - Class accessor declarations: `accessor #field`
9
- * - Member access expressions: `this.#field`
5
+ * 규칙이 검사하는 항목:
6
+ * - 클래스 필드 선언: `#field`
7
+ * - 클래스 메서드 선언: `#method()`
8
+ * - 클래스 접근자 선언: `accessor #field`
9
+ * - 멤버 접근 표현식: `this.#field`
10
10
  */
11
11
  declare const _default: import("@typescript-eslint/utils/ts-eslint").RuleModule<"preferSoftPrivate" | "nameConflict", [], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener> & {
12
12
  name: string;