mirror of https://github.com/zulip/zulip.git
shared: Avoid replaceAll again.
The JavaScript engine used by zulip-mobile on Android is still some four years out of date, apparently. This reverts commita3d6c47b7d
(#25734) and part of commit54f90e41c0
(#25554). Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
parent
c95773118e
commit
03a0a7abc6
|
@ -266,7 +266,8 @@
|
|||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
],
|
||||
"unicorn/prefer-string-replace-all": "off"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
|
@ -68,7 +68,7 @@ export function wrap_code(code: string, lang?: string): string {
|
|||
}
|
||||
// Trim trailing \n until there's just one left
|
||||
// This mirrors how pygments handles code input
|
||||
return header + _.escape(code.replaceAll(/^\n+|\n+$/g, "")) + "\n</code></pre></div>";
|
||||
return header + _.escape(code.replace(/^\n+|\n+$/g, "")) + "\n</code></pre></div>";
|
||||
}
|
||||
|
||||
function wrap_quote(text: string): string {
|
||||
|
|
|
@ -9,9 +9,7 @@ const hashReplacements = new Map([
|
|||
// window.location.hash. So we hide our URI-encoding
|
||||
// by replacing % with . (like MediaWiki).
|
||||
export function encodeHashComponent(str) {
|
||||
return encodeURIComponent(str).replaceAll(/[%().]/g, (matched) =>
|
||||
hashReplacements.get(matched),
|
||||
);
|
||||
return encodeURIComponent(str).replace(/[%().]/g, (matched) => hashReplacements.get(matched));
|
||||
}
|
||||
|
||||
export function decodeHashComponent(str) {
|
||||
|
@ -20,7 +18,7 @@ export function decodeHashComponent(str) {
|
|||
// of such characters when encoding. This can also,
|
||||
// fail independent of our fault.
|
||||
// Here we let the calling code handle the exception.
|
||||
return decodeURIComponent(str.replaceAll(".", "%"));
|
||||
return decodeURIComponent(str.replace(/\./g, "%"));
|
||||
}
|
||||
|
||||
export function stream_id_to_slug(stream_id, maybe_get_stream_name) {
|
||||
|
@ -28,7 +26,10 @@ export function stream_id_to_slug(stream_id, maybe_get_stream_name) {
|
|||
|
||||
// The name part of the URL doesn't really matter, so we try to
|
||||
// make it pretty.
|
||||
name = name.replaceAll(" ", "-");
|
||||
|
||||
// TODO: Convert this to replaceAll once mobile no longer supports
|
||||
// browsers that don't have it.
|
||||
name = name.replace(/ /g, "-");
|
||||
|
||||
return stream_id + "-" + name;
|
||||
}
|
||||
|
|
|
@ -45,7 +45,7 @@ type UnicodeEmoji = {
|
|||
};
|
||||
|
||||
export function remove_diacritics(s: string): string {
|
||||
return s.normalize("NFKD").replaceAll(unicode_marks, "");
|
||||
return s.normalize("NFKD").replace(unicode_marks, "");
|
||||
}
|
||||
|
||||
// This function attempts to match a query with a source text.
|
||||
|
@ -79,7 +79,7 @@ function clean_query(query: string): string {
|
|||
// contenteditable widget such as the composebox PM section, the
|
||||
// space at the end was a `no break-space (U+00A0)` instead of
|
||||
// `space (U+0020)`, which lead to no matches in those cases.
|
||||
query = query.replaceAll("\u00A0", " ");
|
||||
query = query.replace(/\u00A0/g, " ");
|
||||
|
||||
return query;
|
||||
}
|
||||
|
@ -98,7 +98,7 @@ export const parse_unicode_emoji_code = (code: string): string =>
|
|||
|
||||
export function get_emoji_matcher(query: string): (emoji: Emoji) => boolean {
|
||||
// replace spaces with underscores for emoji matching
|
||||
query = query.replaceAll(" ", "_");
|
||||
query = query.replace(/ /g, "_");
|
||||
query = clean_query_lowercase(query);
|
||||
|
||||
return function (emoji) {
|
||||
|
@ -166,7 +166,7 @@ export function triage<T>(
|
|||
|
||||
export function sort_emojis<T extends Emoji>(objs: T[], query: string): T[] {
|
||||
// replace spaces with underscores for emoji matching
|
||||
query = query.replaceAll(" ", "_");
|
||||
query = query.replace(/ /g, "_");
|
||||
query = query.toLowerCase();
|
||||
|
||||
function decent_match(name: string): boolean {
|
||||
|
|
Loading…
Reference in New Issue