@alextheman/eslint-plugin 4.4.0 → 4.4.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/dist/index.cjs CHANGED
@@ -59,7 +59,7 @@ eslint_plugin_package_json = __toESM(eslint_plugin_package_json);
59
59
 
60
60
  //#region package.json
61
61
  var name = "@alextheman/eslint-plugin";
62
- var version = "4.4.0";
62
+ var version = "4.4.2";
63
63
 
64
64
  //#endregion
65
65
  //#region node_modules/.pnpm/globals@16.5.0/node_modules/globals/globals.json
@@ -3433,10 +3433,16 @@ var checkCallExpression_default = checkCallExpression;
3433
3433
 
3434
3434
  //#endregion
3435
3435
  //#region src/utility/combineRestrictedImports.ts
3436
- function combineRestrictedImports(firstGroup, secondGroup) {
3436
+ function combineRestrictedImports(...groups) {
3437
+ const paths = [];
3438
+ const patterns = [];
3439
+ for (const group of groups) {
3440
+ if (group.paths) paths.push(...group.paths);
3441
+ if (group.patterns) patterns.push(...group.patterns);
3442
+ }
3437
3443
  const combinedGroup = {
3438
- paths: [...firstGroup.paths ?? [], ...secondGroup.paths ?? []],
3439
- patterns: [...firstGroup.patterns ?? [], ...secondGroup.patterns ?? []]
3444
+ paths,
3445
+ patterns
3440
3446
  };
3441
3447
  if (combinedGroup.paths.length === 0) return (0, __alextheman_utility.omitProperties)(combinedGroup, "paths");
3442
3448
  if (combinedGroup.patterns.length === 0) return (0, __alextheman_utility.omitProperties)(combinedGroup, "patterns");
@@ -3471,8 +3477,8 @@ const testsRestrictedImports = combineRestrictedImports_default(generalRestricte
3471
3477
  var testsRestrictedImports_default = testsRestrictedImports;
3472
3478
 
3473
3479
  //#endregion
3474
- //#region src/configs/personal/testsBase.ts
3475
- const personalTestsBaseConfig = [{
3480
+ //#region src/configs/personal/tests.ts
3481
+ const personalTests = [{
3476
3482
  files: ["**/*.test.{js,ts}"],
3477
3483
  languageOptions: { globals: {
3478
3484
  ...import_globals$2.default.node,
@@ -3499,11 +3505,11 @@ const personalTestsBaseConfig = [{
3499
3505
  "no-restricted-imports": ["error", testsRestrictedImports_default]
3500
3506
  }
3501
3507
  }];
3502
- var testsBase_default$1 = personalTestsBaseConfig;
3508
+ var tests_default$1 = personalTests;
3503
3509
 
3504
3510
  //#endregion
3505
- //#region src/configs/plugin/pluginBase.ts
3506
- function createPluginBaseConfig(plugin) {
3511
+ //#region src/configs/plugin/base.ts
3512
+ function pluginBase(plugin) {
3507
3513
  return [{
3508
3514
  name: "@alextheman/plugin/base",
3509
3515
  plugins: { "@alextheman": plugin },
@@ -3514,11 +3520,11 @@ function createPluginBaseConfig(plugin) {
3514
3520
  }
3515
3521
  }];
3516
3522
  }
3517
- var pluginBase_default = createPluginBaseConfig;
3523
+ var base_default = pluginBase;
3518
3524
 
3519
3525
  //#endregion
3520
- //#region src/configs/plugin/testsBase.ts
3521
- function createPluginTestsBaseConfig(plugin) {
3526
+ //#region src/configs/plugin/tests.ts
3527
+ function pluginTests(plugin) {
3522
3528
  return [{
3523
3529
  files: ["**/*.test.ts"],
3524
3530
  name: "@alextheman/plugin/tests",
@@ -3530,18 +3536,18 @@ function createPluginTestsBaseConfig(plugin) {
3530
3536
  }
3531
3537
  }];
3532
3538
  }
3533
- var testsBase_default$2 = createPluginTestsBaseConfig;
3539
+ var tests_default$2 = pluginTests;
3534
3540
 
3535
3541
  //#endregion
3536
- //#region src/configs/combined/testsBase.ts
3537
- function createCombinedTestsBaseConfig(plugin) {
3542
+ //#region src/configs/combined/tests.ts
3543
+ function combinedTests(plugin) {
3538
3544
  return [
3539
3545
  { name: "@alextheman/combined/tests" },
3540
- ...testsBase_default$2(plugin),
3541
- ...testsBase_default$1
3546
+ ...tests_default$2(plugin),
3547
+ ...tests_default$1
3542
3548
  ];
3543
3549
  }
3544
- var testsBase_default = createCombinedTestsBaseConfig;
3550
+ var tests_default = combinedTests;
3545
3551
 
3546
3552
  //#endregion
3547
3553
  //#region src/configs/helpers/javaScriptLanguageOptions.ts
@@ -3563,8 +3569,8 @@ const unusedVarsIgnorePatterns = {
3563
3569
  var unusedVarsIgnorePatterns_default = unusedVarsIgnorePatterns;
3564
3570
 
3565
3571
  //#endregion
3566
- //#region src/configs/general/javaScriptBase.ts
3567
- const javaScriptBase = [
3572
+ //#region src/configs/general/javaScript.ts
3573
+ const generalJavaScript = [
3568
3574
  __eslint_js.default.configs.recommended,
3569
3575
  eslint_config_prettier.default,
3570
3576
  {
@@ -3601,7 +3607,7 @@ const javaScriptBase = [
3601
3607
  settings: { "import/resolver": { node: true } }
3602
3608
  }
3603
3609
  ];
3604
- var javaScriptBase_default$1 = javaScriptBase;
3610
+ var javaScript_default$1 = generalJavaScript;
3605
3611
 
3606
3612
  //#endregion
3607
3613
  //#region src/configs/helpers/prettierRules.ts
@@ -3705,7 +3711,7 @@ var vitestConfig_default = vitestConfig;
3705
3711
 
3706
3712
  //#endregion
3707
3713
  //#region src/configs/personal/javaScriptBase.ts
3708
- function createPersonalJavaScriptBaseConfig(plugin) {
3714
+ function personalJavaScript(plugin) {
3709
3715
  return [{
3710
3716
  files: [
3711
3717
  "**/*.js",
@@ -3745,20 +3751,20 @@ function createPersonalJavaScriptBaseConfig(plugin) {
3745
3751
  rules: { "@alextheman/no-relative-imports": ["error", { depth: 0 }] }
3746
3752
  }];
3747
3753
  }
3748
- var javaScriptBase_default$2 = createPersonalJavaScriptBaseConfig;
3754
+ var javaScriptBase_default = personalJavaScript;
3749
3755
 
3750
3756
  //#endregion
3751
- //#region src/configs/combined/javaScriptBase.ts
3752
- function createCombinedJavaScriptBaseConfig(plugin) {
3757
+ //#region src/configs/combined/javaScript.ts
3758
+ function combinedJavaScript(plugin) {
3753
3759
  return [
3754
3760
  { name: "@alextheman/combined/javascript" },
3755
- ...pluginBase_default(plugin),
3756
- ...javaScriptBase_default$1,
3757
- ...javaScriptBase_default$2(plugin),
3758
- ...testsBase_default(plugin)
3761
+ ...base_default(plugin),
3762
+ ...javaScript_default$1,
3763
+ ...javaScriptBase_default(plugin),
3764
+ ...tests_default(plugin)
3759
3765
  ];
3760
3766
  }
3761
- var javaScriptBase_default = createCombinedJavaScriptBaseConfig;
3767
+ var javaScript_default = combinedJavaScript;
3762
3768
 
3763
3769
  //#endregion
3764
3770
  //#region src/configs/helpers/eslint-plugin-react-hooks.ts
@@ -3773,8 +3779,8 @@ const reactHooks = {
3773
3779
  var eslint_plugin_react_hooks_default = reactHooks;
3774
3780
 
3775
3781
  //#endregion
3776
- //#region src/configs/general/reactBase.ts
3777
- const reactBase = [
3782
+ //#region src/configs/general/react.ts
3783
+ const generalReact = [
3778
3784
  eslint_plugin_react.default.configs.flat.recommended,
3779
3785
  eslint_plugin_react.default.configs.flat["jsx-runtime"],
3780
3786
  eslint_plugin_jsx_a11y.default.flatConfigs.recommended,
@@ -3806,7 +3812,7 @@ const reactBase = [
3806
3812
  settings: { react: { version: "detect" } }
3807
3813
  }
3808
3814
  ];
3809
- var reactBase_default$1 = reactBase;
3815
+ var react_default$1 = generalReact;
3810
3816
 
3811
3817
  //#endregion
3812
3818
  //#region src/configs/helpers/restrictedImports/reactRestrictedImports.ts
@@ -3817,8 +3823,8 @@ const reactRestrictedImports = combineRestrictedImports_default(generalRestricte
3817
3823
  var reactRestrictedImports_default = reactRestrictedImports;
3818
3824
 
3819
3825
  //#endregion
3820
- //#region src/configs/personal/reactBase.ts
3821
- const personalReactBaseConfig = [{
3826
+ //#region src/configs/personal/react.ts
3827
+ const personalReact = [{
3822
3828
  languageOptions: reactLanguageOptions_default,
3823
3829
  name: "@alextheman/personal/react",
3824
3830
  plugins: {
@@ -3834,33 +3840,41 @@ const personalReactBaseConfig = [{
3834
3840
  "react/jsx-boolean-value": "error"
3835
3841
  }
3836
3842
  }];
3837
- var reactBase_default$2 = personalReactBaseConfig;
3843
+ var react_default$2 = personalReact;
3838
3844
 
3839
3845
  //#endregion
3840
- //#region src/configs/combined/reactBase.ts
3841
- const combinedReactBaseConfig = [
3846
+ //#region src/configs/combined/react.ts
3847
+ const combinedReact = [
3842
3848
  { name: "@alextheman/combined/react" },
3843
- ...reactBase_default$1,
3844
- ...reactBase_default$2
3849
+ ...react_default$1,
3850
+ ...react_default$2
3845
3851
  ];
3846
- var reactBase_default = combinedReactBaseConfig;
3852
+ var react_default = combinedReact;
3847
3853
 
3848
3854
  //#endregion
3849
- //#region src/configs/combined/javaScriptReactBase.ts
3850
- function createCombinedJavaScriptReactBaseConfig(plugin) {
3855
+ //#region src/configs/combined/javaScriptReact.ts
3856
+ function combinedJavaScriptReact(plugin) {
3851
3857
  return [
3852
3858
  { name: "@alextheman/combined/javascript-react" },
3853
- ...javaScriptBase_default(plugin),
3854
- ...reactBase_default
3859
+ ...javaScript_default(plugin),
3860
+ ...react_default
3855
3861
  ];
3856
3862
  }
3857
- var javaScriptReactBase_default = createCombinedJavaScriptReactBaseConfig;
3863
+ var javaScriptReact_default = combinedJavaScriptReact;
3864
+
3865
+ //#endregion
3866
+ //#region src/configs/general/packageJson.ts
3867
+ const generalPackageJson = [eslint_plugin_package_json.default.configs.recommended, {
3868
+ plugins: { "package-json": eslint_plugin_package_json.default },
3869
+ rules: { "package-json/scripts-name-casing": "error" }
3870
+ }];
3871
+ var packageJson_default = generalPackageJson;
3858
3872
 
3859
3873
  //#endregion
3860
- //#region src/configs/general/typeScriptBase.ts
3861
- const typeScriptBase = [
3874
+ //#region src/configs/general/typeScript.ts
3875
+ const generalTypeScript = [
3862
3876
  ...typescript_eslint.default.configs.recommended,
3863
- ...javaScriptBase_default$1,
3877
+ ...javaScript_default$1,
3864
3878
  {
3865
3879
  files: ["**/*.ts", "**/*.tsx"],
3866
3880
  languageOptions: typeScriptLanguageOptions_default,
@@ -3879,7 +3893,17 @@ const typeScriptBase = [
3879
3893
  }
3880
3894
  }
3881
3895
  ];
3882
- var typeScriptBase_default$1 = typeScriptBase;
3896
+ var typeScript_default$1 = generalTypeScript;
3897
+
3898
+ //#endregion
3899
+ //#region src/configs/personal/alexCLine.ts
3900
+ const personalAlexCLine = [{
3901
+ files: ["src/commands/index.ts"],
3902
+ name: "@alextheman/personal/alex-c-line",
3903
+ plugins: { perfectionist: eslint_plugin_perfectionist.default },
3904
+ rules: { "perfectionist/sort-objects": ["error", sortObjects_default] }
3905
+ }];
3906
+ var alexCLine_default = personalAlexCLine;
3883
3907
 
3884
3908
  //#endregion
3885
3909
  //#region src/configs/helpers/restrictedImports/eslintPluginRestrictedImports.ts
@@ -3902,7 +3926,7 @@ var eslintPluginRestrictedImports_default = eslintPluginRestrictedImports;
3902
3926
 
3903
3927
  //#endregion
3904
3928
  //#region src/configs/personal/eslintPlugin.ts
3905
- function createPersonalEslintPluginConfig(plugin) {
3929
+ function personalEslintPlugin(plugin) {
3906
3930
  return [{
3907
3931
  name: "@alextheman/personal/eslint-plugin",
3908
3932
  plugins: {
@@ -3918,7 +3942,7 @@ function createPersonalEslintPluginConfig(plugin) {
3918
3942
  rules: { "perfectionist/sort-objects": ["error", sortObjects_default] }
3919
3943
  }];
3920
3944
  }
3921
- var eslintPlugin_default = createPersonalEslintPluginConfig;
3945
+ var eslintPlugin_default = personalEslintPlugin;
3922
3946
 
3923
3947
  //#endregion
3924
3948
  //#region src/configs/helpers/restrictedImports/neurosongsBackEndRestrictedImports.ts
@@ -3942,7 +3966,7 @@ var neurosongsBackEndRestrictedImports_default = neurosongsBackEndRestrictedImpo
3942
3966
 
3943
3967
  //#endregion
3944
3968
  //#region src/configs/personal/neurosongsBackEnd.ts
3945
- const neurosongsBackEndConfig = [
3969
+ const personalNeurosongsBackEnd = [
3946
3970
  {
3947
3971
  name: "@alextheman/personal/neurosongs-back-end",
3948
3972
  rules: { "no-restricted-imports": ["error", neurosongsBackEndRestrictedImports_default] }
@@ -3960,7 +3984,7 @@ const neurosongsBackEndConfig = [
3960
3984
  ] }
3961
3985
  }
3962
3986
  ];
3963
- var neurosongsBackEnd_default = neurosongsBackEndConfig;
3987
+ var neurosongsBackEnd_default = personalNeurosongsBackEnd;
3964
3988
 
3965
3989
  //#endregion
3966
3990
  //#region src/configs/helpers/restrictedImports/neurosongsFrontEndRestrictedImports.ts
@@ -3985,15 +4009,15 @@ var neurosongsFrontEndRestrictedImports_default = neurosongsFrontEndRestrictedIm
3985
4009
 
3986
4010
  //#endregion
3987
4011
  //#region src/configs/personal/neurosongsFrontEnd.ts
3988
- const neurosongsFrontEndConfig = [{
4012
+ const personalNeurosongsFrontEnd = [{
3989
4013
  name: "@alextheman/personal/neurosongs-front-end",
3990
4014
  rules: { "no-restricted-imports": ["error", neurosongsFrontEndRestrictedImports_default] }
3991
4015
  }];
3992
- var neurosongsFrontEnd_default = neurosongsFrontEndConfig;
4016
+ var neurosongsFrontEnd_default = personalNeurosongsFrontEnd;
3993
4017
 
3994
4018
  //#endregion
3995
- //#region src/configs/personal/typeScriptBase.ts
3996
- function createPersonalTypeScriptBaseConfig(plugin) {
4019
+ //#region src/configs/personal/typeScript.ts
4020
+ function personalTypeScript(plugin) {
3997
4021
  return [{
3998
4022
  files: ["**/*.ts", "**/*.tsx"],
3999
4023
  languageOptions: typeScriptLanguageOptions_default,
@@ -4013,57 +4037,39 @@ function createPersonalTypeScriptBaseConfig(plugin) {
4013
4037
  }
4014
4038
  }];
4015
4039
  }
4016
- var typeScriptBase_default$2 = createPersonalTypeScriptBaseConfig;
4040
+ var typeScript_default$2 = personalTypeScript;
4017
4041
 
4018
4042
  //#endregion
4019
4043
  //#region src/configs/personal/utility.ts
4020
- const utilityConfig = [{
4044
+ const personalUtility = [{
4021
4045
  name: "@alextheman/personal/utility",
4022
4046
  plugins: { "@typescript-eslint": typescript_eslint.default.plugin },
4023
4047
  rules: { "@typescript-eslint/explicit-module-boundary-types": "error" }
4024
4048
  }];
4025
- var utility_default = utilityConfig;
4049
+ var utility_default = personalUtility;
4026
4050
 
4027
4051
  //#endregion
4028
- //#region src/configs/combined/typeScriptBase.ts
4029
- function createCombinedTypeScriptBaseConfig(plugin) {
4052
+ //#region src/configs/combined/typeScript.ts
4053
+ function combinedTypeScript(plugin) {
4030
4054
  return [
4031
4055
  { name: "@alextheman/combined/typescript" },
4032
- ...javaScriptBase_default(plugin),
4033
- ...typeScriptBase_default$1,
4034
- ...typeScriptBase_default$2(plugin)
4056
+ ...javaScript_default(plugin),
4057
+ ...typeScript_default$1,
4058
+ ...typeScript_default$2(plugin)
4035
4059
  ];
4036
4060
  }
4037
- var typeScriptBase_default = createCombinedTypeScriptBaseConfig;
4061
+ var typeScript_default = combinedTypeScript;
4038
4062
 
4039
4063
  //#endregion
4040
- //#region src/configs/combined/typeScriptReactBase.ts
4041
- function createCombinedTypeScriptReactBaseConfig(plugin) {
4064
+ //#region src/configs/combined/typeScriptReact.ts
4065
+ function combinedTypeScriptReact(plugin) {
4042
4066
  return [
4043
4067
  { name: "@alextheman/combined/typescript-react" },
4044
- ...typeScriptBase_default(plugin),
4045
- ...reactBase_default
4068
+ ...typeScript_default(plugin),
4069
+ ...react_default
4046
4070
  ];
4047
4071
  }
4048
- var typeScriptReactBase_default = createCombinedTypeScriptReactBaseConfig;
4049
-
4050
- //#endregion
4051
- //#region src/configs/general/packageJson.ts
4052
- const packageJsonConfig = [eslint_plugin_package_json.default.configs.recommended, {
4053
- plugins: { "package-json": eslint_plugin_package_json.default },
4054
- rules: { "package-json/scripts-name-casing": "error" }
4055
- }];
4056
- var packageJson_default = packageJsonConfig;
4057
-
4058
- //#endregion
4059
- //#region src/configs/personal/alexCLine.ts
4060
- const alexCLineConfig = [{
4061
- files: ["src/commands/index.ts"],
4062
- name: "@alextheman/personal/alex-c-line",
4063
- plugins: { perfectionist: eslint_plugin_perfectionist.default },
4064
- rules: { "perfectionist/sort-objects": ["error", sortObjects_default] }
4065
- }];
4066
- var alexCLine_default = alexCLineConfig;
4072
+ var typeScriptReact_default = combinedTypeScriptReact;
4067
4073
 
4068
4074
  //#endregion
4069
4075
  //#region src/utility/camelToKebab.ts
@@ -4095,33 +4101,33 @@ var createPluginConfigs_default = createPluginConfigs;
4095
4101
  function createAlexPluginConfigs(plugin) {
4096
4102
  return createPluginConfigs_default({
4097
4103
  combined: {
4098
- javaScript: [...javaScriptBase_default(plugin), ...packageJson_default],
4099
- javaScriptReact: [...javaScriptReactBase_default(plugin), ...packageJson_default],
4100
- react: [...reactBase_default, ...packageJson_default],
4101
- tests: [...testsBase_default(plugin), ...packageJson_default],
4102
- typeScript: [...typeScriptBase_default(plugin), ...packageJson_default],
4103
- typeScriptReact: [...typeScriptReactBase_default(plugin), ...packageJson_default]
4104
+ javaScript: [...javaScript_default(plugin), ...packageJson_default],
4105
+ javaScriptReact: [...javaScriptReact_default(plugin), ...packageJson_default],
4106
+ react: [...react_default, ...packageJson_default],
4107
+ tests: [...tests_default(plugin), ...packageJson_default],
4108
+ typeScript: [...typeScript_default(plugin), ...packageJson_default],
4109
+ typeScriptReact: [...typeScriptReact_default(plugin), ...packageJson_default]
4104
4110
  },
4105
4111
  general: {
4106
- javaScript: javaScriptBase_default$1,
4112
+ javaScript: javaScript_default$1,
4107
4113
  packageJson: packageJson_default,
4108
- react: reactBase_default$1,
4109
- typeScript: typeScriptBase_default$1
4114
+ react: react_default$1,
4115
+ typeScript: typeScript_default$1
4110
4116
  },
4111
4117
  personal: {
4112
4118
  alexCLine: alexCLine_default,
4113
4119
  eslintPlugin: eslintPlugin_default(plugin),
4114
- javaScript: javaScriptBase_default$2(plugin),
4120
+ javaScript: javaScriptBase_default(plugin),
4115
4121
  neurosongsBackEnd: neurosongsBackEnd_default,
4116
4122
  neurosongsFrontEnd: neurosongsFrontEnd_default,
4117
- react: reactBase_default$2,
4118
- tests: testsBase_default$1,
4119
- typeScript: typeScriptBase_default$2(plugin),
4123
+ react: react_default$2,
4124
+ tests: tests_default$1,
4125
+ typeScript: typeScript_default$2(plugin),
4120
4126
  utility: utility_default
4121
4127
  },
4122
4128
  plugin: {
4123
- base: pluginBase_default(plugin),
4124
- tests: testsBase_default$2(plugin)
4129
+ base: base_default(plugin),
4130
+ tests: tests_default$2(plugin)
4125
4131
  }
4126
4132
  });
4127
4133
  }
package/dist/index.d.cts CHANGED
@@ -235,7 +235,7 @@ declare function parseUseNormalizedImportsOptions(data: unknown): {
235
235
  declare function checkCallExpression(node: TSESTree.CallExpression, objectName: string, propertyName: string): boolean;
236
236
  //#endregion
237
237
  //#region src/utility/combineRestrictedImports.d.ts
238
- declare function combineRestrictedImports(firstGroup: NoRestrictedImportsOptions, secondGroup: NoRestrictedImportsOptions): NoRestrictedImportsOptions;
238
+ declare function combineRestrictedImports(...groups: NoRestrictedImportsOptions[]): NoRestrictedImportsOptions;
239
239
  //#endregion
240
240
  //#region src/utility/createRuleSchemaFromZodSchema.d.ts
241
241
  declare function createRuleSchemaFromZodSchema(schema: z.ZodType): JSONSchema4[];
package/dist/index.d.ts CHANGED
@@ -235,7 +235,7 @@ declare function parseUseNormalizedImportsOptions(data: unknown): {
235
235
  declare function checkCallExpression(node: TSESTree.CallExpression, objectName: string, propertyName: string): boolean;
236
236
  //#endregion
237
237
  //#region src/utility/combineRestrictedImports.d.ts
238
- declare function combineRestrictedImports(firstGroup: NoRestrictedImportsOptions, secondGroup: NoRestrictedImportsOptions): NoRestrictedImportsOptions;
238
+ declare function combineRestrictedImports(...groups: NoRestrictedImportsOptions[]): NoRestrictedImportsOptions;
239
239
  //#endregion
240
240
  //#region src/utility/createRuleSchemaFromZodSchema.d.ts
241
241
  declare function createRuleSchemaFromZodSchema(schema: z.ZodType): JSONSchema4[];
package/dist/index.js CHANGED
@@ -45,7 +45,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
45
45
  //#endregion
46
46
  //#region package.json
47
47
  var name = "@alextheman/eslint-plugin";
48
- var version = "4.4.0";
48
+ var version = "4.4.2";
49
49
 
50
50
  //#endregion
51
51
  //#region node_modules/.pnpm/globals@16.5.0/node_modules/globals/globals.json
@@ -3419,10 +3419,16 @@ var checkCallExpression_default = checkCallExpression;
3419
3419
 
3420
3420
  //#endregion
3421
3421
  //#region src/utility/combineRestrictedImports.ts
3422
- function combineRestrictedImports(firstGroup, secondGroup) {
3422
+ function combineRestrictedImports(...groups) {
3423
+ const paths = [];
3424
+ const patterns = [];
3425
+ for (const group of groups) {
3426
+ if (group.paths) paths.push(...group.paths);
3427
+ if (group.patterns) patterns.push(...group.patterns);
3428
+ }
3423
3429
  const combinedGroup = {
3424
- paths: [...firstGroup.paths ?? [], ...secondGroup.paths ?? []],
3425
- patterns: [...firstGroup.patterns ?? [], ...secondGroup.patterns ?? []]
3430
+ paths,
3431
+ patterns
3426
3432
  };
3427
3433
  if (combinedGroup.paths.length === 0) return omitProperties(combinedGroup, "paths");
3428
3434
  if (combinedGroup.patterns.length === 0) return omitProperties(combinedGroup, "patterns");
@@ -3457,8 +3463,8 @@ const testsRestrictedImports = combineRestrictedImports_default(generalRestricte
3457
3463
  var testsRestrictedImports_default = testsRestrictedImports;
3458
3464
 
3459
3465
  //#endregion
3460
- //#region src/configs/personal/testsBase.ts
3461
- const personalTestsBaseConfig = [{
3466
+ //#region src/configs/personal/tests.ts
3467
+ const personalTests = [{
3462
3468
  files: ["**/*.test.{js,ts}"],
3463
3469
  languageOptions: { globals: {
3464
3470
  ...import_globals$2.default.node,
@@ -3485,11 +3491,11 @@ const personalTestsBaseConfig = [{
3485
3491
  "no-restricted-imports": ["error", testsRestrictedImports_default]
3486
3492
  }
3487
3493
  }];
3488
- var testsBase_default$1 = personalTestsBaseConfig;
3494
+ var tests_default$1 = personalTests;
3489
3495
 
3490
3496
  //#endregion
3491
- //#region src/configs/plugin/pluginBase.ts
3492
- function createPluginBaseConfig(plugin) {
3497
+ //#region src/configs/plugin/base.ts
3498
+ function pluginBase(plugin) {
3493
3499
  return [{
3494
3500
  name: "@alextheman/plugin/base",
3495
3501
  plugins: { "@alextheman": plugin },
@@ -3500,11 +3506,11 @@ function createPluginBaseConfig(plugin) {
3500
3506
  }
3501
3507
  }];
3502
3508
  }
3503
- var pluginBase_default = createPluginBaseConfig;
3509
+ var base_default = pluginBase;
3504
3510
 
3505
3511
  //#endregion
3506
- //#region src/configs/plugin/testsBase.ts
3507
- function createPluginTestsBaseConfig(plugin) {
3512
+ //#region src/configs/plugin/tests.ts
3513
+ function pluginTests(plugin) {
3508
3514
  return [{
3509
3515
  files: ["**/*.test.ts"],
3510
3516
  name: "@alextheman/plugin/tests",
@@ -3516,18 +3522,18 @@ function createPluginTestsBaseConfig(plugin) {
3516
3522
  }
3517
3523
  }];
3518
3524
  }
3519
- var testsBase_default$2 = createPluginTestsBaseConfig;
3525
+ var tests_default$2 = pluginTests;
3520
3526
 
3521
3527
  //#endregion
3522
- //#region src/configs/combined/testsBase.ts
3523
- function createCombinedTestsBaseConfig(plugin) {
3528
+ //#region src/configs/combined/tests.ts
3529
+ function combinedTests(plugin) {
3524
3530
  return [
3525
3531
  { name: "@alextheman/combined/tests" },
3526
- ...testsBase_default$2(plugin),
3527
- ...testsBase_default$1
3532
+ ...tests_default$2(plugin),
3533
+ ...tests_default$1
3528
3534
  ];
3529
3535
  }
3530
- var testsBase_default = createCombinedTestsBaseConfig;
3536
+ var tests_default = combinedTests;
3531
3537
 
3532
3538
  //#endregion
3533
3539
  //#region src/configs/helpers/javaScriptLanguageOptions.ts
@@ -3549,8 +3555,8 @@ const unusedVarsIgnorePatterns = {
3549
3555
  var unusedVarsIgnorePatterns_default = unusedVarsIgnorePatterns;
3550
3556
 
3551
3557
  //#endregion
3552
- //#region src/configs/general/javaScriptBase.ts
3553
- const javaScriptBase = [
3558
+ //#region src/configs/general/javaScript.ts
3559
+ const generalJavaScript = [
3554
3560
  js.configs.recommended,
3555
3561
  prettierConfig,
3556
3562
  {
@@ -3587,7 +3593,7 @@ const javaScriptBase = [
3587
3593
  settings: { "import/resolver": { node: true } }
3588
3594
  }
3589
3595
  ];
3590
- var javaScriptBase_default$1 = javaScriptBase;
3596
+ var javaScript_default$1 = generalJavaScript;
3591
3597
 
3592
3598
  //#endregion
3593
3599
  //#region src/configs/helpers/prettierRules.ts
@@ -3691,7 +3697,7 @@ var vitestConfig_default = vitestConfig;
3691
3697
 
3692
3698
  //#endregion
3693
3699
  //#region src/configs/personal/javaScriptBase.ts
3694
- function createPersonalJavaScriptBaseConfig(plugin) {
3700
+ function personalJavaScript(plugin) {
3695
3701
  return [{
3696
3702
  files: [
3697
3703
  "**/*.js",
@@ -3731,20 +3737,20 @@ function createPersonalJavaScriptBaseConfig(plugin) {
3731
3737
  rules: { "@alextheman/no-relative-imports": ["error", { depth: 0 }] }
3732
3738
  }];
3733
3739
  }
3734
- var javaScriptBase_default$2 = createPersonalJavaScriptBaseConfig;
3740
+ var javaScriptBase_default = personalJavaScript;
3735
3741
 
3736
3742
  //#endregion
3737
- //#region src/configs/combined/javaScriptBase.ts
3738
- function createCombinedJavaScriptBaseConfig(plugin) {
3743
+ //#region src/configs/combined/javaScript.ts
3744
+ function combinedJavaScript(plugin) {
3739
3745
  return [
3740
3746
  { name: "@alextheman/combined/javascript" },
3741
- ...pluginBase_default(plugin),
3742
- ...javaScriptBase_default$1,
3743
- ...javaScriptBase_default$2(plugin),
3744
- ...testsBase_default(plugin)
3747
+ ...base_default(plugin),
3748
+ ...javaScript_default$1,
3749
+ ...javaScriptBase_default(plugin),
3750
+ ...tests_default(plugin)
3745
3751
  ];
3746
3752
  }
3747
- var javaScriptBase_default = createCombinedJavaScriptBaseConfig;
3753
+ var javaScript_default = combinedJavaScript;
3748
3754
 
3749
3755
  //#endregion
3750
3756
  //#region src/configs/helpers/eslint-plugin-react-hooks.ts
@@ -3759,8 +3765,8 @@ const reactHooks = {
3759
3765
  var eslint_plugin_react_hooks_default = reactHooks;
3760
3766
 
3761
3767
  //#endregion
3762
- //#region src/configs/general/reactBase.ts
3763
- const reactBase = [
3768
+ //#region src/configs/general/react.ts
3769
+ const generalReact = [
3764
3770
  reactPlugin.configs.flat.recommended,
3765
3771
  reactPlugin.configs.flat["jsx-runtime"],
3766
3772
  jsxA11y.flatConfigs.recommended,
@@ -3792,7 +3798,7 @@ const reactBase = [
3792
3798
  settings: { react: { version: "detect" } }
3793
3799
  }
3794
3800
  ];
3795
- var reactBase_default$1 = reactBase;
3801
+ var react_default$1 = generalReact;
3796
3802
 
3797
3803
  //#endregion
3798
3804
  //#region src/configs/helpers/restrictedImports/reactRestrictedImports.ts
@@ -3803,8 +3809,8 @@ const reactRestrictedImports = combineRestrictedImports_default(generalRestricte
3803
3809
  var reactRestrictedImports_default = reactRestrictedImports;
3804
3810
 
3805
3811
  //#endregion
3806
- //#region src/configs/personal/reactBase.ts
3807
- const personalReactBaseConfig = [{
3812
+ //#region src/configs/personal/react.ts
3813
+ const personalReact = [{
3808
3814
  languageOptions: reactLanguageOptions_default,
3809
3815
  name: "@alextheman/personal/react",
3810
3816
  plugins: {
@@ -3820,33 +3826,41 @@ const personalReactBaseConfig = [{
3820
3826
  "react/jsx-boolean-value": "error"
3821
3827
  }
3822
3828
  }];
3823
- var reactBase_default$2 = personalReactBaseConfig;
3829
+ var react_default$2 = personalReact;
3824
3830
 
3825
3831
  //#endregion
3826
- //#region src/configs/combined/reactBase.ts
3827
- const combinedReactBaseConfig = [
3832
+ //#region src/configs/combined/react.ts
3833
+ const combinedReact = [
3828
3834
  { name: "@alextheman/combined/react" },
3829
- ...reactBase_default$1,
3830
- ...reactBase_default$2
3835
+ ...react_default$1,
3836
+ ...react_default$2
3831
3837
  ];
3832
- var reactBase_default = combinedReactBaseConfig;
3838
+ var react_default = combinedReact;
3833
3839
 
3834
3840
  //#endregion
3835
- //#region src/configs/combined/javaScriptReactBase.ts
3836
- function createCombinedJavaScriptReactBaseConfig(plugin) {
3841
+ //#region src/configs/combined/javaScriptReact.ts
3842
+ function combinedJavaScriptReact(plugin) {
3837
3843
  return [
3838
3844
  { name: "@alextheman/combined/javascript-react" },
3839
- ...javaScriptBase_default(plugin),
3840
- ...reactBase_default
3845
+ ...javaScript_default(plugin),
3846
+ ...react_default
3841
3847
  ];
3842
3848
  }
3843
- var javaScriptReactBase_default = createCombinedJavaScriptReactBaseConfig;
3849
+ var javaScriptReact_default = combinedJavaScriptReact;
3850
+
3851
+ //#endregion
3852
+ //#region src/configs/general/packageJson.ts
3853
+ const generalPackageJson = [packageJson.configs.recommended, {
3854
+ plugins: { "package-json": packageJson },
3855
+ rules: { "package-json/scripts-name-casing": "error" }
3856
+ }];
3857
+ var packageJson_default = generalPackageJson;
3844
3858
 
3845
3859
  //#endregion
3846
- //#region src/configs/general/typeScriptBase.ts
3847
- const typeScriptBase = [
3860
+ //#region src/configs/general/typeScript.ts
3861
+ const generalTypeScript = [
3848
3862
  ...tseslint.configs.recommended,
3849
- ...javaScriptBase_default$1,
3863
+ ...javaScript_default$1,
3850
3864
  {
3851
3865
  files: ["**/*.ts", "**/*.tsx"],
3852
3866
  languageOptions: typeScriptLanguageOptions_default,
@@ -3865,7 +3879,17 @@ const typeScriptBase = [
3865
3879
  }
3866
3880
  }
3867
3881
  ];
3868
- var typeScriptBase_default$1 = typeScriptBase;
3882
+ var typeScript_default$1 = generalTypeScript;
3883
+
3884
+ //#endregion
3885
+ //#region src/configs/personal/alexCLine.ts
3886
+ const personalAlexCLine = [{
3887
+ files: ["src/commands/index.ts"],
3888
+ name: "@alextheman/personal/alex-c-line",
3889
+ plugins: { perfectionist },
3890
+ rules: { "perfectionist/sort-objects": ["error", sortObjects_default] }
3891
+ }];
3892
+ var alexCLine_default = personalAlexCLine;
3869
3893
 
3870
3894
  //#endregion
3871
3895
  //#region src/configs/helpers/restrictedImports/eslintPluginRestrictedImports.ts
@@ -3888,7 +3912,7 @@ var eslintPluginRestrictedImports_default = eslintPluginRestrictedImports;
3888
3912
 
3889
3913
  //#endregion
3890
3914
  //#region src/configs/personal/eslintPlugin.ts
3891
- function createPersonalEslintPluginConfig(plugin) {
3915
+ function personalEslintPlugin(plugin) {
3892
3916
  return [{
3893
3917
  name: "@alextheman/personal/eslint-plugin",
3894
3918
  plugins: {
@@ -3904,7 +3928,7 @@ function createPersonalEslintPluginConfig(plugin) {
3904
3928
  rules: { "perfectionist/sort-objects": ["error", sortObjects_default] }
3905
3929
  }];
3906
3930
  }
3907
- var eslintPlugin_default = createPersonalEslintPluginConfig;
3931
+ var eslintPlugin_default = personalEslintPlugin;
3908
3932
 
3909
3933
  //#endregion
3910
3934
  //#region src/configs/helpers/restrictedImports/neurosongsBackEndRestrictedImports.ts
@@ -3928,7 +3952,7 @@ var neurosongsBackEndRestrictedImports_default = neurosongsBackEndRestrictedImpo
3928
3952
 
3929
3953
  //#endregion
3930
3954
  //#region src/configs/personal/neurosongsBackEnd.ts
3931
- const neurosongsBackEndConfig = [
3955
+ const personalNeurosongsBackEnd = [
3932
3956
  {
3933
3957
  name: "@alextheman/personal/neurosongs-back-end",
3934
3958
  rules: { "no-restricted-imports": ["error", neurosongsBackEndRestrictedImports_default] }
@@ -3946,7 +3970,7 @@ const neurosongsBackEndConfig = [
3946
3970
  ] }
3947
3971
  }
3948
3972
  ];
3949
- var neurosongsBackEnd_default = neurosongsBackEndConfig;
3973
+ var neurosongsBackEnd_default = personalNeurosongsBackEnd;
3950
3974
 
3951
3975
  //#endregion
3952
3976
  //#region src/configs/helpers/restrictedImports/neurosongsFrontEndRestrictedImports.ts
@@ -3971,15 +3995,15 @@ var neurosongsFrontEndRestrictedImports_default = neurosongsFrontEndRestrictedIm
3971
3995
 
3972
3996
  //#endregion
3973
3997
  //#region src/configs/personal/neurosongsFrontEnd.ts
3974
- const neurosongsFrontEndConfig = [{
3998
+ const personalNeurosongsFrontEnd = [{
3975
3999
  name: "@alextheman/personal/neurosongs-front-end",
3976
4000
  rules: { "no-restricted-imports": ["error", neurosongsFrontEndRestrictedImports_default] }
3977
4001
  }];
3978
- var neurosongsFrontEnd_default = neurosongsFrontEndConfig;
4002
+ var neurosongsFrontEnd_default = personalNeurosongsFrontEnd;
3979
4003
 
3980
4004
  //#endregion
3981
- //#region src/configs/personal/typeScriptBase.ts
3982
- function createPersonalTypeScriptBaseConfig(plugin) {
4005
+ //#region src/configs/personal/typeScript.ts
4006
+ function personalTypeScript(plugin) {
3983
4007
  return [{
3984
4008
  files: ["**/*.ts", "**/*.tsx"],
3985
4009
  languageOptions: typeScriptLanguageOptions_default,
@@ -3999,57 +4023,39 @@ function createPersonalTypeScriptBaseConfig(plugin) {
3999
4023
  }
4000
4024
  }];
4001
4025
  }
4002
- var typeScriptBase_default$2 = createPersonalTypeScriptBaseConfig;
4026
+ var typeScript_default$2 = personalTypeScript;
4003
4027
 
4004
4028
  //#endregion
4005
4029
  //#region src/configs/personal/utility.ts
4006
- const utilityConfig = [{
4030
+ const personalUtility = [{
4007
4031
  name: "@alextheman/personal/utility",
4008
4032
  plugins: { "@typescript-eslint": tseslint.plugin },
4009
4033
  rules: { "@typescript-eslint/explicit-module-boundary-types": "error" }
4010
4034
  }];
4011
- var utility_default = utilityConfig;
4035
+ var utility_default = personalUtility;
4012
4036
 
4013
4037
  //#endregion
4014
- //#region src/configs/combined/typeScriptBase.ts
4015
- function createCombinedTypeScriptBaseConfig(plugin) {
4038
+ //#region src/configs/combined/typeScript.ts
4039
+ function combinedTypeScript(plugin) {
4016
4040
  return [
4017
4041
  { name: "@alextheman/combined/typescript" },
4018
- ...javaScriptBase_default(plugin),
4019
- ...typeScriptBase_default$1,
4020
- ...typeScriptBase_default$2(plugin)
4042
+ ...javaScript_default(plugin),
4043
+ ...typeScript_default$1,
4044
+ ...typeScript_default$2(plugin)
4021
4045
  ];
4022
4046
  }
4023
- var typeScriptBase_default = createCombinedTypeScriptBaseConfig;
4047
+ var typeScript_default = combinedTypeScript;
4024
4048
 
4025
4049
  //#endregion
4026
- //#region src/configs/combined/typeScriptReactBase.ts
4027
- function createCombinedTypeScriptReactBaseConfig(plugin) {
4050
+ //#region src/configs/combined/typeScriptReact.ts
4051
+ function combinedTypeScriptReact(plugin) {
4028
4052
  return [
4029
4053
  { name: "@alextheman/combined/typescript-react" },
4030
- ...typeScriptBase_default(plugin),
4031
- ...reactBase_default
4054
+ ...typeScript_default(plugin),
4055
+ ...react_default
4032
4056
  ];
4033
4057
  }
4034
- var typeScriptReactBase_default = createCombinedTypeScriptReactBaseConfig;
4035
-
4036
- //#endregion
4037
- //#region src/configs/general/packageJson.ts
4038
- const packageJsonConfig = [packageJson.configs.recommended, {
4039
- plugins: { "package-json": packageJson },
4040
- rules: { "package-json/scripts-name-casing": "error" }
4041
- }];
4042
- var packageJson_default = packageJsonConfig;
4043
-
4044
- //#endregion
4045
- //#region src/configs/personal/alexCLine.ts
4046
- const alexCLineConfig = [{
4047
- files: ["src/commands/index.ts"],
4048
- name: "@alextheman/personal/alex-c-line",
4049
- plugins: { perfectionist },
4050
- rules: { "perfectionist/sort-objects": ["error", sortObjects_default] }
4051
- }];
4052
- var alexCLine_default = alexCLineConfig;
4058
+ var typeScriptReact_default = combinedTypeScriptReact;
4053
4059
 
4054
4060
  //#endregion
4055
4061
  //#region src/utility/camelToKebab.ts
@@ -4081,33 +4087,33 @@ var createPluginConfigs_default = createPluginConfigs;
4081
4087
  function createAlexPluginConfigs(plugin) {
4082
4088
  return createPluginConfigs_default({
4083
4089
  combined: {
4084
- javaScript: [...javaScriptBase_default(plugin), ...packageJson_default],
4085
- javaScriptReact: [...javaScriptReactBase_default(plugin), ...packageJson_default],
4086
- react: [...reactBase_default, ...packageJson_default],
4087
- tests: [...testsBase_default(plugin), ...packageJson_default],
4088
- typeScript: [...typeScriptBase_default(plugin), ...packageJson_default],
4089
- typeScriptReact: [...typeScriptReactBase_default(plugin), ...packageJson_default]
4090
+ javaScript: [...javaScript_default(plugin), ...packageJson_default],
4091
+ javaScriptReact: [...javaScriptReact_default(plugin), ...packageJson_default],
4092
+ react: [...react_default, ...packageJson_default],
4093
+ tests: [...tests_default(plugin), ...packageJson_default],
4094
+ typeScript: [...typeScript_default(plugin), ...packageJson_default],
4095
+ typeScriptReact: [...typeScriptReact_default(plugin), ...packageJson_default]
4090
4096
  },
4091
4097
  general: {
4092
- javaScript: javaScriptBase_default$1,
4098
+ javaScript: javaScript_default$1,
4093
4099
  packageJson: packageJson_default,
4094
- react: reactBase_default$1,
4095
- typeScript: typeScriptBase_default$1
4100
+ react: react_default$1,
4101
+ typeScript: typeScript_default$1
4096
4102
  },
4097
4103
  personal: {
4098
4104
  alexCLine: alexCLine_default,
4099
4105
  eslintPlugin: eslintPlugin_default(plugin),
4100
- javaScript: javaScriptBase_default$2(plugin),
4106
+ javaScript: javaScriptBase_default(plugin),
4101
4107
  neurosongsBackEnd: neurosongsBackEnd_default,
4102
4108
  neurosongsFrontEnd: neurosongsFrontEnd_default,
4103
- react: reactBase_default$2,
4104
- tests: testsBase_default$1,
4105
- typeScript: typeScriptBase_default$2(plugin),
4109
+ react: react_default$2,
4110
+ tests: tests_default$1,
4111
+ typeScript: typeScript_default$2(plugin),
4106
4112
  utility: utility_default
4107
4113
  },
4108
4114
  plugin: {
4109
- base: pluginBase_default(plugin),
4110
- tests: testsBase_default$2(plugin)
4115
+ base: base_default(plugin),
4116
+ tests: tests_default$2(plugin)
4111
4117
  }
4112
4118
  });
4113
4119
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alextheman/eslint-plugin",
3
- "version": "4.4.0",
3
+ "version": "4.4.2",
4
4
  "description": "A package to provide custom ESLint rules and configs",
5
5
  "repository": {
6
6
  "type": "git",