@playcanvas/eslint-config 2.1.0 → 3.0.0-beta.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.
@@ -0,0 +1,78 @@
1
+ import eslint from '@eslint/js';
2
+ import pluginImport from 'eslint-plugin-import';
3
+ import * as pluginPackageJson from 'eslint-plugin-package-json';
4
+ import pluginPrettierRecommended from 'eslint-plugin-prettier/recommended';
5
+ import globals from 'globals';
6
+ import jsoncEslintParser from 'jsonc-eslint-parser';
7
+ import tseslint from 'typescript-eslint';
8
+ const ignoreConfig = {
9
+ ignores: ['**/node_modules', '**/dist']
10
+ };
11
+ const baseConfig = {
12
+ rules: {
13
+ curly: 'error',
14
+ 'import/order': [
15
+ 'error',
16
+ {
17
+ alphabetize: { order: 'asc', caseInsensitive: true },
18
+ 'newlines-between': 'always',
19
+ groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index', 'object']
20
+ }
21
+ ],
22
+ '@typescript-eslint/no-invalid-void-type': 'off',
23
+ '@typescript-eslint/consistent-type-definitions': ['error', 'type'],
24
+ '@typescript-eslint/no-unused-vars': [
25
+ 'error',
26
+ {
27
+ argsIgnorePattern: '^_',
28
+ varsIgnorePattern: '^_',
29
+ caughtErrorsIgnorePattern: '^_'
30
+ }
31
+ ]
32
+ },
33
+ settings: {
34
+ 'import/resolver': {
35
+ typescript: true
36
+ }
37
+ }
38
+ };
39
+ const tsFilesConfig = {
40
+ files: ['**/*.{js,mjs,ts}'],
41
+ plugins: {
42
+ '@typescript-eslint': tseslint.plugin
43
+ },
44
+ languageOptions: {
45
+ parser: tseslint.parser,
46
+ ecmaVersion: 2022,
47
+ sourceType: 'module',
48
+ globals: globals.node
49
+ },
50
+ rules: {
51
+ '@typescript-eslint/consistent-type-imports': 'error',
52
+ '@typescript-eslint/no-dynamic-delete': 'off',
53
+ '@typescript-eslint/no-non-null-assertion': 'off'
54
+ }
55
+ };
56
+ const packageJsonConfig = {
57
+ files: ['**/package.json', '**/package-lock.json'],
58
+ languageOptions: {
59
+ parser: jsoncEslintParser
60
+ },
61
+ plugins: {
62
+ 'package-json': pluginPackageJson
63
+ },
64
+ rules: pluginPackageJson.configs.recommended.rules
65
+ };
66
+ export default [
67
+ eslint.configs.recommended,
68
+ ...tseslint.configs.recommended,
69
+ ...tseslint.configs.strict,
70
+ ...tseslint.configs.stylistic,
71
+ pluginPrettierRecommended,
72
+ pluginImport.flatConfigs.recommended,
73
+ ignoreConfig,
74
+ baseConfig,
75
+ tsFilesConfig,
76
+ packageJsonConfig
77
+ ];
78
+ //# sourceMappingURL=typescript.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../src/configs/typescript.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,YAAY,CAAC;AAChC,OAAO,YAAY,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,iBAAiB,MAAM,4BAA4B,CAAC;AAChE,OAAO,yBAAyB,MAAM,oCAAoC,CAAC;AAC3E,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AAEzC,MAAM,YAAY,GAAG;IACjB,OAAO,EAAE,CAAC,iBAAiB,EAAE,SAAS,CAAC;CAC1C,CAAC;AAEF,MAAM,UAAU,GAAG;IACf,KAAK,EAAE;QACH,KAAK,EAAE,OAAO;QACd,cAAc,EAAE;YACZ,OAAO;YACP;gBACI,WAAW,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE;gBACpD,kBAAkB,EAAE,QAAQ;gBAC5B,MAAM,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC;aACtF;SACJ;QACD,yCAAyC,EAAE,KAAK;QAChD,gDAAgD,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QACnE,mCAAmC,EAAE;YACjC,OAAO;YACP;gBACI,iBAAiB,EAAE,IAAI;gBACvB,iBAAiB,EAAE,IAAI;gBACvB,yBAAyB,EAAE,IAAI;aAClC;SACJ;KACJ;IACD,QAAQ,EAAE;QACN,iBAAiB,EAAE;YACf,UAAU,EAAE,IAAI;SACnB;KACJ;CACJ,CAAC;AAEF,MAAM,aAAa,GAAG;IAClB,KAAK,EAAE,CAAC,kBAAkB,CAAC;IAC3B,OAAO,EAAE;QACL,oBAAoB,EAAE,QAAQ,CAAC,MAAM;KACxC;IACD,eAAe,EAAE;QACb,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,WAAW,EAAE,IAAI;QACjB,UAAU,EAAE,QAAQ;QACpB,OAAO,EAAE,OAAO,CAAC,IAAI;KACxB;IACD,KAAK,EAAE;QACH,4CAA4C,EAAE,OAAO;QACrD,sCAAsC,EAAE,KAAK;QAC7C,0CAA0C,EAAE,KAAK;KACpD;CACJ,CAAC;AAEF,MAAM,iBAAiB,GAAG;IACtB,KAAK,EAAE,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IAClD,eAAe,EAAE;QACb,MAAM,EAAE,iBAAiB;KAC5B;IACD,OAAO,EAAE;QACL,cAAc,EAAE,iBAAiB;KACpC;IACD,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK;CACrD,CAAC;AAEF,eAAe;IACX,MAAM,CAAC,OAAO,CAAC,WAAW;IAC1B,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW;IAC/B,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM;IAC1B,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS;IAC7B,yBAAyB;IACzB,YAAY,CAAC,WAAW,CAAC,WAAW;IACpC,YAAY;IACZ,UAAU;IACV,aAAa;IACb,iBAAiB;CACpB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,12 @@
1
+ import legacy from './configs/legacy.js';
2
+ import react from './configs/react.js';
3
+ import typescript from './configs/typescript.js';
4
+ // re-exported so consumers (e.g. the engine) can extend jsdoc `definedTags`
5
+ // without reaching into the config array internals
6
+ export { esmScriptTags } from './configs/legacy.js';
7
+ export default {
8
+ legacy,
9
+ typescript,
10
+ react
11
+ };
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,KAAK,MAAM,oBAAoB,CAAC;AACvC,OAAO,UAAU,MAAM,yBAAyB,CAAC;AAEjD,4EAA4E;AAC5E,mDAAmD;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,eAAe;IACX,MAAM;IACN,UAAU;IACV,KAAK;CACR,CAAC"}
package/package.json CHANGED
@@ -1,38 +1,66 @@
1
- {
2
- "name": "@playcanvas/eslint-config",
3
- "version": "2.1.0",
4
- "author": "PlayCanvas <support@playcanvas.com>",
5
- "homepage": "https://playcanvas.com",
6
- "description": "ESLint configuration used by PlayCanvas",
7
- "keywords": [
8
- "config",
9
- "eslint",
10
- "playcanvas"
11
- ],
12
- "license": "MIT",
13
- "main": "eslint.config.mjs",
14
- "bugs": {
15
- "url": "https://github.com/playcanvas/playcanvas-eslint-config/issues"
16
- },
17
- "repository": {
18
- "type": "git",
19
- "url": "git+https://github.com/playcanvas/playcanvas-eslint-config.git"
20
- },
21
- "files": [
22
- "LICENSE",
23
- "eslint.config.mjs",
24
- "package.json",
25
- "README.md"
26
- ],
27
- "dependencies": {
28
- "eslint-plugin-import": "^2.31.0",
29
- "eslint-plugin-jsdoc": "^50.6.11",
30
- "eslint-plugin-regexp": "^2.7.0"
31
- },
32
- "scripts": {
33
- "test": "echo \"Error: no test specified\" && exit 1"
34
- },
35
- "peerDependencies": {
36
- "eslint": ">= 8"
37
- }
38
- }
1
+ {
2
+ "name": "@playcanvas/eslint-config",
3
+ "version": "3.0.0-beta.1",
4
+ "description": "ESLint configuration used by PlayCanvas",
5
+ "keywords": [
6
+ "config",
7
+ "eslint",
8
+ "playcanvas"
9
+ ],
10
+ "homepage": "https://playcanvas.com",
11
+ "bugs": {
12
+ "url": "https://github.com/playcanvas/eslint-config/issues"
13
+ },
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/playcanvas/eslint-config.git"
17
+ },
18
+ "license": "MIT",
19
+ "author": "PlayCanvas <support@playcanvas.com>",
20
+ "type": "module",
21
+ "exports": {
22
+ ".": "./dist/index.js",
23
+ "./javascript": "./dist/configs/legacy.js",
24
+ "./legacy": "./dist/configs/legacy.js",
25
+ "./react": "./dist/configs/react.js",
26
+ "./typescript": "./dist/configs/typescript.js"
27
+ },
28
+ "files": [
29
+ "dist"
30
+ ],
31
+ "scripts": {
32
+ "build": "npm run clean && tsc",
33
+ "clean": "node ./scripts/clean.mjs",
34
+ "lint": "npm run build && prettier --check . && eslint .",
35
+ "lint:fix": "npm run build && prettier --write . && eslint --fix .",
36
+ "publint": "publint",
37
+ "test": "node ./scripts/test.mjs",
38
+ "watch": "tsc -w"
39
+ },
40
+ "dependencies": {
41
+ "@eslint/js": "^9.39.0",
42
+ "eslint-config-prettier": "^10.1.8",
43
+ "eslint-import-resolver-typescript": "^4.4.4",
44
+ "eslint-plugin-import": "^2.32.0",
45
+ "eslint-plugin-jsdoc": "^61.1.11",
46
+ "eslint-plugin-jsx-a11y": "^6.10.2",
47
+ "eslint-plugin-package-json": "^0.59.1",
48
+ "eslint-plugin-prettier": "^5.5.4",
49
+ "eslint-plugin-react": "^7.37.5",
50
+ "eslint-plugin-react-hooks": "^7.0.1",
51
+ "eslint-plugin-regexp": "^2.10.0",
52
+ "globals": "^16.5.0",
53
+ "jsonc-eslint-parser": "^2.4.1",
54
+ "typescript-eslint": "^8.46.2"
55
+ },
56
+ "devDependencies": {
57
+ "@types/eslint-plugin-jsx-a11y": "^6.10.1",
58
+ "eslint": "^9.39.0",
59
+ "publint": "^0.3.15",
60
+ "typescript": "^5.9.3"
61
+ },
62
+ "peerDependencies": {
63
+ "eslint": ">= 9",
64
+ "typescript": ">= 4"
65
+ }
66
+ }