Skip to content

Commit 5e597cf

Browse files
committed
fix: escape strings interpolated into regular expressions
1 parent 3cd767d commit 5e597cf

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/messageComposer/middleware/textComposer/textMiddlewareUtils.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,16 @@ export const getTriggerCharWithToken = ({
1616
isCommand?: boolean;
1717
acceptTrailingSpaces?: boolean;
1818
}) => {
19-
const triggerNorWhitespace = `[^\\s${trigger}]*`;
19+
const escapedTrigger = escapeRegExp(trigger);
20+
const triggerNorWhitespace = `[^\\s${escapedTrigger}]*`;
2021

2122
const match = text.match(
2223
new RegExp(
2324
isCommand
24-
? `^[${trigger}]${triggerNorWhitespace}$`
25+
? `^[${escapedTrigger}]${triggerNorWhitespace}$`
2526
: acceptTrailingSpaces
26-
? `(?!^|\\W)?[${trigger}]${triggerNorWhitespace}\\s?${triggerNorWhitespace}$`
27-
: `(?!^|\\W)?[${trigger}]${triggerNorWhitespace}$`,
27+
? `(?!^|\\W)?[${escapedTrigger}]${triggerNorWhitespace}\\s?${triggerNorWhitespace}$`
28+
: `(?!^|\\W)?[${escapedTrigger}]${triggerNorWhitespace}$`,
2829
'g',
2930
),
3031
);

0 commit comments

Comments
 (0)