@ofk/eslint-config 0.0.4 → 0.0.6

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/dist/index.d.mts CHANGED
@@ -8,9 +8,13 @@ declare function imports({ defaultExportFiles, node, typescript, ...config }: Pi
8
8
  typescript?: boolean;
9
9
  }): _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
10
10
 
11
- declare function jsGlobals({ browser, es2024, node, }: {
11
+ declare function jsGlobals({ browser, es2021, es2022, es2023, es2024, es2025, node, }: {
12
12
  browser?: boolean;
13
+ es2021?: boolean;
14
+ es2022?: boolean;
15
+ es2023?: boolean;
13
16
  es2024?: boolean;
17
+ es2025?: boolean;
14
18
  node?: boolean;
15
19
  }): _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
16
20
  declare function js({ globals, ...config }: Pick<ConfigWithExtends, 'extends' | 'rules'> & {
@@ -38,11 +42,12 @@ declare function defineBaseConfig({ eslintComments: eslintCommentsOptions, ignor
38
42
  vitest?: false | Parameters<typeof vitest>[0];
39
43
  }): _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
40
44
 
41
- declare function defineReactConfig({ jsxA11y: enabledJsxA11y, jsxRuntime: enabledJsxRuntime, reactHooks: enabledReactHooks, reactRefresh: enabledReactRefresh, ...reactOptions }?: Parameters<typeof react>[0] & {
45
+ declare function defineReactConfig({ jsxA11y: enabledJsxA11y, jsxRuntime: enabledJsxRuntime, reactHooks: enabledReactHooks, reactRefresh: enabledReactRefresh, tailwindcss: enabledTailwindcss, ...reactOptions }?: Parameters<typeof react>[0] & {
42
46
  jsxA11y?: boolean;
43
47
  jsxRuntime?: boolean;
44
48
  reactHooks?: boolean;
45
49
  reactRefresh?: boolean;
50
+ tailwindcss?: boolean;
46
51
  }): _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
47
52
 
48
53
  declare function defineConfig({ eslintComments: eslintCommentsOptions, imports: importsOptions, js: jsOptions, perfectionist: perfectionistOptions, react: reactOptions, ts: tsOptions, unusedImports: unusedImportsOptions, vitest: vitestOptions, ...config }?: Parameters<typeof defineBaseConfig>[0] & {
package/dist/index.d.ts CHANGED
@@ -8,9 +8,13 @@ declare function imports({ defaultExportFiles, node, typescript, ...config }: Pi
8
8
  typescript?: boolean;
9
9
  }): _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
10
10
 
11
- declare function jsGlobals({ browser, es2024, node, }: {
11
+ declare function jsGlobals({ browser, es2021, es2022, es2023, es2024, es2025, node, }: {
12
12
  browser?: boolean;
13
+ es2021?: boolean;
14
+ es2022?: boolean;
15
+ es2023?: boolean;
13
16
  es2024?: boolean;
17
+ es2025?: boolean;
14
18
  node?: boolean;
15
19
  }): _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
16
20
  declare function js({ globals, ...config }: Pick<ConfigWithExtends, 'extends' | 'rules'> & {
@@ -38,11 +42,12 @@ declare function defineBaseConfig({ eslintComments: eslintCommentsOptions, ignor
38
42
  vitest?: false | Parameters<typeof vitest>[0];
39
43
  }): _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
40
44
 
41
- declare function defineReactConfig({ jsxA11y: enabledJsxA11y, jsxRuntime: enabledJsxRuntime, reactHooks: enabledReactHooks, reactRefresh: enabledReactRefresh, ...reactOptions }?: Parameters<typeof react>[0] & {
45
+ declare function defineReactConfig({ jsxA11y: enabledJsxA11y, jsxRuntime: enabledJsxRuntime, reactHooks: enabledReactHooks, reactRefresh: enabledReactRefresh, tailwindcss: enabledTailwindcss, ...reactOptions }?: Parameters<typeof react>[0] & {
42
46
  jsxA11y?: boolean;
43
47
  jsxRuntime?: boolean;
44
48
  reactHooks?: boolean;
45
49
  reactRefresh?: boolean;
50
+ tailwindcss?: boolean;
46
51
  }): _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
47
52
 
48
53
  declare function defineConfig({ eslintComments: eslintCommentsOptions, imports: importsOptions, js: jsOptions, perfectionist: perfectionistOptions, react: reactOptions, ts: tsOptions, unusedImports: unusedImportsOptions, vitest: vitestOptions, ...config }?: Parameters<typeof defineBaseConfig>[0] & {
package/dist/index.js CHANGED
@@ -35,7 +35,7 @@ __export(index_exports, {
35
35
  module.exports = __toCommonJS(index_exports);
36
36
 
37
37
  // src/base.ts
38
- var import_typescript_eslint6 = __toESM(require("typescript-eslint"));
38
+ var import_typescript_eslint7 = __toESM(require("typescript-eslint"));
39
39
 
40
40
  // src/configs/eslint-comments.ts
41
41
  var import_configs = __toESM(require("@eslint-community/eslint-plugin-eslint-comments/configs"));
@@ -468,13 +468,21 @@ var jsStrict = mergeRules(
468
468
  );
469
469
  function jsGlobals({
470
470
  browser = true,
471
+ es2021 = true,
472
+ es2022 = true,
473
+ es2023 = true,
471
474
  es2024 = true,
475
+ es2025 = true,
472
476
  node = true
473
477
  }) {
474
478
  return import_typescript_eslint2.default.config({
475
479
  languageOptions: {
476
480
  globals: {
481
+ ...es2021 ? import_globals.default.es2021 : {},
482
+ ...es2022 ? import_globals.default.es2022 : {},
483
+ ...es2023 ? import_globals.default.es2023 : {},
477
484
  ...es2024 ? import_globals.default.es2024 : {},
485
+ ...es2025 ? import_globals.default.es2025 : {},
478
486
  ...browser ? import_globals.default.browser : {},
479
487
  ...node ? import_globals.default.node : {}
480
488
  }
@@ -740,8 +748,13 @@ var reactHooksStrict = mergeRules(
740
748
  var import_eslint_plugin_react_refresh = __toESM(require("eslint-plugin-react-refresh"));
741
749
  var reactRefreshStrict = mergeRules(import_eslint_plugin_react_refresh.default.configs.recommended);
742
750
 
743
- // src/configs/ts.ts
751
+ // src/configs/tailwindcss.ts
752
+ var import_eslint_plugin_tailwindcss = __toESM(require("eslint-plugin-tailwindcss"));
744
753
  var import_typescript_eslint4 = __toESM(require("typescript-eslint"));
754
+ var tailwindcssStrict = import_typescript_eslint4.default.config(import_eslint_plugin_tailwindcss.default.configs["flat/recommended"]);
755
+
756
+ // src/configs/ts.ts
757
+ var import_typescript_eslint5 = __toESM(require("typescript-eslint"));
745
758
  var jsStrictRules = jsStrict.rules ?? {};
746
759
  var tsEslintOverrideRules = mergeRules(
747
760
  {},
@@ -821,14 +834,14 @@ var tsRecommendedOverride = mergeRules(
821
834
  // confilict with @typescript-eslint/consistent-type-imports
822
835
  }
823
836
  );
824
- var tsRecommended = import_typescript_eslint4.default.config(
825
- import_typescript_eslint4.default.configs.recommended,
837
+ var tsRecommended = import_typescript_eslint5.default.config(
838
+ import_typescript_eslint5.default.configs.recommended,
826
839
  tsEslintOverrideRules,
827
840
  tsRecommendedOverride
828
841
  );
829
- var tsStrict = import_typescript_eslint4.default.config(
830
- import_typescript_eslint4.default.configs.strictTypeChecked,
831
- import_typescript_eslint4.default.configs.stylisticTypeChecked,
842
+ var tsStrict = import_typescript_eslint5.default.config(
843
+ import_typescript_eslint5.default.configs.strictTypeChecked,
844
+ import_typescript_eslint5.default.configs.stylisticTypeChecked,
832
845
  tsEslintOverrideRules,
833
846
  tsRecommendedOverride,
834
847
  {
@@ -885,7 +898,7 @@ function ts({
885
898
  strict = true,
886
899
  ...config
887
900
  }) {
888
- return import_typescript_eslint4.default.config(
901
+ return import_typescript_eslint5.default.config(
889
902
  parserOptions ? {
890
903
  languageOptions: {
891
904
  parserOptions: {
@@ -897,7 +910,7 @@ function ts({
897
910
  strict ? tsStrict : tsRecommended,
898
911
  config,
899
912
  disableTypeChecked ? {
900
- extends: [import_typescript_eslint4.default.configs.disableTypeChecked],
913
+ extends: [import_typescript_eslint5.default.configs.disableTypeChecked],
901
914
  files: ["**/*.{js,jsx,mjs,cjs}"]
902
915
  } : {}
903
916
  );
@@ -920,7 +933,7 @@ var unusedImportsStrict = mergeRules({
920
933
 
921
934
  // src/configs/vitest.ts
922
935
  var import_eslint_plugin = __toESM(require("@vitest/eslint-plugin"));
923
- var import_typescript_eslint5 = __toESM(require("typescript-eslint"));
936
+ var import_typescript_eslint6 = __toESM(require("typescript-eslint"));
924
937
  var vitestStrict = mergeRules(import_eslint_plugin.default.configs.recommended, {
925
938
  "vitest/consistent-test-filename": "off",
926
939
  "vitest/consistent-test-it": "error",
@@ -979,7 +992,7 @@ var vitestStrict = mergeRules(import_eslint_plugin.default.configs.recommended,
979
992
  "vitest/valid-expect-in-promise": "error"
980
993
  });
981
994
  function vitest(config) {
982
- return import_typescript_eslint5.default.config({
995
+ return import_typescript_eslint6.default.config({
983
996
  extends: [vitestStrict, config],
984
997
  files: ["tests/**", "*.test.*"]
985
998
  });
@@ -1079,7 +1092,7 @@ function defineBaseConfig({
1079
1092
  vitest: vitestOptions = {},
1080
1093
  ...config
1081
1094
  } = {}) {
1082
- return import_typescript_eslint6.default.config(
1095
+ return import_typescript_eslint7.default.config(
1083
1096
  settings ? { settings } : {},
1084
1097
  ignores ? { ignores } : {},
1085
1098
  jsOptions ? js(jsOptions) : {},
@@ -1096,15 +1109,16 @@ function defineBaseConfig({
1096
1109
 
1097
1110
  // src/react.ts
1098
1111
  var import_eslint_plugin_react2 = __toESM(require("eslint-plugin-react"));
1099
- var import_typescript_eslint7 = __toESM(require("typescript-eslint"));
1112
+ var import_typescript_eslint8 = __toESM(require("typescript-eslint"));
1100
1113
  function defineReactConfig({
1101
1114
  jsxA11y: enabledJsxA11y = true,
1102
1115
  jsxRuntime: enabledJsxRuntime = true,
1103
1116
  reactHooks: enabledReactHooks = true,
1104
1117
  reactRefresh: enabledReactRefresh = true,
1118
+ tailwindcss: enabledTailwindcss = true,
1105
1119
  ...reactOptions
1106
1120
  } = {}) {
1107
- return import_typescript_eslint7.default.config(
1121
+ return import_typescript_eslint8.default.config(
1108
1122
  react({
1109
1123
  ...reactOptions,
1110
1124
  extends: [
@@ -1112,6 +1126,7 @@ function defineReactConfig({
1112
1126
  enabledReactHooks ? reactHooksStrict : {},
1113
1127
  enabledReactRefresh ? reactRefreshStrict : {},
1114
1128
  enabledJsxA11y ? jsxA11yStrict : {},
1129
+ enabledTailwindcss ? tailwindcssStrict : {},
1115
1130
  ...reactOptions.extends ?? []
1116
1131
  ]
1117
1132
  })
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  // src/base.ts
2
- import pluginTs6 from "typescript-eslint";
2
+ import pluginTs7 from "typescript-eslint";
3
3
 
4
4
  // src/configs/eslint-comments.ts
5
5
  import pluginEslintComments from "@eslint-community/eslint-plugin-eslint-comments/configs";
@@ -432,13 +432,21 @@ var jsStrict = mergeRules(
432
432
  );
433
433
  function jsGlobals({
434
434
  browser = true,
435
+ es2021 = true,
436
+ es2022 = true,
437
+ es2023 = true,
435
438
  es2024 = true,
439
+ es2025 = true,
436
440
  node = true
437
441
  }) {
438
442
  return pluginTs2.config({
439
443
  languageOptions: {
440
444
  globals: {
445
+ ...es2021 ? globalVariables.es2021 : {},
446
+ ...es2022 ? globalVariables.es2022 : {},
447
+ ...es2023 ? globalVariables.es2023 : {},
441
448
  ...es2024 ? globalVariables.es2024 : {},
449
+ ...es2025 ? globalVariables.es2025 : {},
442
450
  ...browser ? globalVariables.browser : {},
443
451
  ...node ? globalVariables.node : {}
444
452
  }
@@ -704,8 +712,13 @@ var reactHooksStrict = mergeRules(
704
712
  import pluginReactRefresh from "eslint-plugin-react-refresh";
705
713
  var reactRefreshStrict = mergeRules(pluginReactRefresh.configs.recommended);
706
714
 
707
- // src/configs/ts.ts
715
+ // src/configs/tailwindcss.ts
716
+ import pluginTailwindcss from "eslint-plugin-tailwindcss";
708
717
  import pluginTs4 from "typescript-eslint";
718
+ var tailwindcssStrict = pluginTs4.config(pluginTailwindcss.configs["flat/recommended"]);
719
+
720
+ // src/configs/ts.ts
721
+ import pluginTs5 from "typescript-eslint";
709
722
  var jsStrictRules = jsStrict.rules ?? {};
710
723
  var tsEslintOverrideRules = mergeRules(
711
724
  {},
@@ -785,14 +798,14 @@ var tsRecommendedOverride = mergeRules(
785
798
  // confilict with @typescript-eslint/consistent-type-imports
786
799
  }
787
800
  );
788
- var tsRecommended = pluginTs4.config(
789
- pluginTs4.configs.recommended,
801
+ var tsRecommended = pluginTs5.config(
802
+ pluginTs5.configs.recommended,
790
803
  tsEslintOverrideRules,
791
804
  tsRecommendedOverride
792
805
  );
793
- var tsStrict = pluginTs4.config(
794
- pluginTs4.configs.strictTypeChecked,
795
- pluginTs4.configs.stylisticTypeChecked,
806
+ var tsStrict = pluginTs5.config(
807
+ pluginTs5.configs.strictTypeChecked,
808
+ pluginTs5.configs.stylisticTypeChecked,
796
809
  tsEslintOverrideRules,
797
810
  tsRecommendedOverride,
798
811
  {
@@ -849,7 +862,7 @@ function ts({
849
862
  strict = true,
850
863
  ...config
851
864
  }) {
852
- return pluginTs4.config(
865
+ return pluginTs5.config(
853
866
  parserOptions ? {
854
867
  languageOptions: {
855
868
  parserOptions: {
@@ -861,7 +874,7 @@ function ts({
861
874
  strict ? tsStrict : tsRecommended,
862
875
  config,
863
876
  disableTypeChecked ? {
864
- extends: [pluginTs4.configs.disableTypeChecked],
877
+ extends: [pluginTs5.configs.disableTypeChecked],
865
878
  files: ["**/*.{js,jsx,mjs,cjs}"]
866
879
  } : {}
867
880
  );
@@ -884,7 +897,7 @@ var unusedImportsStrict = mergeRules({
884
897
 
885
898
  // src/configs/vitest.ts
886
899
  import pluginVitest from "@vitest/eslint-plugin";
887
- import pluginTs5 from "typescript-eslint";
900
+ import pluginTs6 from "typescript-eslint";
888
901
  var vitestStrict = mergeRules(pluginVitest.configs.recommended, {
889
902
  "vitest/consistent-test-filename": "off",
890
903
  "vitest/consistent-test-it": "error",
@@ -943,7 +956,7 @@ var vitestStrict = mergeRules(pluginVitest.configs.recommended, {
943
956
  "vitest/valid-expect-in-promise": "error"
944
957
  });
945
958
  function vitest(config) {
946
- return pluginTs5.config({
959
+ return pluginTs6.config({
947
960
  extends: [vitestStrict, config],
948
961
  files: ["tests/**", "*.test.*"]
949
962
  });
@@ -1043,7 +1056,7 @@ function defineBaseConfig({
1043
1056
  vitest: vitestOptions = {},
1044
1057
  ...config
1045
1058
  } = {}) {
1046
- return pluginTs6.config(
1059
+ return pluginTs7.config(
1047
1060
  settings ? { settings } : {},
1048
1061
  ignores ? { ignores } : {},
1049
1062
  jsOptions ? js(jsOptions) : {},
@@ -1060,15 +1073,16 @@ function defineBaseConfig({
1060
1073
 
1061
1074
  // src/react.ts
1062
1075
  import pluginReact2 from "eslint-plugin-react";
1063
- import pluginTs7 from "typescript-eslint";
1076
+ import pluginTs8 from "typescript-eslint";
1064
1077
  function defineReactConfig({
1065
1078
  jsxA11y: enabledJsxA11y = true,
1066
1079
  jsxRuntime: enabledJsxRuntime = true,
1067
1080
  reactHooks: enabledReactHooks = true,
1068
1081
  reactRefresh: enabledReactRefresh = true,
1082
+ tailwindcss: enabledTailwindcss = true,
1069
1083
  ...reactOptions
1070
1084
  } = {}) {
1071
- return pluginTs7.config(
1085
+ return pluginTs8.config(
1072
1086
  react({
1073
1087
  ...reactOptions,
1074
1088
  extends: [
@@ -1076,6 +1090,7 @@ function defineReactConfig({
1076
1090
  enabledReactHooks ? reactHooksStrict : {},
1077
1091
  enabledReactRefresh ? reactRefreshStrict : {},
1078
1092
  enabledJsxA11y ? jsxA11yStrict : {},
1093
+ enabledTailwindcss ? tailwindcssStrict : {},
1079
1094
  ...reactOptions.extends ?? []
1080
1095
  ]
1081
1096
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ofk/eslint-config",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "author": "ofk (https://github.com/ofk/)",
@@ -18,6 +18,8 @@
18
18
  "build": "tsup",
19
19
  "lint": "run-s lint:*",
20
20
  "lint:eslint": "eslint .",
21
+ "lint:prettier": "prettier --check .",
22
+ "lint:prettier-package-json": "prettier-package-json --list-different",
21
23
  "lint-fix": "run-s lint-fix:*",
22
24
  "lint-fix:eslint": "eslint --fix .",
23
25
  "lint-fix:prettier": "prettier --write .",
@@ -39,9 +41,10 @@
39
41
  "eslint-plugin-react": "^7.35.0",
40
42
  "eslint-plugin-react-hooks": "^5.0.0",
41
43
  "eslint-plugin-react-refresh": "^0.4.16",
44
+ "eslint-plugin-tailwindcss": "^3.16.0",
42
45
  "eslint-plugin-unicorn": "^56.0.0",
43
46
  "eslint-plugin-unused-imports": "^4.1.1",
44
- "globals": "^15.4.0",
47
+ "globals": ">=14.0.0",
45
48
  "typescript-eslint": "^8.15.0"
46
49
  },
47
50
  "peerDependenciesMeta": {
@@ -75,6 +78,9 @@
75
78
  "eslint-plugin-react-refresh": {
76
79
  "optional": true
77
80
  },
81
+ "eslint-plugin-tailwindcss": {
82
+ "optional": true
83
+ },
78
84
  "eslint-plugin-unicorn": {
79
85
  "optional": true
80
86
  },
@@ -88,12 +94,16 @@
88
94
  "optional": true
89
95
  }
90
96
  },
97
+ "optionalDependencies": {
98
+ "@rollup/rollup-linux-x64-gnu": "*"
99
+ },
91
100
  "devDependencies": {
92
101
  "@eslint-community/eslint-plugin-eslint-comments": "^4.4.1",
93
102
  "@eslint/js": "^9.19.0",
94
103
  "@types/confusing-browser-globals": "^1.0.3",
95
104
  "@types/eslint-config-prettier": "^6.11.3",
96
105
  "@types/eslint-plugin-jsx-a11y": "^6.10.0",
106
+ "@types/eslint-plugin-tailwindcss": "^3.17.0",
97
107
  "@vitest/eslint-plugin": "^1.1.25",
98
108
  "confusing-browser-globals": "^1.0.11",
99
109
  "eslint": "^9.19.0",
@@ -104,9 +114,10 @@
104
114
  "eslint-plugin-react": "^7.37.4",
105
115
  "eslint-plugin-react-hooks": "^5.1.0",
106
116
  "eslint-plugin-react-refresh": "^0.4.18",
117
+ "eslint-plugin-tailwindcss": "^3.18.0",
107
118
  "eslint-plugin-unicorn": "^56.0.1",
108
119
  "eslint-plugin-unused-imports": "^4.1.4",
109
- "globals": "^15.14.0",
120
+ "globals": "^15.15.0",
110
121
  "husky": "^9.1.7",
111
122
  "jiti": "^2.4.2",
112
123
  "lint-staged": "^15.4.3",