From a435e0fc5378b33a49bcec92ee235df6f16a2419 Mon Sep 17 00:00:00 2001 From: Maxim Khramtsov Date: Mon, 8 Jul 2024 04:48:02 +0200 Subject: [PATCH] refactor `TrimEnd` & `TrimStart` (#3181) Co-authored-by: maksim.khramtsov --- .changeset/chilly-hornets-type.md | 5 +++++ packages/effect/src/String.ts | 12 ++---------- 2 files changed, 7 insertions(+), 10 deletions(-) create mode 100644 .changeset/chilly-hornets-type.md diff --git a/.changeset/chilly-hornets-type.md b/.changeset/chilly-hornets-type.md new file mode 100644 index 0000000000..157d64a3a4 --- /dev/null +++ b/.changeset/chilly-hornets-type.md @@ -0,0 +1,5 @@ +--- +"effect": patch +--- + +refactor `TrimEnd` & `TrimStart` diff --git a/packages/effect/src/String.ts b/packages/effect/src/String.ts index ab13a48abf..440099c072 100644 --- a/packages/effect/src/String.ts +++ b/packages/effect/src/String.ts @@ -146,11 +146,7 @@ export const trim = (self: A): Trim => self.trim() as Trim< /** * @since 2.0.0 */ -export type TrimStart = A extends ` ${infer B}` ? TrimStart - : A extends `\n${infer B}` ? TrimStart - : A extends `\t${infer B}` ? TrimStart - : A extends `\r${infer B}` ? TrimStart - : A +export type TrimStart = A extends `${" " | "\n" | "\t" | "\r"}${infer B}` ? TrimStart : A /** * @example @@ -165,11 +161,7 @@ export const trimStart = (self: A): TrimStart => self.trimS /** * @since 2.0.0 */ -export type TrimEnd = A extends `${infer B} ` ? TrimEnd - : A extends `${infer B}\n` ? TrimEnd - : A extends `${infer B}\t` ? TrimEnd - : A extends `${infer B}\r` ? TrimEnd - : A +export type TrimEnd = A extends `${infer B}${" " | "\n" | "\t" | "\r"}` ? TrimEnd : A /** * @example