@elliemae/pui-cli 9.0.0-alpha.2 → 9.0.0-alpha.4

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.
@@ -11,8 +11,8 @@ import tseslint from 'typescript-eslint';
11
11
  import {
12
12
  jestRecommendedRules,
13
13
  sharedCoreRules,
14
- storybookFiles,
15
14
  testFiles,
15
+ testFixtureFiles,
16
16
  testJsxFiles,
17
17
  testingLibraryDomRules,
18
18
  testingLibraryReactRules,
@@ -25,6 +25,7 @@ import {
25
25
  jsRules,
26
26
  typescriptRules,
27
27
  typescriptStrictRules,
28
+ testFixtureRelaxedRules,
28
29
  typescriptTestRelaxedRules,
29
30
  } from './rules.mjs';
30
31
 
@@ -114,6 +115,10 @@ export function createBaseFlatConfigs(tsRules) {
114
115
  'testing-library/no-node-access': 'off',
115
116
  },
116
117
  },
118
+ {
119
+ files: testFixtureFiles,
120
+ rules: testFixtureRelaxedRules,
121
+ },
117
122
  {
118
123
  files: wdioSpecFiles,
119
124
  plugins: { wdio, jest },
@@ -135,10 +140,6 @@ export function createBaseFlatConfigs(tsRules) {
135
140
  complexity: 'off',
136
141
  },
137
142
  },
138
- {
139
- files: storybookFiles,
140
- rules: { 'import-x/no-extraneous-dependencies': 'off' },
141
- },
142
143
  {
143
144
  files: ['**/lint-config/**'],
144
145
  rules: {
@@ -16,5 +16,6 @@ export {
16
16
  export {
17
17
  storybookFiles,
18
18
  testFiles,
19
+ testFixtureFiles,
19
20
  testJsxFiles,
20
21
  } from './presets.mjs';
@@ -12,11 +12,26 @@ import storybook from 'eslint-plugin-storybook';
12
12
  import testingLibrary from 'eslint-plugin-testing-library';
13
13
  import wdio from 'eslint-plugin-wdio';
14
14
 
15
+ /** Application and integration tests (Jest + relaxed type-checked rules). */
15
16
  export const testFiles = [
16
17
  '**/*.{test,spec}.{js,jsx,ts,tsx}',
17
18
  '**/__tests__/**',
18
19
  '**/lib/testing/**',
19
20
  '**/mocks/**',
21
+ // PUI libs/apps co-locate tests under lib/ (e.g. pui-app-sdk, pui-app-loader).
22
+ 'lib/**/tests/**',
23
+ 'app/**/tests/**',
24
+ ];
25
+
26
+ /**
27
+ * Generated or vendored JS under test trees (checksum bundles, MSW endpoints, pinned assets).
28
+ * Not maintained source — relax structural rules only.
29
+ */
30
+ export const testFixtureFiles = [
31
+ '**/*.checksum*.js',
32
+ '**/*.endpoint.js',
33
+ '**/tests/**/latest/*.{js,cjs,mjs}',
34
+ '**/tests/**/[0-9]*.[0-9]*/*.{js,cjs,mjs}',
20
35
  ];
21
36
 
22
37
  export const testJsxFiles = ['**/*.{test,spec}.{jsx,tsx}'];
@@ -25,6 +40,7 @@ export const wdioSpecFiles = [
25
40
  '**/*.func.spec.js',
26
41
  '**/*.visual.spec.js',
27
42
  '**/*e2e*.{js,ts}',
43
+ '**/e2e/**',
28
44
  ];
29
45
 
30
46
  export const storybookFiles = [
@@ -6,23 +6,8 @@ export const baseRules = {
6
6
  'import-x/imports-first': 'off',
7
7
  'import-x/newline-after-import': 'off',
8
8
  'import-x/no-dynamic-require': 'off',
9
- 'import-x/no-extraneous-dependencies': [
10
- 'error',
11
- {
12
- devDependencies: [
13
- '**/*.{test,spec,stories}.{js,jsx,ts,tsx}',
14
- '**/.storybook/**',
15
- '**/eslint.config.{mjs,cjs,js}',
16
- '**/*.{config,conf}.{ts,js,cjs,mjs}',
17
- '**/scripts/**',
18
- '**/ci_cd/**',
19
- '**/lint-config/**',
20
- '**/lib/testing/**',
21
- '**/lib/transpile/**',
22
- '**/mocks/**',
23
- ],
24
- },
25
- ],
9
+ // Off — legacy parity; PUI apps import via @elliemae/app-react-dependencies (not direct package.json entries).
10
+ 'import-x/no-extraneous-dependencies': 'off',
26
11
  'import-x/no-named-as-default': 'off',
27
12
  'import-x/no-unresolved': [
28
13
  'error',
@@ -64,6 +49,22 @@ export const typescriptTestRelaxedRules = {
64
49
  '@typescript-eslint/no-unsafe-argument': 'off',
65
50
  '@typescript-eslint/no-unsafe-return': 'off',
66
51
  '@typescript-eslint/unbound-method': 'off',
52
+ '@typescript-eslint/no-unsafe-declaration-merging': 'off',
53
+ '@typescript-eslint/no-unsafe-enum-comparison': 'off',
54
+ '@typescript-eslint/await-thenable': 'off',
55
+ '@typescript-eslint/prefer-promise-reject-errors': 'off',
56
+ 'no-constant-binary-expression': 'off',
57
+ 'valid-typeof': 'off',
58
+ 'prefer-const': 'off',
59
+ };
60
+
61
+ /** Relaxed core rules for generated test fixture JS (checksum mocks, etc.). */
62
+ export const testFixtureRelaxedRules = {
63
+ 'no-unused-vars': 'off',
64
+ 'no-console': 'off',
65
+ 'max-lines': 'off',
66
+ 'max-statements': 'off',
67
+ complexity: 'off',
67
68
  };
68
69
 
69
70
  export const jsRules = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/pui-cli",
3
- "version": "9.0.0-alpha.2",
3
+ "version": "9.0.0-alpha.4",
4
4
  "description": "ICE MT UI Platform CLI",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/cjs/index.cjs",