Skip to content

Commit a747edc

Browse files
feat: more tweaks
1 parent 0e8d898 commit a747edc

File tree

3 files changed

+21
-16
lines changed

3 files changed

+21
-16
lines changed

src/configs/functional.ts

+8-3
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ export async function functional(
3737

3838
const strictRules = {
3939
"functional/functional-parameters": "error",
40-
"functional/no-promise-reject": "error",
4140
"functional/no-throw-statements": "error",
4241
"functional/no-try-statements": "error",
4342
"functional/no-let": "error",
@@ -46,7 +45,6 @@ export async function functional(
4645
"functional/no-loop-statements": "error",
4746
"functional/immutable-data": "error",
4847
"functional/prefer-immutable-types": "error",
49-
"functional/prefer-readonly-type": "error",
5048
"functional/type-declaration-immutability": "error",
5149
"functional/no-mixed-types": "error",
5250
"functional/no-conditional-statements": "error",
@@ -232,6 +230,11 @@ export async function functional(
232230
],
233231
} satisfies FlatConfigItem["rules"];
234232

233+
const noneLibraryRules = {
234+
"functional/prefer-immutable-types":
235+
liteRules["functional/prefer-immutable-types"],
236+
};
237+
235238
return [
236239
{
237240
name: "rs:functional",
@@ -250,7 +253,9 @@ export async function functional(
250253
rules: {
251254
...pluginFunctional.configs.off.rules,
252255
...(functionalEnforcement === "none"
253-
? {}
256+
? mode === "library"
257+
? noneLibraryRules
258+
: {}
254259
: functionalEnforcement === "lite"
255260
? liteRules
256261
: functionalEnforcement === "strict"

src/configs/typescript.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ export async function typescript(
195195
"ts/prefer-literal-enum-member": "error",
196196
"ts/prefer-nullish-coalescing": "error",
197197
"ts/prefer-optional-chain": "error",
198-
"ts/prefer-readonly-parameter-types": "error",
198+
// "ts/prefer-readonly-parameter-types": "error",
199199
"ts/prefer-reduce-type-parameter": "error",
200200
"ts/prefer-regexp-exec": "error",
201201
"ts/prefer-return-this-type": "error",

src/factory.ts

+12-12
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,9 @@ export function rsEslint(
113113
? functionalOptions
114114
: typeof functionalOptions === "object"
115115
? functionalOptions.functionalEnforcement ?? "recommended"
116-
: "recommended";
116+
: functionalOptions
117+
? "recommended"
118+
: "none";
117119

118120
const hasTypeScript = Boolean(typeScriptOptions);
119121

@@ -190,17 +192,15 @@ export function rsEslint(
190192
);
191193
}
192194

193-
if (functionalOptions !== false) {
194-
configs.push(
195-
functional({
196-
...typescriptConfigOptions,
197-
...functionalConfigOptions,
198-
overrides: getOverrides(options, "functional"),
199-
stylistic: stylisticOptions,
200-
mode,
201-
}),
202-
);
203-
}
195+
configs.push(
196+
functional({
197+
...typescriptConfigOptions,
198+
...functionalConfigOptions,
199+
overrides: getOverrides(options, "functional"),
200+
stylistic: stylisticOptions,
201+
mode,
202+
}),
203+
);
204204

205205
if (testOptions !== false) {
206206
configs.push(

0 commit comments

Comments
 (0)