@elliemae/pui-cli 9.0.0-next.52 → 9.0.0-next.61
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/app.tsconfig.json +6 -3
- package/dist/cjs/babel.config.cjs +1 -1
- package/dist/cjs/build/vite.config.js +45 -0
- package/dist/cjs/cli.js +3 -1
- package/dist/cjs/commands/buildcdn.js +74 -0
- package/dist/cjs/commands/lint.js +1 -1
- package/dist/cjs/commands/test.js +0 -1
- package/dist/cjs/commands/tscheck.js +8 -1
- package/dist/cjs/commands/utils.js +8 -8
- package/dist/cjs/commands/vitest.js +0 -1
- package/dist/cjs/index.js +5 -7
- package/dist/cjs/lint-config/eslint.config.js +259 -0
- package/dist/cjs/lint-config/stylelint.config.js +1 -1
- package/dist/cjs/monorepo/utils.cjs +2 -2
- package/dist/cjs/monorepo/utils.js +1 -1
- package/dist/cjs/server/cert.js +45 -0
- package/dist/cjs/server/certs/cert.crt +25 -0
- package/dist/cjs/server/certs/cert.csr +18 -0
- package/dist/cjs/server/certs/cert.ext +7 -0
- package/dist/cjs/server/certs/cert.key +30 -0
- package/dist/cjs/server/certs/cert.pfx +0 -0
- package/dist/cjs/server/certs/rootCA.crt +24 -0
- package/dist/cjs/server/certs/rootCA.key +30 -0
- package/dist/cjs/server/certs/rootCA.srl +1 -0
- package/dist/cjs/server/csp.js +40 -29
- package/dist/cjs/server/index.js +8 -3
- package/dist/cjs/server/logger.js +5 -2
- package/dist/cjs/server/middlewares.js +2 -2
- package/dist/cjs/server/wsServer.js +7 -4
- package/dist/cjs/testing/jest.config.cjs +1 -2
- package/dist/cjs/testing/jest.polyfills.cjs +1 -1
- package/dist/cjs/testing/mocks/iframe.js +24 -0
- package/dist/cjs/testing/mocks/svg.js +0 -11
- package/dist/cjs/testing/resolver.cjs +0 -1
- package/dist/cjs/testing/vitest.config.js +1 -5
- package/dist/cjs/transpile/.swcrc +1 -0
- package/dist/cjs/utils.cjs +1 -1
- package/dist/cjs/utils.js +3 -1
- package/dist/cjs/webpack/csp-plugin.js +79 -0
- package/dist/cjs/webpack/csp.js +158 -0
- package/dist/cjs/webpack/helpers.js +14 -14
- package/dist/cjs/webpack/interceptor-middleware.js +125 -0
- package/dist/cjs/webpack/webpack.dev.babel.js +16 -4
- package/dist/cjs/webpack/webpack.lib.base.babel.js +0 -2
- package/dist/cjs/webpack/webpack.lib.prod.babel.js +3 -1
- package/dist/cjs/webpack/webpack.prod.babel.js +12 -5
- package/dist/cjs/webpack/webpack.storybook.js +1 -1
- package/dist/esm/babel.config.cjs +1 -1
- package/dist/esm/build/vite.config.js +25 -0
- package/dist/esm/cli.js +3 -1
- package/dist/esm/commands/buildcdn.js +43 -0
- package/dist/esm/commands/lint.js +1 -1
- package/dist/esm/commands/test.js +0 -1
- package/dist/esm/commands/tscheck.js +8 -1
- package/dist/esm/commands/utils.js +8 -8
- package/dist/esm/commands/vitest.js +0 -1
- package/dist/esm/index.js +2 -4
- package/dist/esm/lint-config/eslint.config.js +228 -0
- package/dist/esm/lint-config/stylelint.config.js +1 -1
- package/dist/esm/monorepo/utils.cjs +2 -2
- package/dist/esm/monorepo/utils.js +1 -1
- package/dist/esm/server/cert.js +14 -0
- package/dist/esm/server/certs/cert.crt +25 -0
- package/dist/esm/server/certs/cert.csr +18 -0
- package/dist/esm/server/certs/cert.ext +7 -0
- package/dist/esm/server/certs/cert.key +30 -0
- package/dist/esm/server/certs/cert.pfx +0 -0
- package/dist/esm/server/certs/rootCA.crt +24 -0
- package/dist/esm/server/certs/rootCA.key +30 -0
- package/dist/esm/server/certs/rootCA.srl +1 -0
- package/dist/esm/server/csp.js +40 -29
- package/dist/esm/server/index.js +8 -3
- package/dist/esm/server/logger.js +5 -2
- package/dist/esm/server/middlewares.js +2 -2
- package/dist/esm/server/wsServer.js +7 -4
- package/dist/esm/testing/jest.config.cjs +1 -2
- package/dist/esm/testing/jest.polyfills.cjs +1 -1
- package/dist/esm/testing/mocks/iframe.js +4 -0
- package/dist/esm/testing/mocks/svg.js +0 -1
- package/dist/esm/testing/resolver.cjs +0 -1
- package/dist/esm/testing/vitest.config.js +1 -4
- package/dist/esm/transpile/.swcrc +1 -0
- package/dist/esm/utils.cjs +1 -1
- package/dist/esm/utils.js +3 -1
- package/dist/esm/webpack/csp-plugin.js +49 -0
- package/dist/esm/webpack/csp.js +128 -0
- package/dist/esm/webpack/helpers.js +14 -14
- package/dist/esm/webpack/interceptor-middleware.js +105 -0
- package/dist/esm/webpack/webpack.dev.babel.js +16 -4
- package/dist/esm/webpack/webpack.lib.base.babel.js +0 -2
- package/dist/esm/webpack/webpack.lib.prod.babel.js +3 -1
- package/dist/esm/webpack/webpack.prod.babel.js +12 -5
- package/dist/esm/webpack/webpack.storybook.js +1 -1
- package/dist/types/eslint.config.d.ts +3 -0
- package/dist/types/eslint.config.d.ts.map +1 -0
- package/dist/types/lib/build/vite.config.d.ts +3 -0
- package/dist/types/lib/build/vite.config.d.ts.map +1 -0
- package/dist/types/lib/commands/build.d.ts.map +1 -1
- package/dist/types/lib/commands/buildcdn.d.ts +3 -0
- package/dist/types/lib/commands/buildcdn.d.ts.map +1 -0
- package/dist/types/lib/commands/gendoc.d.ts.map +1 -1
- package/dist/types/lib/commands/pack.d.ts.map +1 -1
- package/dist/types/lib/commands/start.d.ts.map +1 -1
- package/dist/types/lib/commands/test.d.ts.map +1 -1
- package/dist/types/lib/commands/tscheck.d.ts.map +1 -1
- package/dist/types/lib/commands/utils.d.ts +2 -1
- package/dist/types/lib/commands/utils.d.ts.map +1 -1
- package/dist/types/lib/commands/vitest.d.ts.map +1 -1
- package/dist/types/lib/index.d.ts +1 -2
- package/dist/types/lib/index.d.ts.map +1 -1
- package/dist/types/lib/lint-config/eslint.config.d.ts +3 -0
- package/dist/types/lib/lint-config/eslint.config.d.ts.map +1 -0
- package/dist/types/lib/server/cert.d.ts +5 -0
- package/dist/types/lib/server/cert.d.ts.map +1 -0
- package/dist/types/lib/server/csp.d.ts +0 -1
- package/dist/types/lib/server/csp.d.ts.map +1 -1
- package/dist/types/lib/server/logger.d.ts.map +1 -1
- package/dist/types/lib/server/wsServer.d.ts +2 -2
- package/dist/types/lib/server/wsServer.d.ts.map +1 -1
- package/dist/types/lib/testing/jest.config.d.cts +2 -1
- package/dist/types/lib/testing/jest.node.config.d.cts +2 -1
- package/dist/types/lib/testing/mocks/cssModule.d.ts.map +1 -1
- package/dist/types/lib/testing/mocks/html.d.ts.map +1 -1
- package/dist/types/lib/testing/mocks/iframe.d.ts +3 -0
- package/dist/types/lib/testing/mocks/iframe.d.ts.map +1 -0
- package/dist/types/lib/testing/mocks/image.d.ts.map +1 -1
- package/dist/types/lib/testing/mocks/svg.d.ts.map +1 -1
- package/dist/types/lib/testing/resolver.d.cts.map +1 -1
- package/dist/types/lib/testing/vitest.config.d.ts +1 -1
- package/dist/types/lib/testing/vitest.config.d.ts.map +1 -1
- package/dist/types/lib/transpile/esbuild.d.ts.map +1 -1
- package/dist/types/lib/utils.d.cts +1 -1
- package/dist/types/lib/utils.d.cts.map +1 -1
- package/dist/types/lib/utils.d.ts +2 -2
- package/dist/types/lib/utils.d.ts.map +1 -1
- package/dist/types/lib/webpack/csp-plugin.d.ts +33 -0
- package/dist/types/lib/webpack/csp-plugin.d.ts.map +1 -0
- package/dist/types/lib/webpack/csp.d.ts +66 -0
- package/dist/types/lib/webpack/csp.d.ts.map +1 -0
- package/dist/types/lib/webpack/helpers.d.ts +0 -1
- package/dist/types/lib/webpack/helpers.d.ts.map +1 -1
- package/dist/types/lib/webpack/interceptor-middleware.d.ts +11 -0
- package/dist/types/lib/webpack/interceptor-middleware.d.ts.map +1 -0
- package/dist/types/lib/webpack/webpack.base.babel.d.ts.map +1 -1
- package/dist/types/lib/webpack/webpack.dev.babel.d.ts.map +1 -1
- package/dist/types/lib/webpack/webpack.lib.base.babel.d.ts.map +1 -1
- package/dist/types/lib/webpack/webpack.lib.prod.babel.d.ts.map +1 -1
- package/dist/types/lib/webpack/webpack.prod.babel.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/library.tsconfig.json +8 -5
- package/package.json +146 -142
- package/dist/cjs/lint-config/eslint/config.js +0 -186
- package/dist/cjs/lint-config/eslint/react.js +0 -107
- package/dist/cjs/lint-config/eslint/typescript/config.js +0 -97
- package/dist/cjs/testing/setup-test-env.js +0 -6
- package/dist/esm/lint-config/eslint/config.js +0 -155
- package/dist/esm/lint-config/eslint/react.js +0 -76
- package/dist/esm/lint-config/eslint/typescript/config.js +0 -67
- package/dist/esm/testing/setup-test-env.js +0 -5
- package/dist/types/lib/lint-config/eslint/config.d.ts +0 -2
- package/dist/types/lib/lint-config/eslint/config.d.ts.map +0 -1
- package/dist/types/lib/lint-config/eslint/react.d.ts +0 -2
- package/dist/types/lib/lint-config/eslint/react.d.ts.map +0 -1
- package/dist/types/lib/lint-config/eslint/typescript/config.d.ts +0 -2
- package/dist/types/lib/lint-config/eslint/typescript/config.d.ts.map +0 -1
- package/dist/types/lib/testing/setup-test-env.d.ts +0 -2
- package/dist/types/lib/testing/setup-test-env.d.ts.map +0 -1
- package/dist/types/lib/tests/basic.test.d.ts +0 -1
- package/dist/types/lib/tests/basic.test.d.ts.map +0 -1
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __export = (target, all) => {
|
|
9
|
-
for (var name in all)
|
|
10
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
-
};
|
|
12
|
-
var __copyProps = (to, from, except, desc) => {
|
|
13
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(from))
|
|
15
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
-
mod
|
|
27
|
-
));
|
|
28
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var react_exports = {};
|
|
30
|
-
__export(react_exports, {
|
|
31
|
-
config: () => config
|
|
32
|
-
});
|
|
33
|
-
module.exports = __toCommonJS(react_exports);
|
|
34
|
-
var import_node_path = __toESM(require("node:path"));
|
|
35
|
-
var import_node_url = require("node:url");
|
|
36
|
-
var import_eslintrc = require("@eslint/eslintrc");
|
|
37
|
-
var import_config = require("./config.js");
|
|
38
|
-
var import_recommended = __toESM(require("eslint-plugin-react/configs/recommended"));
|
|
39
|
-
const import_meta = {};
|
|
40
|
-
const __filename = (0, import_node_url.fileURLToPath)(import_meta.url);
|
|
41
|
-
const __dirname = import_node_path.default.dirname(__filename);
|
|
42
|
-
const compat = new import_eslintrc.FlatCompat({
|
|
43
|
-
baseDirectory: __dirname
|
|
44
|
-
});
|
|
45
|
-
const reactRules = {
|
|
46
|
-
"jsx-a11y/aria-props": 2,
|
|
47
|
-
"jsx-a11y/heading-has-content": 0,
|
|
48
|
-
"jsx-a11y/label-has-associated-control": [
|
|
49
|
-
2,
|
|
50
|
-
{
|
|
51
|
-
// NOTE: If this error triggers, either disable it or add
|
|
52
|
-
// your custom components, labels and attributes via these options
|
|
53
|
-
// See https://github.com/evcohen/eslint-plugin-jsx-a11y/blob/master/docs/rules/label-has-associated-control.md
|
|
54
|
-
controlComponents: ["Input"]
|
|
55
|
-
}
|
|
56
|
-
],
|
|
57
|
-
"jsx-a11y/label-has-for": 0,
|
|
58
|
-
"jsx-a11y/mouse-events-have-key-events": 2,
|
|
59
|
-
"jsx-a11y/role-has-required-aria-props": 2,
|
|
60
|
-
"jsx-a11y/role-supports-aria-props": 2,
|
|
61
|
-
"react/destructuring-assignment": 0,
|
|
62
|
-
"react-hooks/rules-of-hooks": "error",
|
|
63
|
-
"react/jsx-closing-tag-location": 0,
|
|
64
|
-
"react/forbid-prop-types": 0,
|
|
65
|
-
"react/jsx-first-prop-new-line": [2, "multiline"],
|
|
66
|
-
"react/jsx-no-target-blank": 0,
|
|
67
|
-
"react/jsx-props-no-spreading": 0,
|
|
68
|
-
"react/jsx-uses-vars": 2,
|
|
69
|
-
"react/require-default-props": 0,
|
|
70
|
-
"react/require-extension": 0,
|
|
71
|
-
"react/self-closing-comp": 0,
|
|
72
|
-
"react/sort-comp": 0,
|
|
73
|
-
"react/react-in-jsx-scope": 0,
|
|
74
|
-
"react/jsx-filename-extension": [
|
|
75
|
-
1,
|
|
76
|
-
{ extensions: [".js", ".jsx", ".tsx", ".mdx"] }
|
|
77
|
-
],
|
|
78
|
-
"react/function-component-definition": [
|
|
79
|
-
2,
|
|
80
|
-
{ namedComponents: "arrow-function" }
|
|
81
|
-
],
|
|
82
|
-
"redux-saga/no-yield-in-race": 2,
|
|
83
|
-
"redux-saga/yield-effects": 2
|
|
84
|
-
};
|
|
85
|
-
const reactRecommendedConfig = {
|
|
86
|
-
...import_recommended.default,
|
|
87
|
-
languageOptions: {
|
|
88
|
-
...import_recommended.default.languageOptions
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
const addFileOverride = (configs) => configs.map((config2) => ({
|
|
92
|
-
...config2,
|
|
93
|
-
files: ["*.jsx", "*.tsx"]
|
|
94
|
-
}));
|
|
95
|
-
const config = [
|
|
96
|
-
...import_config.config,
|
|
97
|
-
...addFileOverride([
|
|
98
|
-
reactRecommendedConfig,
|
|
99
|
-
...compat.extends("plugin:react-hooks/recommended"),
|
|
100
|
-
...compat.extends("plugin:jsx-a11y/recommended"),
|
|
101
|
-
...compat.extends("plugin:redux-saga/recommended"),
|
|
102
|
-
...compat.extends("plugin:mdx/recommended"),
|
|
103
|
-
{
|
|
104
|
-
rules: reactRules
|
|
105
|
-
}
|
|
106
|
-
])
|
|
107
|
-
];
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __export = (target, all) => {
|
|
9
|
-
for (var name in all)
|
|
10
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
-
};
|
|
12
|
-
var __copyProps = (to, from, except, desc) => {
|
|
13
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(from))
|
|
15
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
-
mod
|
|
27
|
-
));
|
|
28
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var config_exports = {};
|
|
30
|
-
__export(config_exports, {
|
|
31
|
-
config: () => config
|
|
32
|
-
});
|
|
33
|
-
module.exports = __toCommonJS(config_exports);
|
|
34
|
-
var import_typescript_eslint = __toESM(require("typescript-eslint"));
|
|
35
|
-
var import_eslint_plugin_import = __toESM(require("eslint-plugin-import"));
|
|
36
|
-
const importTypedConfig = {
|
|
37
|
-
settings: {
|
|
38
|
-
"import/resolver": {
|
|
39
|
-
typescript: true,
|
|
40
|
-
node: true
|
|
41
|
-
}
|
|
42
|
-
},
|
|
43
|
-
rules: {
|
|
44
|
-
...import_eslint_plugin_import.default.configs["typescript"].rules
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
const rules = {
|
|
48
|
-
"@typescript-eslint/explicit-module-boundary-types": "off",
|
|
49
|
-
"@typescript-eslint/explicit-function-return-type": "off",
|
|
50
|
-
"@typescript-eslint/no-use-before-define": [
|
|
51
|
-
"error",
|
|
52
|
-
{ functions: false, classes: true, variables: true, typedefs: true }
|
|
53
|
-
],
|
|
54
|
-
"@typescript-eslint/unbound-method": [
|
|
55
|
-
"error",
|
|
56
|
-
{
|
|
57
|
-
ignoreStatic: true
|
|
58
|
-
}
|
|
59
|
-
],
|
|
60
|
-
"@typescript-eslint/no-floating-promises": [
|
|
61
|
-
"error",
|
|
62
|
-
{
|
|
63
|
-
ignoreIIFE: true
|
|
64
|
-
}
|
|
65
|
-
]
|
|
66
|
-
};
|
|
67
|
-
const options = {
|
|
68
|
-
languageOptions: {
|
|
69
|
-
parserOptions: {
|
|
70
|
-
tsconfigRootDir: process.cwd(),
|
|
71
|
-
project: true
|
|
72
|
-
}
|
|
73
|
-
},
|
|
74
|
-
settings: {
|
|
75
|
-
"import/resolver": {
|
|
76
|
-
typescript: {
|
|
77
|
-
alwaysTryTypes: true
|
|
78
|
-
}
|
|
79
|
-
},
|
|
80
|
-
"import/parsers": {
|
|
81
|
-
"@typescript-eslint/parser": [".ts", ".tsx"]
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
};
|
|
85
|
-
const addFileOverride = (configs) => configs.map((config2) => ({
|
|
86
|
-
...config2,
|
|
87
|
-
files: ["*.ts", "*.tsx"]
|
|
88
|
-
}));
|
|
89
|
-
const config = addFileOverride([
|
|
90
|
-
options,
|
|
91
|
-
...import_typescript_eslint.default.configs.recommendedTypeChecked,
|
|
92
|
-
...import_typescript_eslint.default.configs.stylisticTypeChecked,
|
|
93
|
-
importTypedConfig,
|
|
94
|
-
{
|
|
95
|
-
rules
|
|
96
|
-
}
|
|
97
|
-
]);
|
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
import globals from "globals";
|
|
2
|
-
import path from "node:path";
|
|
3
|
-
import { fileURLToPath } from "node:url";
|
|
4
|
-
import { FlatCompat } from "@eslint/eslintrc";
|
|
5
|
-
import js from "@eslint/js";
|
|
6
|
-
import importPlugin from "eslint-plugin-import";
|
|
7
|
-
import jest from "eslint-plugin-jest";
|
|
8
|
-
import jsdoc from "eslint-plugin-jsdoc";
|
|
9
|
-
import eslintConfigPrettier from "eslint-config-prettier";
|
|
10
|
-
import { config as tsConfig } from "./typescript/config.js";
|
|
11
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
12
|
-
const __dirname = path.dirname(__filename);
|
|
13
|
-
const compat = new FlatCompat({
|
|
14
|
-
baseDirectory: __dirname
|
|
15
|
-
});
|
|
16
|
-
const importConfig = {
|
|
17
|
-
// All eslint-plugin-import config is here
|
|
18
|
-
languageOptions: {
|
|
19
|
-
parserOptions: {
|
|
20
|
-
// Eslint doesn't supply ecmaVersion in `parser.js` `context.parserOptions`
|
|
21
|
-
// This is required to avoid ecmaVersion < 2015 error or 'import' / 'export' error
|
|
22
|
-
ecmaVersion: "latest",
|
|
23
|
-
sourceType: "module"
|
|
24
|
-
}
|
|
25
|
-
},
|
|
26
|
-
plugins: { import: importPlugin },
|
|
27
|
-
settings: {
|
|
28
|
-
// This will do the trick
|
|
29
|
-
"import/parsers": {
|
|
30
|
-
espree: [".js", ".cjs", ".mjs", ".jsx"]
|
|
31
|
-
},
|
|
32
|
-
"import/resolver": {
|
|
33
|
-
typescript: true,
|
|
34
|
-
node: true
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
rules: {
|
|
38
|
-
...importPlugin.configs["recommended"].rules
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
const e2eTestConfig = {
|
|
42
|
-
files: ["*.func.spec.js", "*.visual.spec.js"],
|
|
43
|
-
rules: {
|
|
44
|
-
"jest/valid-expect": "off"
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
const jestConfig = {
|
|
48
|
-
files: ["**/*.test.*", "**/testing/**/*.js"],
|
|
49
|
-
...jest.configs["flat/recommended"]
|
|
50
|
-
};
|
|
51
|
-
const ignores = {
|
|
52
|
-
ignores: [
|
|
53
|
-
"build/*",
|
|
54
|
-
"**/node_modules/",
|
|
55
|
-
"dist/*",
|
|
56
|
-
"reports/*",
|
|
57
|
-
"coverage/*",
|
|
58
|
-
"demo/*",
|
|
59
|
-
"docs/*",
|
|
60
|
-
"temp/*",
|
|
61
|
-
"**/vendor/*.js",
|
|
62
|
-
".docusaurus/*"
|
|
63
|
-
]
|
|
64
|
-
};
|
|
65
|
-
const options = {
|
|
66
|
-
languageOptions: {
|
|
67
|
-
ecmaVersion: "latest",
|
|
68
|
-
sourceType: "module",
|
|
69
|
-
globals: {
|
|
70
|
-
...globals.builtin,
|
|
71
|
-
...globals.browser,
|
|
72
|
-
...globals.es2021,
|
|
73
|
-
...globals.nodeBuiltin,
|
|
74
|
-
...globals.node,
|
|
75
|
-
...globals.serviceworker
|
|
76
|
-
}
|
|
77
|
-
},
|
|
78
|
-
plugins: { jsdoc },
|
|
79
|
-
settings: {
|
|
80
|
-
react: {
|
|
81
|
-
version: "detect"
|
|
82
|
-
},
|
|
83
|
-
jest: {
|
|
84
|
-
version: 28
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
const rules = {
|
|
89
|
-
"arrow-body-style": [2, "as-needed"],
|
|
90
|
-
"class-methods-use-this": 0,
|
|
91
|
-
"import/imports-first": 0,
|
|
92
|
-
"import/newline-after-import": 0,
|
|
93
|
-
"import/no-dynamic-require": 0,
|
|
94
|
-
"import/no-extraneous-dependencies": 0,
|
|
95
|
-
"import/no-named-as-default": 0,
|
|
96
|
-
"import/no-unresolved": [
|
|
97
|
-
2,
|
|
98
|
-
{ caseSensitive: true, caseSensitiveStrict: true }
|
|
99
|
-
],
|
|
100
|
-
// Tip: https://github.com/import-js/eslint-plugin-import/issues/1868
|
|
101
|
-
"import/no-webpack-loader-syntax": 0,
|
|
102
|
-
"import/prefer-default-export": 0,
|
|
103
|
-
"import/extensions": [
|
|
104
|
-
2,
|
|
105
|
-
"never",
|
|
106
|
-
{
|
|
107
|
-
json: "ignorePackages",
|
|
108
|
-
js: "ignorePackages"
|
|
109
|
-
}
|
|
110
|
-
],
|
|
111
|
-
indent: [
|
|
112
|
-
2,
|
|
113
|
-
2,
|
|
114
|
-
{
|
|
115
|
-
SwitchCase: 1
|
|
116
|
-
}
|
|
117
|
-
],
|
|
118
|
-
complexity: ["error", { max: 10 }],
|
|
119
|
-
"max-depth": ["error", { max: 4 }],
|
|
120
|
-
"max-lines-per-function": 0,
|
|
121
|
-
"max-nested-callbacks": ["error", { max: 3 }],
|
|
122
|
-
"max-params": ["error", { max: 3 }],
|
|
123
|
-
"max-statements": ["error", { max: 20 }],
|
|
124
|
-
"max-len": 0,
|
|
125
|
-
"newline-per-chained-call": 0,
|
|
126
|
-
"no-confusing-arrow": 0,
|
|
127
|
-
"no-console": 1,
|
|
128
|
-
"no-param-reassign": ["error", { props: false }],
|
|
129
|
-
"no-unused-vars": 2,
|
|
130
|
-
"no-use-before-define": 0,
|
|
131
|
-
"prefer-template": 2,
|
|
132
|
-
"require-yield": 0,
|
|
133
|
-
"jsdoc/require-jsdoc": 0,
|
|
134
|
-
"eslint-comments/disable-enable-pair": ["error", { allowWholeFile: true }]
|
|
135
|
-
};
|
|
136
|
-
const config = [
|
|
137
|
-
ignores,
|
|
138
|
-
js.configs.recommended,
|
|
139
|
-
jestConfig,
|
|
140
|
-
...compat.extends("plugin:eslint-comments/recommended"),
|
|
141
|
-
...compat.extends("plugin:wdio/recommended"),
|
|
142
|
-
...compat.extends("plugin:testing-library/dom"),
|
|
143
|
-
...compat.extends("plugin:storybook/recommended"),
|
|
144
|
-
importConfig,
|
|
145
|
-
e2eTestConfig,
|
|
146
|
-
options,
|
|
147
|
-
eslintConfigPrettier,
|
|
148
|
-
{
|
|
149
|
-
rules
|
|
150
|
-
},
|
|
151
|
-
...tsConfig
|
|
152
|
-
];
|
|
153
|
-
export {
|
|
154
|
-
config
|
|
155
|
-
};
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import { fileURLToPath } from "node:url";
|
|
3
|
-
import { FlatCompat } from "@eslint/eslintrc";
|
|
4
|
-
import { config as baseConfig } from "./config.js";
|
|
5
|
-
import reactRecommended from "eslint-plugin-react/configs/recommended";
|
|
6
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
7
|
-
const __dirname = path.dirname(__filename);
|
|
8
|
-
const compat = new FlatCompat({
|
|
9
|
-
baseDirectory: __dirname
|
|
10
|
-
});
|
|
11
|
-
const reactRules = {
|
|
12
|
-
"jsx-a11y/aria-props": 2,
|
|
13
|
-
"jsx-a11y/heading-has-content": 0,
|
|
14
|
-
"jsx-a11y/label-has-associated-control": [
|
|
15
|
-
2,
|
|
16
|
-
{
|
|
17
|
-
// NOTE: If this error triggers, either disable it or add
|
|
18
|
-
// your custom components, labels and attributes via these options
|
|
19
|
-
// See https://github.com/evcohen/eslint-plugin-jsx-a11y/blob/master/docs/rules/label-has-associated-control.md
|
|
20
|
-
controlComponents: ["Input"]
|
|
21
|
-
}
|
|
22
|
-
],
|
|
23
|
-
"jsx-a11y/label-has-for": 0,
|
|
24
|
-
"jsx-a11y/mouse-events-have-key-events": 2,
|
|
25
|
-
"jsx-a11y/role-has-required-aria-props": 2,
|
|
26
|
-
"jsx-a11y/role-supports-aria-props": 2,
|
|
27
|
-
"react/destructuring-assignment": 0,
|
|
28
|
-
"react-hooks/rules-of-hooks": "error",
|
|
29
|
-
"react/jsx-closing-tag-location": 0,
|
|
30
|
-
"react/forbid-prop-types": 0,
|
|
31
|
-
"react/jsx-first-prop-new-line": [2, "multiline"],
|
|
32
|
-
"react/jsx-no-target-blank": 0,
|
|
33
|
-
"react/jsx-props-no-spreading": 0,
|
|
34
|
-
"react/jsx-uses-vars": 2,
|
|
35
|
-
"react/require-default-props": 0,
|
|
36
|
-
"react/require-extension": 0,
|
|
37
|
-
"react/self-closing-comp": 0,
|
|
38
|
-
"react/sort-comp": 0,
|
|
39
|
-
"react/react-in-jsx-scope": 0,
|
|
40
|
-
"react/jsx-filename-extension": [
|
|
41
|
-
1,
|
|
42
|
-
{ extensions: [".js", ".jsx", ".tsx", ".mdx"] }
|
|
43
|
-
],
|
|
44
|
-
"react/function-component-definition": [
|
|
45
|
-
2,
|
|
46
|
-
{ namedComponents: "arrow-function" }
|
|
47
|
-
],
|
|
48
|
-
"redux-saga/no-yield-in-race": 2,
|
|
49
|
-
"redux-saga/yield-effects": 2
|
|
50
|
-
};
|
|
51
|
-
const reactRecommendedConfig = {
|
|
52
|
-
...reactRecommended,
|
|
53
|
-
languageOptions: {
|
|
54
|
-
...reactRecommended.languageOptions
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
const addFileOverride = (configs) => configs.map((config2) => ({
|
|
58
|
-
...config2,
|
|
59
|
-
files: ["*.jsx", "*.tsx"]
|
|
60
|
-
}));
|
|
61
|
-
const config = [
|
|
62
|
-
...baseConfig,
|
|
63
|
-
...addFileOverride([
|
|
64
|
-
reactRecommendedConfig,
|
|
65
|
-
...compat.extends("plugin:react-hooks/recommended"),
|
|
66
|
-
...compat.extends("plugin:jsx-a11y/recommended"),
|
|
67
|
-
...compat.extends("plugin:redux-saga/recommended"),
|
|
68
|
-
...compat.extends("plugin:mdx/recommended"),
|
|
69
|
-
{
|
|
70
|
-
rules: reactRules
|
|
71
|
-
}
|
|
72
|
-
])
|
|
73
|
-
];
|
|
74
|
-
export {
|
|
75
|
-
config
|
|
76
|
-
};
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import tseslint from "typescript-eslint";
|
|
2
|
-
import importPlugin from "eslint-plugin-import";
|
|
3
|
-
const importTypedConfig = {
|
|
4
|
-
settings: {
|
|
5
|
-
"import/resolver": {
|
|
6
|
-
typescript: true,
|
|
7
|
-
node: true
|
|
8
|
-
}
|
|
9
|
-
},
|
|
10
|
-
rules: {
|
|
11
|
-
...importPlugin.configs["typescript"].rules
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
const rules = {
|
|
15
|
-
"@typescript-eslint/explicit-module-boundary-types": "off",
|
|
16
|
-
"@typescript-eslint/explicit-function-return-type": "off",
|
|
17
|
-
"@typescript-eslint/no-use-before-define": [
|
|
18
|
-
"error",
|
|
19
|
-
{ functions: false, classes: true, variables: true, typedefs: true }
|
|
20
|
-
],
|
|
21
|
-
"@typescript-eslint/unbound-method": [
|
|
22
|
-
"error",
|
|
23
|
-
{
|
|
24
|
-
ignoreStatic: true
|
|
25
|
-
}
|
|
26
|
-
],
|
|
27
|
-
"@typescript-eslint/no-floating-promises": [
|
|
28
|
-
"error",
|
|
29
|
-
{
|
|
30
|
-
ignoreIIFE: true
|
|
31
|
-
}
|
|
32
|
-
]
|
|
33
|
-
};
|
|
34
|
-
const options = {
|
|
35
|
-
languageOptions: {
|
|
36
|
-
parserOptions: {
|
|
37
|
-
tsconfigRootDir: process.cwd(),
|
|
38
|
-
project: true
|
|
39
|
-
}
|
|
40
|
-
},
|
|
41
|
-
settings: {
|
|
42
|
-
"import/resolver": {
|
|
43
|
-
typescript: {
|
|
44
|
-
alwaysTryTypes: true
|
|
45
|
-
}
|
|
46
|
-
},
|
|
47
|
-
"import/parsers": {
|
|
48
|
-
"@typescript-eslint/parser": [".ts", ".tsx"]
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
const addFileOverride = (configs) => configs.map((config2) => ({
|
|
53
|
-
...config2,
|
|
54
|
-
files: ["*.ts", "*.tsx"]
|
|
55
|
-
}));
|
|
56
|
-
const config = addFileOverride([
|
|
57
|
-
options,
|
|
58
|
-
...tseslint.configs.recommendedTypeChecked,
|
|
59
|
-
...tseslint.configs.stylisticTypeChecked,
|
|
60
|
-
importTypedConfig,
|
|
61
|
-
{
|
|
62
|
-
rules
|
|
63
|
-
}
|
|
64
|
-
]);
|
|
65
|
-
export {
|
|
66
|
-
config
|
|
67
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../lib/lint-config/eslint/config.js"],"names":[],"mappings":"AAgJA,2BAgBE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../../../../lib/lint-config/eslint/react.js"],"names":[],"mappings":"AAmEA,2BAYE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../../lib/lint-config/eslint/typescript/config.js"],"names":[],"mappings":"AA6DA,yBAQG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-test-env.d.ts","sourceRoot":"","sources":["../../../../lib/testing/setup-test-env.js"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=basic.test.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"basic.test.d.ts","sourceRoot":"","sources":["../../../../lib/tests/basic.test.ts"],"names":[],"mappings":""}
|