Explorar o código

Merge pull request #14226 from overleaf/mj-table-gen-reinstate-regex

[visual] Reinstate regex for escaping ampersands

GitOrigin-RevId: 61f561fdee0ff9393fb20eb0a0485ce7fbf75bea
Mathias Jakobsen %!s(int64=3) %!d(string=hai) anos
pai
achega
6d8c8e678e

+ 5 - 1
services/web/frontend/js/features/source-editor/components/table-generator/cell.tsx

@@ -62,7 +62,11 @@ export const Cell: FC<{
 
   const filterInput = (input: string) => {
     // TODO: Are there situations where we don't want to filter the input?
-    return input.replaceAll('\\\\', '')
+    return input
+      .replaceAll(/(^&|[^\\]&)/g, match =>
+        match.length === 1 ? '\\&' : `${match[0]}\\&`
+      )
+      .replaceAll('\\\\', '')
   }
 
   const isFocused =