@lark-apaas/fullstack-presets 1.1.5-alpha.27 → 1.1.5-alpha.28

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,17 +15,6 @@ declare const _default: ({
15
15
  globals: any;
16
16
  };
17
17
  plugins: {
18
- '@lark-apaas': {
19
- rules: {
20
- 'no-nested-styled-jsx': import("eslint").Rule.RuleModule;
21
- 'require-app-container': import("eslint").Rule.RuleModule;
22
- 'no-direct-capability-api': import("eslint").Rule.RuleModule;
23
- 'require-scroll-reveal-hook': import("eslint").Rule.RuleModule;
24
- 'require-number-wrapped-count': import("eslint").Rule.RuleModule;
25
- 'require-shared-response-type': import("eslint").Rule.RuleModule;
26
- 'require-shared-request-type': import("eslint").Rule.RuleModule;
27
- };
28
- };
29
18
  'react-hooks': any;
30
19
  import: any;
31
20
  };
@@ -7,7 +7,6 @@ const tseslint = require('typescript-eslint');
7
7
  const importPlugin = require('eslint-plugin-import');
8
8
  const fs = require('fs');
9
9
  const path = require('path');
10
- const custom_eslint_rules_1 = require("../../../custom-eslint-rules");
11
10
  // 检查是否启用宽松 lint 模式
12
11
  const isLooseMode = process.env.FORCE_FRAMEWORK_LINT_LOOSE_MODE === 'true';
13
12
  // 读取项目 package.json 中的 flags 配置
@@ -114,9 +113,7 @@ const strictSyntaxRules = [
114
113
  selector: "CallExpression[callee.name='confirm']",
115
114
  },
116
115
  ];
117
- const looseSpecificPlugins = {
118
- '@lark-apaas': { rules: custom_eslint_rules_1.customRules },
119
- };
116
+ // @lark-apaas 插件现在在 index.ts 统一注册,这里不再重复
120
117
  // 宽松模式下覆盖的规则
121
118
  const looseOverrideRules = isLooseMode
122
119
  ? {
@@ -148,7 +145,6 @@ const baseConfig = {
148
145
  plugins: {
149
146
  'react-hooks': reactHooks,
150
147
  import: importPlugin,
151
- ...looseSpecificPlugins,
152
148
  },
153
149
  settings: {
154
150
  'import/resolver': {
@@ -8,17 +8,6 @@ declare const _default: {
8
8
  };
9
9
  plugins: {
10
10
  import: any;
11
- '@lark-apaas': {
12
- rules: {
13
- 'no-nested-styled-jsx': import("eslint").Rule.RuleModule;
14
- 'require-app-container': import("eslint").Rule.RuleModule;
15
- 'no-direct-capability-api': import("eslint").Rule.RuleModule;
16
- 'require-scroll-reveal-hook': import("eslint").Rule.RuleModule;
17
- 'require-number-wrapped-count': import("eslint").Rule.RuleModule;
18
- 'require-shared-response-type': import("eslint").Rule.RuleModule;
19
- 'require-shared-request-type': import("eslint").Rule.RuleModule;
20
- };
21
- };
22
11
  };
23
12
  settings: {
24
13
  'import/resolver': {
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const globals = require('globals');
4
4
  const tseslint = require('typescript-eslint');
5
5
  const importPlugin = require('eslint-plugin-import');
6
- const custom_eslint_rules_1 = require("../../../custom-eslint-rules");
7
6
  exports.default = {
8
7
  name: 'fullstack-presets/server-recommend',
9
8
  languageOptions: {
@@ -17,7 +16,6 @@ exports.default = {
17
16
  },
18
17
  plugins: {
19
18
  import: importPlugin,
20
- '@lark-apaas': { rules: custom_eslint_rules_1.customRules },
21
19
  },
22
20
  settings: {
23
21
  'import/resolver': {
@@ -14,17 +14,6 @@ export declare const eslintPresets: {
14
14
  globals: any;
15
15
  };
16
16
  plugins: {
17
- '@lark-apaas': {
18
- rules: {
19
- 'no-nested-styled-jsx': import("eslint").Rule.RuleModule;
20
- 'require-app-container': import("eslint").Rule.RuleModule;
21
- 'no-direct-capability-api': import("eslint").Rule.RuleModule;
22
- 'require-scroll-reveal-hook': import("eslint").Rule.RuleModule;
23
- 'require-number-wrapped-count': import("eslint").Rule.RuleModule;
24
- 'require-shared-response-type': import("eslint").Rule.RuleModule;
25
- 'require-shared-request-type': import("eslint").Rule.RuleModule;
26
- };
27
- };
28
17
  'react-hooks': any;
29
18
  import: any;
30
19
  };
@@ -49,9 +38,39 @@ export declare const eslintPresets: {
49
38
  })[];
50
39
  };
51
40
  } | null)[] | {
41
+ name: string;
42
+ plugins: {
43
+ '@lark-apaas': {
44
+ rules: {
45
+ 'no-nested-styled-jsx': import("eslint").Rule.RuleModule;
46
+ 'require-app-container': import("eslint").Rule.RuleModule;
47
+ 'no-direct-capability-api': import("eslint").Rule.RuleModule;
48
+ 'require-scroll-reveal-hook': import("eslint").Rule.RuleModule;
49
+ 'require-number-wrapped-count': import("eslint").Rule.RuleModule;
50
+ 'require-shared-response-type': import("eslint").Rule.RuleModule;
51
+ 'require-shared-request-type': import("eslint").Rule.RuleModule;
52
+ };
53
+ };
54
+ };
55
+ } | {
52
56
  ignores: string[];
53
57
  })[];
54
58
  server: ({
55
59
  readonly rules: Readonly<import("eslint").Linter.RulesRecord>;
56
- } | import("typescript-eslint/dist/compatibility-types").CompatibleConfig)[];
60
+ } | import("typescript-eslint/dist/compatibility-types").CompatibleConfig | {
61
+ name: string;
62
+ plugins: {
63
+ '@lark-apaas': {
64
+ rules: {
65
+ 'no-nested-styled-jsx': import("eslint").Rule.RuleModule;
66
+ 'require-app-container': import("eslint").Rule.RuleModule;
67
+ 'no-direct-capability-api': import("eslint").Rule.RuleModule;
68
+ 'require-scroll-reveal-hook': import("eslint").Rule.RuleModule;
69
+ 'require-number-wrapped-count': import("eslint").Rule.RuleModule;
70
+ 'require-shared-response-type': import("eslint").Rule.RuleModule;
71
+ 'require-shared-request-type': import("eslint").Rule.RuleModule;
72
+ };
73
+ };
74
+ };
75
+ })[];
57
76
  };
@@ -9,6 +9,7 @@ const eslint_server_1 = __importDefault(require("./eslint-server"));
9
9
  const js_1 = __importDefault(require("@eslint/js"));
10
10
  const typescript_eslint_1 = __importDefault(require("typescript-eslint"));
11
11
  const eslint_plugin_nestjs_typed_1 = __importDefault(require("@darraghor/eslint-plugin-nestjs-typed"));
12
+ const custom_eslint_rules_1 = require("../../../custom-eslint-rules");
12
13
  const testFileIgnorePatterns = [
13
14
  '**/__tests__/**',
14
15
  '**/*.test.js',
@@ -22,6 +23,13 @@ const testFileIgnorePatterns = [
22
23
  ];
23
24
  const globalIgnoreServerPatterns = ['server/database/.introspect/**', ...testFileIgnorePatterns]; // 全局 eslint server ignore
24
25
  const globalIgnoreClientPatterns = ['dist', 'node_modules', 'client/src/api/gen', ...testFileIgnorePatterns]; // 全局 eslint client Ignore
26
+ // @lark-apaas 插件只注册一次,client 和 server config 共享
27
+ const larkApaasPlugin = {
28
+ name: '@lark-apaas/plugin-registration',
29
+ plugins: {
30
+ '@lark-apaas': { rules: custom_eslint_rules_1.customRules },
31
+ },
32
+ };
25
33
  // 只导出纯净的规则配置,不包含基础配置
26
34
  // 用户需要在项目配置中自己添加基础配置(eslintJs, tseslint, nestjs 等)
27
35
  exports.eslintPresets = {
@@ -29,6 +37,7 @@ exports.eslintPresets = {
29
37
  { ignores: globalIgnoreClientPatterns },
30
38
  js_1.default.configs.recommended,
31
39
  ...typescript_eslint_1.default.configs.recommended,
40
+ larkApaasPlugin,
32
41
  eslint_client_1.default
33
42
  ],
34
43
  server: [
@@ -36,6 +45,7 @@ exports.eslintPresets = {
36
45
  js_1.default.configs.recommended,
37
46
  ...typescript_eslint_1.default.configs.recommended,
38
47
  ...eslint_plugin_nestjs_typed_1.default.configs.flatRecommended,
48
+ larkApaasPlugin,
39
49
  eslint_server_1.default
40
50
  ],
41
51
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lark-apaas/fullstack-presets",
3
- "version": "1.1.5-alpha.27",
3
+ "version": "1.1.5-alpha.28",
4
4
  "files": [
5
5
  "lib"
6
6
  ],