@elliemae/pui-cli 8.62.1 → 9.0.0-alpha.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.
- package/README.md +33 -0
- package/dist/cjs/commands/test.js +0 -1
- package/dist/cjs/commands/utils.js +4 -4
- package/dist/cjs/commands/vitest.js +0 -1
- package/dist/cjs/index.cjs +12 -0
- package/dist/cjs/index.js +6 -0
- package/dist/cjs/lint-config/eslint/common.cjs +1 -1
- package/dist/cjs/lint-config/eslint/flat/common.mjs +167 -0
- package/dist/cjs/lint-config/eslint/flat/index.mjs +20 -0
- package/dist/cjs/lint-config/eslint/flat/non-react-export.mjs +10 -0
- package/dist/cjs/lint-config/eslint/flat/non-react.mjs +6 -0
- package/dist/cjs/lint-config/eslint/flat/presets.mjs +78 -0
- package/dist/cjs/lint-config/eslint/flat/react-export.mjs +7 -0
- package/dist/cjs/lint-config/eslint/flat/react.mjs +60 -0
- package/dist/cjs/lint-config/eslint/flat/rules.mjs +185 -0
- package/dist/cjs/lint-config/eslint/typescript/non-react.cjs +1 -1
- package/dist/cjs/lint-config/eslint/typescript/react.cjs +1 -1
- package/dist/cjs/monorepo/utils.cjs +2 -2
- package/dist/cjs/monorepo/utils.js +1 -1
- package/dist/cjs/testing/jest.config.cjs +5 -9
- package/dist/cjs/testing/resolver.cjs +1 -1
- package/dist/cjs/testing/setup-react-env.js +1 -1
- package/dist/cjs/transpile/esbuild.js +1 -1
- package/dist/cjs/webpack/csp-plugin.js +2 -4
- package/dist/cjs/webpack/prop-types-shim.js +0 -1
- package/dist/cjs/webpack/webpack.lib.base.babel.js +0 -8
- package/dist/esm/commands/test.js +0 -1
- package/dist/esm/commands/utils.js +4 -4
- package/dist/esm/commands/vitest.js +0 -1
- package/dist/esm/index.cjs +12 -0
- package/dist/esm/index.js +12 -0
- package/dist/esm/lint-config/eslint/common.cjs +1 -1
- package/dist/esm/lint-config/eslint/flat/common.mjs +167 -0
- package/dist/esm/lint-config/eslint/flat/index.mjs +20 -0
- package/dist/esm/lint-config/eslint/flat/non-react-export.mjs +10 -0
- package/dist/esm/lint-config/eslint/flat/non-react.mjs +6 -0
- package/dist/esm/lint-config/eslint/flat/presets.mjs +78 -0
- package/dist/esm/lint-config/eslint/flat/react-export.mjs +7 -0
- package/dist/esm/lint-config/eslint/flat/react.mjs +60 -0
- package/dist/esm/lint-config/eslint/flat/rules.mjs +185 -0
- package/dist/esm/lint-config/eslint/typescript/non-react.cjs +1 -1
- package/dist/esm/lint-config/eslint/typescript/react.cjs +1 -1
- package/dist/esm/monorepo/utils.cjs +2 -2
- package/dist/esm/monorepo/utils.js +1 -1
- package/dist/esm/testing/jest.config.cjs +5 -9
- package/dist/esm/testing/resolver.cjs +1 -1
- package/dist/esm/testing/setup-react-env.js +1 -1
- package/dist/esm/transpile/esbuild.js +1 -1
- package/dist/esm/webpack/csp-plugin.js +2 -4
- package/dist/esm/webpack/prop-types-shim.js +0 -1
- package/dist/esm/webpack/webpack.lib.base.babel.js +0 -8
- package/dist/types/docusaurus.config.d.ts +3 -2
- package/dist/types/lib/commands/build.d.ts +1 -1
- package/dist/types/lib/commands/buildcdn.d.ts +1 -1
- package/dist/types/lib/commands/codemod.d.ts +1 -1
- package/dist/types/lib/commands/gendoc.d.ts +1 -1
- package/dist/types/lib/commands/lint.d.ts +1 -1
- package/dist/types/lib/commands/pack.d.ts +1 -1
- package/dist/types/lib/commands/start.d.ts +1 -1
- package/dist/types/lib/commands/storybook.d.ts +1 -1
- package/dist/types/lib/commands/test.d.ts +1 -1
- package/dist/types/lib/commands/tscheck.d.ts +1 -1
- package/dist/types/lib/commands/version.d.ts +1 -1
- package/dist/types/lib/commands/vitest.d.ts +1 -1
- package/dist/types/lib/index.d.cts +5 -1
- package/dist/types/lib/index.d.ts +4 -0
- package/dist/types/lib/lint-config/eslint/flat/common.d.mts +6 -0
- package/dist/types/lib/lint-config/eslint/flat/index.d.mts +6 -0
- package/dist/types/lib/lint-config/eslint/flat/non-react-export.d.mts +4 -0
- package/dist/types/lib/lint-config/eslint/flat/non-react.d.mts +3 -0
- package/dist/types/lib/lint-config/eslint/flat/presets.d.mts +63 -0
- package/dist/types/lib/lint-config/eslint/flat/react-export.d.mts +4 -0
- package/dist/types/lib/lint-config/eslint/flat/react.d.mts +4 -0
- package/dist/types/lib/lint-config/eslint/flat/rules.d.mts +358 -0
- package/dist/types/lib/server/appRoutes.d.ts +1 -1
- package/dist/types/lib/server/csp.d.ts +1 -1
- package/dist/types/lib/server/middlewares.d.ts +1 -1
- package/dist/types/lib/webpack/csp-plugin.d.ts +3 -3
- package/dist/types/lib/webpack/helpers.d.ts +1 -1
- package/dist/types/lib/webpack/interceptor-middleware.d.ts +2 -2
- package/dist/types/lib/webpack/webpack.base.babel.d.ts +1 -1
- package/dist/types/lib/webpack/webpack.lib.base.babel.d.ts +1 -1
- package/dist/types/lib/webpack/webpack.lib.prod.babel.d.ts +1 -1
- package/dist/types/lib/webpack/webpack.prod.babel.d.ts +1 -1
- package/dist/types/lib/webpack/webpack.storybook.d.ts +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/lib/lint-config/commitlint.config.cjs +1 -0
- package/lib/lint-config/eslint/common.cjs +164 -0
- package/lib/lint-config/eslint/flat/common.mjs +167 -0
- package/lib/lint-config/eslint/flat/index.mjs +20 -0
- package/lib/lint-config/eslint/flat/non-react-export.mjs +10 -0
- package/lib/lint-config/eslint/flat/non-react.mjs +6 -0
- package/lib/lint-config/eslint/flat/presets.mjs +78 -0
- package/lib/lint-config/eslint/flat/react-export.mjs +7 -0
- package/lib/lint-config/eslint/flat/react.mjs +60 -0
- package/lib/lint-config/eslint/flat/rules.mjs +185 -0
- package/lib/lint-config/eslint/non-react.cjs +14 -0
- package/lib/lint-config/eslint/react.cjs +26 -0
- package/lib/lint-config/eslint/typescript/common.cjs +49 -0
- package/lib/lint-config/eslint/typescript/non-react.cjs +12 -0
- package/lib/lint-config/eslint/typescript/react.cjs +19 -0
- package/lib/lint-config/lint-staged.config.js +15 -0
- package/lib/lint-config/prettier.config.cjs +8 -0
- package/lib/lint-config/stylelint.config.cjs +19 -0
- package/package.json +35 -28
- package/dist/cjs/testing/setup-env.js +0 -8
- package/dist/esm/testing/setup-env.js +0 -7
- package/dist/types/lib/testing/setup-env.d.ts +0 -1
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/** Shared rule sets migrated from legacy eslintrc (common.cjs + typescript/*.cjs). */
|
|
2
|
+
|
|
3
|
+
export const baseRules = {
|
|
4
|
+
'arrow-body-style': ['error', 'as-needed'],
|
|
5
|
+
'class-methods-use-this': 'off',
|
|
6
|
+
'import-x/imports-first': 'off',
|
|
7
|
+
'import-x/newline-after-import': 'off',
|
|
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
|
+
],
|
|
26
|
+
'import-x/no-named-as-default': 'off',
|
|
27
|
+
'import-x/no-unresolved': [
|
|
28
|
+
'error',
|
|
29
|
+
{ caseSensitive: true, caseSensitiveStrict: true },
|
|
30
|
+
],
|
|
31
|
+
'import-x/no-webpack-loader-syntax': 'off',
|
|
32
|
+
'import-x/prefer-default-export': 'off',
|
|
33
|
+
'import-x/default': 'off',
|
|
34
|
+
'import-x/namespace': 'off',
|
|
35
|
+
'import-x/extensions': [
|
|
36
|
+
'error',
|
|
37
|
+
'never',
|
|
38
|
+
{
|
|
39
|
+
json: 'ignorePackages',
|
|
40
|
+
js: 'ignorePackages',
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
complexity: ['error', { max: 10 }],
|
|
44
|
+
'max-depth': ['error', { max: 4 }],
|
|
45
|
+
'max-lines-per-function': 'off',
|
|
46
|
+
'max-nested-callbacks': ['error', { max: 3 }],
|
|
47
|
+
'max-params': ['error', { max: 3 }],
|
|
48
|
+
'max-statements': ['error', { max: 20 }],
|
|
49
|
+
'max-len': 'off',
|
|
50
|
+
'newline-per-chained-call': 'off',
|
|
51
|
+
'no-confusing-arrow': 'off',
|
|
52
|
+
'no-console': 'warn',
|
|
53
|
+
'no-param-reassign': ['error', { props: false }],
|
|
54
|
+
'prefer-template': 'error',
|
|
55
|
+
'require-yield': 'off',
|
|
56
|
+
'eslint-comments/disable-enable-pair': 'off',
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
/** Relaxed type-checked rules for test files (shared by default and strict configs). */
|
|
60
|
+
export const typescriptTestRelaxedRules = {
|
|
61
|
+
'@typescript-eslint/no-unsafe-assignment': 'off',
|
|
62
|
+
'@typescript-eslint/no-unsafe-member-access': 'off',
|
|
63
|
+
'@typescript-eslint/no-unsafe-call': 'off',
|
|
64
|
+
'@typescript-eslint/no-unsafe-argument': 'off',
|
|
65
|
+
'@typescript-eslint/no-unsafe-return': 'off',
|
|
66
|
+
'@typescript-eslint/unbound-method': 'off',
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
export const jsRules = {
|
|
70
|
+
...baseRules,
|
|
71
|
+
'max-lines': ['error', { max: 120, skipComments: true }],
|
|
72
|
+
'no-unused-vars': 'error',
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
export const typescriptRules = {
|
|
76
|
+
...baseRules,
|
|
77
|
+
'max-lines': ['error', { max: 200, skipComments: true }],
|
|
78
|
+
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
|
79
|
+
'@typescript-eslint/explicit-function-return-type': 'off',
|
|
80
|
+
'@typescript-eslint/no-use-before-define': [
|
|
81
|
+
'error',
|
|
82
|
+
{ functions: false, classes: true, variables: true, typedefs: true },
|
|
83
|
+
],
|
|
84
|
+
'@typescript-eslint/unbound-method': ['error', { ignoreStatic: true }],
|
|
85
|
+
'@typescript-eslint/no-floating-promises': ['error', { ignoreIIFE: true }],
|
|
86
|
+
'@typescript-eslint/no-misused-promises': [
|
|
87
|
+
'error',
|
|
88
|
+
{ checksVoidReturn: { attributes: false } },
|
|
89
|
+
],
|
|
90
|
+
'@typescript-eslint/no-unsafe-assignment': 'warn',
|
|
91
|
+
'@typescript-eslint/no-unsafe-member-access': 'warn',
|
|
92
|
+
'@typescript-eslint/no-unsafe-call': 'warn',
|
|
93
|
+
'@typescript-eslint/no-unsafe-argument': 'warn',
|
|
94
|
+
'@typescript-eslint/no-unsafe-return': 'warn',
|
|
95
|
+
'@typescript-eslint/consistent-type-imports': [
|
|
96
|
+
'error',
|
|
97
|
+
{ prefer: 'type-imports', fixStyle: 'inline-type-imports' },
|
|
98
|
+
],
|
|
99
|
+
'@typescript-eslint/no-import-type-side-effects': 'error',
|
|
100
|
+
'no-unused-vars': 'off',
|
|
101
|
+
'@typescript-eslint/no-unused-vars': [
|
|
102
|
+
'error',
|
|
103
|
+
{ argsIgnorePattern: '^_', ignoreRestSiblings: true },
|
|
104
|
+
],
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
/** Stricter TypeScript rules (error on unsafe any usage). */
|
|
108
|
+
export const typescriptStrictRules = {
|
|
109
|
+
...typescriptRules,
|
|
110
|
+
'@typescript-eslint/no-unsafe-assignment': 'error',
|
|
111
|
+
'@typescript-eslint/no-unsafe-member-access': 'error',
|
|
112
|
+
'@typescript-eslint/no-unsafe-call': 'error',
|
|
113
|
+
'@typescript-eslint/no-unsafe-argument': 'error',
|
|
114
|
+
'@typescript-eslint/no-unsafe-return': 'error',
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
export const reactRules = {
|
|
118
|
+
'jsx-a11y/aria-props': 'error',
|
|
119
|
+
'jsx-a11y/heading-has-content': 'off',
|
|
120
|
+
'jsx-a11y/label-has-associated-control': [
|
|
121
|
+
'error',
|
|
122
|
+
{
|
|
123
|
+
controlComponents: ['Input'],
|
|
124
|
+
},
|
|
125
|
+
],
|
|
126
|
+
'jsx-a11y/label-has-for': 'off',
|
|
127
|
+
'jsx-a11y/mouse-events-have-key-events': 'error',
|
|
128
|
+
'jsx-a11y/role-has-required-aria-props': 'error',
|
|
129
|
+
'jsx-a11y/role-supports-aria-props': 'error',
|
|
130
|
+
'react/destructuring-assignment': 'off',
|
|
131
|
+
'react-hooks/rules-of-hooks': 'error',
|
|
132
|
+
'react-hooks/exhaustive-deps': 'warn',
|
|
133
|
+
'react/jsx-closing-tag-location': 'off',
|
|
134
|
+
'react/forbid-prop-types': 'off',
|
|
135
|
+
'react/jsx-first-prop-new-line': ['error', 'multiline'],
|
|
136
|
+
'react/jsx-no-target-blank': 'off',
|
|
137
|
+
'react/jsx-props-no-spreading': 'off',
|
|
138
|
+
'react/jsx-uses-vars': 'error',
|
|
139
|
+
'react/require-default-props': 'off',
|
|
140
|
+
'react/require-extension': 'off',
|
|
141
|
+
'react/self-closing-comp': 'off',
|
|
142
|
+
'react/sort-comp': 'off',
|
|
143
|
+
'react/react-in-jsx-scope': 'off',
|
|
144
|
+
'react/jsx-filename-extension': [
|
|
145
|
+
'warn',
|
|
146
|
+
{ extensions: ['.js', '.jsx', '.tsx', '.mdx'] },
|
|
147
|
+
],
|
|
148
|
+
'react/function-component-definition': [
|
|
149
|
+
'error',
|
|
150
|
+
{ namedComponents: 'arrow-function' },
|
|
151
|
+
],
|
|
152
|
+
'react/prop-types': 'off',
|
|
153
|
+
'redux-saga/no-yield-in-race': 'error',
|
|
154
|
+
'redux-saga/yield-effects': 'error',
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
/** Stricter React rules (exhaustive-deps as error). */
|
|
158
|
+
export const reactStrictRules = {
|
|
159
|
+
...reactRules,
|
|
160
|
+
'react-hooks/exhaustive-deps': 'error',
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
export const ignorePatterns = [
|
|
164
|
+
'**/build/**',
|
|
165
|
+
'**/node_modules/**',
|
|
166
|
+
'**/dist/**',
|
|
167
|
+
'**/reports/**',
|
|
168
|
+
'**/allure-report/**',
|
|
169
|
+
'**/coverage/**',
|
|
170
|
+
'**/demo/**',
|
|
171
|
+
'**/docs/**',
|
|
172
|
+
'**/docs/api/**',
|
|
173
|
+
'**/temp/**',
|
|
174
|
+
'**/.tmp/**',
|
|
175
|
+
'**/public/**',
|
|
176
|
+
'**/webroot/**',
|
|
177
|
+
'**/cdn/**',
|
|
178
|
+
'**/.docusaurus/**',
|
|
179
|
+
'**/vendor/*.js',
|
|
180
|
+
'**/.nx/**',
|
|
181
|
+
'**/pnpm-lock.yaml',
|
|
182
|
+
'**/.scannerwork/**',
|
|
183
|
+
'**/stats.json',
|
|
184
|
+
'**/jsconfig.json',
|
|
185
|
+
];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const {
|
|
2
|
+
baseExtends,
|
|
3
|
+
baseRules,
|
|
4
|
+
baseOverrides,
|
|
5
|
+
baseConfig,
|
|
6
|
+
} = require('./common.cjs');
|
|
7
|
+
const { tsConfig } = require('./typescript/non-react.cjs');
|
|
8
|
+
|
|
9
|
+
exports.esConfig = {
|
|
10
|
+
...baseConfig,
|
|
11
|
+
extends: ['airbnb-base'].concat(baseExtends),
|
|
12
|
+
rules: baseRules,
|
|
13
|
+
overrides: baseOverrides.concat([tsConfig]),
|
|
14
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const {
|
|
2
|
+
baseExtends,
|
|
3
|
+
baseRules,
|
|
4
|
+
baseOverrides,
|
|
5
|
+
baseConfig,
|
|
6
|
+
reactRules,
|
|
7
|
+
} = require('./common.cjs');
|
|
8
|
+
const { tsReactConfig } = require('./typescript/react.cjs');
|
|
9
|
+
|
|
10
|
+
exports.esReactConfig = {
|
|
11
|
+
...baseConfig,
|
|
12
|
+
extends: ['airbnb', 'airbnb/hooks', 'plugin:redux-saga/recommended'].concat(
|
|
13
|
+
baseExtends,
|
|
14
|
+
),
|
|
15
|
+
rules: {
|
|
16
|
+
...baseRules,
|
|
17
|
+
...reactRules,
|
|
18
|
+
},
|
|
19
|
+
overrides: baseOverrides.concat([
|
|
20
|
+
tsReactConfig,
|
|
21
|
+
{
|
|
22
|
+
files: '*.mdx',
|
|
23
|
+
extends: 'plugin:mdx/recommended',
|
|
24
|
+
},
|
|
25
|
+
]),
|
|
26
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
const { baseExtends, basePlugins } = require('../common.cjs');
|
|
2
|
+
|
|
3
|
+
exports.tsBaseExtends = [
|
|
4
|
+
'plugin:@typescript-eslint/recommended',
|
|
5
|
+
'plugin:import/typescript',
|
|
6
|
+
'plugin:@typescript-eslint/recommended-requiring-type-checking',
|
|
7
|
+
].concat(baseExtends);
|
|
8
|
+
|
|
9
|
+
exports.tsBaseRules = {
|
|
10
|
+
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
|
11
|
+
'@typescript-eslint/explicit-function-return-type': 'off',
|
|
12
|
+
'@typescript-eslint/no-use-before-define': [
|
|
13
|
+
'error',
|
|
14
|
+
{ functions: false, classes: true, variables: true, typedefs: true },
|
|
15
|
+
],
|
|
16
|
+
'max-lines': ['error', { max: 200, skipComments: true }],
|
|
17
|
+
'@typescript-eslint/unbound-method': [
|
|
18
|
+
'error',
|
|
19
|
+
{
|
|
20
|
+
ignoreStatic: true,
|
|
21
|
+
},
|
|
22
|
+
],
|
|
23
|
+
'@typescript-eslint/no-floating-promises': [
|
|
24
|
+
'error',
|
|
25
|
+
{
|
|
26
|
+
ignoreIIFE: true,
|
|
27
|
+
},
|
|
28
|
+
],
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
exports.tsBaseConfig = {
|
|
32
|
+
files: ['*.ts', '*.tsx'],
|
|
33
|
+
parser: '@typescript-eslint/parser',
|
|
34
|
+
plugins: ['@typescript-eslint'].concat(basePlugins),
|
|
35
|
+
parserOptions: {
|
|
36
|
+
tsconfigRootDir: process.cwd(),
|
|
37
|
+
project: true,
|
|
38
|
+
},
|
|
39
|
+
settings: {
|
|
40
|
+
'import/resolver': {
|
|
41
|
+
typescript: {
|
|
42
|
+
alwaysTryTypes: true,
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
'import/parsers': {
|
|
46
|
+
'@typescript-eslint/parser': ['.ts', '.tsx'],
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
|
|
2
|
+
const { baseRules } = require('../common.cjs');
|
|
3
|
+
const { tsBaseExtends, tsBaseRules, tsBaseConfig } = require('./common.cjs');
|
|
4
|
+
|
|
5
|
+
exports.tsConfig = {
|
|
6
|
+
...tsBaseConfig,
|
|
7
|
+
extends: ['airbnb-base', 'airbnb-typescript/base'].concat(tsBaseExtends),
|
|
8
|
+
rules: {
|
|
9
|
+
...baseRules,
|
|
10
|
+
...tsBaseRules,
|
|
11
|
+
},
|
|
12
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
|
|
2
|
+
const { baseRules, reactRules } = require('../common.cjs');
|
|
3
|
+
const { tsBaseExtends, tsBaseRules, tsBaseConfig } = require('./common.cjs');
|
|
4
|
+
|
|
5
|
+
exports.tsReactConfig = {
|
|
6
|
+
...tsBaseConfig,
|
|
7
|
+
extends: [
|
|
8
|
+
'airbnb',
|
|
9
|
+
'airbnb/hooks',
|
|
10
|
+
'plugin:redux-saga/recommended',
|
|
11
|
+
'airbnb-typescript',
|
|
12
|
+
].concat(tsBaseExtends),
|
|
13
|
+
rules: {
|
|
14
|
+
...baseRules,
|
|
15
|
+
...tsBaseRules,
|
|
16
|
+
...reactRules,
|
|
17
|
+
'react/prop-types': 0,
|
|
18
|
+
},
|
|
19
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import fs from "node:fs";
|
|
3
|
+
|
|
4
|
+
const npmClient = fs.existsSync(path.join(process.cwd(), "pnpm-lock.yaml"))
|
|
5
|
+
? "pnpm"
|
|
6
|
+
: "npm";
|
|
7
|
+
|
|
8
|
+
export const lintStagedConfig = {
|
|
9
|
+
"*.{js,ts,jsx,tsx,md,mdx,html,css,json}": ["prettier --write"],
|
|
10
|
+
"*.{ts,tsx}": [`${npmClient} run tscheck`],
|
|
11
|
+
"*.{js,ts,jsx,tsx}": [
|
|
12
|
+
`${npmClient} run lint:fix`,
|
|
13
|
+
`${npmClient} run test:staged`,
|
|
14
|
+
],
|
|
15
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
exports.stylelintConfig = {
|
|
2
|
+
ignoreFiles: [
|
|
3
|
+
"/dist/**/*",
|
|
4
|
+
"/coverage/**/*",
|
|
5
|
+
"/build/**/*",
|
|
6
|
+
"/reports/**/*",
|
|
7
|
+
"/temp/**/*",
|
|
8
|
+
"/docs/**/*",
|
|
9
|
+
"/demo/**/*",
|
|
10
|
+
"/node_modules/**/*",
|
|
11
|
+
"/vendor/**/*",
|
|
12
|
+
],
|
|
13
|
+
customSyntax: "postcss-styled-syntax",
|
|
14
|
+
extends: [
|
|
15
|
+
"stylelint-config-recommended",
|
|
16
|
+
"stylelint-config-styled-components",
|
|
17
|
+
],
|
|
18
|
+
rules: { "selector-type-no-unknown": null, "function-no-unknown": null },
|
|
19
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elliemae/pui-cli",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "9.0.0-alpha.2",
|
|
4
4
|
"description": "ICE MT UI Platform CLI",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "./dist/cjs/index.cjs",
|
|
@@ -27,11 +27,16 @@
|
|
|
27
27
|
"require": "./dist/cjs/server/appRoutes.js"
|
|
28
28
|
},
|
|
29
29
|
"./app.tsconfig.json": "./app.tsconfig.json",
|
|
30
|
-
"./library.tsconfig.json": "./library.tsconfig.json"
|
|
30
|
+
"./library.tsconfig.json": "./library.tsconfig.json",
|
|
31
|
+
"./eslint": {
|
|
32
|
+
"import": "./lib/lint-config/eslint/flat/index.mjs",
|
|
33
|
+
"default": "./lib/lint-config/eslint/flat/index.mjs"
|
|
34
|
+
}
|
|
31
35
|
},
|
|
32
36
|
"files": [
|
|
33
37
|
"dist",
|
|
34
38
|
"build",
|
|
39
|
+
"lib/lint-config",
|
|
35
40
|
"./app.tsconfig.json",
|
|
36
41
|
"./library.tsconfig.json"
|
|
37
42
|
],
|
|
@@ -40,8 +45,8 @@
|
|
|
40
45
|
"url": "https://git.elliemae.io/platform-ui/pui-cli.git"
|
|
41
46
|
},
|
|
42
47
|
"engines": {
|
|
43
|
-
"pnpm": ">=
|
|
44
|
-
"node": ">=
|
|
48
|
+
"pnpm": ">=11",
|
|
49
|
+
"node": ">=24"
|
|
45
50
|
},
|
|
46
51
|
"publishConfig": {
|
|
47
52
|
"access": "public"
|
|
@@ -75,6 +80,7 @@
|
|
|
75
80
|
"@commitlint/cli": "~17.8.1",
|
|
76
81
|
"@commitlint/config-conventional": "~17.8.1",
|
|
77
82
|
"@elliemae/browserslist-config-elliemae-latest-browsers": "~1.14.4",
|
|
83
|
+
"@eslint/js": "~9.39.1",
|
|
78
84
|
"@faker-js/faker": "~7.6.0",
|
|
79
85
|
"@nrwl/cli": "~15.9.7",
|
|
80
86
|
"@nrwl/tao": "~15.9.7",
|
|
@@ -94,7 +100,6 @@
|
|
|
94
100
|
"@storybook/manager-webpack5": "~6.5.16",
|
|
95
101
|
"@storybook/react": "~6.5.16",
|
|
96
102
|
"@storybook/theming": "~6.5.16",
|
|
97
|
-
"postcss-styled-syntax": "~0.7.1",
|
|
98
103
|
"@svgr/webpack": "~7.0.0",
|
|
99
104
|
"@swc/cli": "~0.8.1",
|
|
100
105
|
"@swc/core": "1.15.21",
|
|
@@ -108,12 +113,15 @@
|
|
|
108
113
|
"@types/cors": "~2.8.19",
|
|
109
114
|
"@types/dotenv-webpack": "~7.0.8",
|
|
110
115
|
"@types/duplicate-package-checker-webpack-plugin": "~2.1.5",
|
|
116
|
+
"@types/express": "~4.17.25",
|
|
111
117
|
"@types/express-serve-static-core": "~4.19.8",
|
|
112
118
|
"@types/ip": "~1.1.3",
|
|
113
119
|
"@types/jest": "~29.5.14",
|
|
114
120
|
"@types/jest-axe": "~3.5.9",
|
|
121
|
+
"@types/lodash": "~4.17.24",
|
|
122
|
+
"@types/minimist": "~1.2.5",
|
|
115
123
|
"@types/moment-locales-webpack-plugin": "~1.2.6",
|
|
116
|
-
"@types/node": "~
|
|
124
|
+
"@types/node": "~24.12.2",
|
|
117
125
|
"@types/normalize-path": "~3.0.2",
|
|
118
126
|
"@types/postcss-preset-env": "~7.7.0",
|
|
119
127
|
"@types/rimraf": "~3.0.2",
|
|
@@ -122,8 +130,8 @@
|
|
|
122
130
|
"@types/testing-library__jest-dom": "~5.14.9",
|
|
123
131
|
"@types/uuid": "~9.0.8",
|
|
124
132
|
"@types/webpack-bundle-analyzer": "~4.7.0",
|
|
125
|
-
"@
|
|
126
|
-
"@
|
|
133
|
+
"@types/ws": "~8.18.1",
|
|
134
|
+
"@types/yargs": "~17.0.35",
|
|
127
135
|
"@vitejs/plugin-react": "~4.7.0",
|
|
128
136
|
"@vitest/coverage-c8": "~0.33.0",
|
|
129
137
|
"@vitest/coverage-v8": "~0.34.6",
|
|
@@ -162,28 +170,20 @@
|
|
|
162
170
|
"esbuild": "~0.28.0",
|
|
163
171
|
"esbuild-loader": "~3.2.0",
|
|
164
172
|
"esbuild-plugin-svgr": "~1.1.0",
|
|
165
|
-
"eslint": "~
|
|
166
|
-
"eslint-config-
|
|
167
|
-
"eslint-
|
|
168
|
-
"eslint-config-airbnb-typescript": "~17.1.0",
|
|
169
|
-
"eslint-config-prettier": "~8.10.2",
|
|
170
|
-
"eslint-config-react-app": "~7.0.1",
|
|
171
|
-
"eslint-import-resolver-babel-module": "~5.3.2",
|
|
172
|
-
"eslint-import-resolver-typescript": "~3.10.1",
|
|
173
|
-
"eslint-import-resolver-webpack": "~0.13.11",
|
|
174
|
-
"eslint-plugin-compat": "~4.2.0",
|
|
173
|
+
"eslint": "~9.39.1",
|
|
174
|
+
"eslint-config-prettier": "~10.1.8",
|
|
175
|
+
"eslint-import-resolver-typescript": "~4.4.4",
|
|
175
176
|
"eslint-plugin-eslint-comments": "~3.2.0",
|
|
176
|
-
"eslint-plugin-import": "~
|
|
177
|
-
"eslint-plugin-jest": "~
|
|
178
|
-
"eslint-plugin-jsdoc": "~
|
|
177
|
+
"eslint-plugin-import-x": "~4.16.1",
|
|
178
|
+
"eslint-plugin-jest": "~29.0.1",
|
|
179
|
+
"eslint-plugin-jsdoc": "~50.8.0",
|
|
179
180
|
"eslint-plugin-jsx-a11y": "~6.10.2",
|
|
180
|
-
"eslint-plugin-mdx": "~
|
|
181
|
-
"eslint-plugin-prettier": "~4.2.5",
|
|
181
|
+
"eslint-plugin-mdx": "~3.6.2",
|
|
182
182
|
"eslint-plugin-react": "~7.37.5",
|
|
183
|
-
"eslint-plugin-react-hooks": "~
|
|
183
|
+
"eslint-plugin-react-hooks": "~5.2.0",
|
|
184
184
|
"eslint-plugin-redux-saga": "~1.3.2",
|
|
185
185
|
"eslint-plugin-storybook": "~0.12.0",
|
|
186
|
-
"eslint-plugin-testing-library": "~
|
|
186
|
+
"eslint-plugin-testing-library": "~7.4.0",
|
|
187
187
|
"eslint-plugin-wdio": "~8.37.0",
|
|
188
188
|
"execa": "~7.2.0",
|
|
189
189
|
"express": "~4.22.1",
|
|
@@ -194,6 +194,7 @@
|
|
|
194
194
|
"find-up": "~6.3.0",
|
|
195
195
|
"find-up-cli": "~5.0.0",
|
|
196
196
|
"glob": "~11.1.0",
|
|
197
|
+
"globals": "~16.5.0",
|
|
197
198
|
"happy-dom": "~12.10.3",
|
|
198
199
|
"helmet": "~8.1.0",
|
|
199
200
|
"html-loader": "~4.2.0",
|
|
@@ -213,14 +214,15 @@
|
|
|
213
214
|
"jsdoc": "~4.0.5",
|
|
214
215
|
"lerna": "~6.6.2",
|
|
215
216
|
"lint-staged": "~13.3.0",
|
|
217
|
+
"lodash": "~4.18.1",
|
|
216
218
|
"mini-css-extract-plugin": "~2.10.2",
|
|
217
219
|
"minimist": "~1.2.8",
|
|
218
220
|
"moment": "~2.30.1",
|
|
219
221
|
"moment-locales-webpack-plugin": "~1.2.0",
|
|
220
222
|
"msw": "~1.3.5",
|
|
221
|
-
"node-gyp": "~
|
|
223
|
+
"node-gyp": "~12.3.0",
|
|
222
224
|
"node-plop": "~0.32.3",
|
|
223
|
-
"nodemon": "~
|
|
225
|
+
"nodemon": "~3.1.14",
|
|
224
226
|
"normalize-path": "~3.0.0",
|
|
225
227
|
"npm-check-updates": "~17.1.18",
|
|
226
228
|
"npm-run-all": "~4.1.5",
|
|
@@ -232,6 +234,7 @@
|
|
|
232
234
|
"postcss-html": "~1.8.1",
|
|
233
235
|
"postcss-loader": "~7.3.4",
|
|
234
236
|
"postcss-preset-env": "9.6.0",
|
|
237
|
+
"postcss-styled-syntax": "~0.7.1",
|
|
235
238
|
"prettier": "~2.8.8",
|
|
236
239
|
"prisma": "~4.16.2",
|
|
237
240
|
"pug": "~3.0.4",
|
|
@@ -240,6 +243,7 @@
|
|
|
240
243
|
"react-docgen": "~5.4.3",
|
|
241
244
|
"react-refresh": "~0.18.0",
|
|
242
245
|
"react-test-renderer": "~18.3.1",
|
|
246
|
+
"regenerator-runtime": "~0.14.1",
|
|
243
247
|
"resize-observer-polyfill": "~1.5.1",
|
|
244
248
|
"resolve-typescript-plugin": "~2.0.1",
|
|
245
249
|
"rimraf": "5.0.10",
|
|
@@ -257,9 +261,10 @@
|
|
|
257
261
|
"ts-node": "~10.9.2",
|
|
258
262
|
"tsc-alias": "~1.8.16",
|
|
259
263
|
"tsconfig-paths-webpack-plugin": "~3.5.2",
|
|
260
|
-
"tsx": "~
|
|
264
|
+
"tsx": "~4.21.0",
|
|
261
265
|
"typedoc": "~0.28.19",
|
|
262
266
|
"typescript": "5.9.3",
|
|
267
|
+
"typescript-eslint": "~8.46.2",
|
|
263
268
|
"update-notifier": "~6.0.2",
|
|
264
269
|
"url-loader": "~4.1.1",
|
|
265
270
|
"uuid": "~9.0.1",
|
|
@@ -278,7 +283,9 @@
|
|
|
278
283
|
"yargs": "~17.7.2"
|
|
279
284
|
},
|
|
280
285
|
"devDependencies": {
|
|
286
|
+
"@docusaurus/types": "~3.9.2",
|
|
281
287
|
"@elliemae/pui-doc-gen": "~3.7.2",
|
|
288
|
+
"eslint-plugin-prettier": "~5.5.5",
|
|
282
289
|
"react": "~18.3.1",
|
|
283
290
|
"react-dom": "~18.3.1",
|
|
284
291
|
"redux": "~4.2.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|