narrow: Add helper to check allowed web public narrow.

Adds a helper function to check whether a narrow is an allowed
web public narrow or not.
This commit is contained in:
opmkumar
2025-03-04 23:24:27 +05:30
committed by Tim Abbott
parent efafe789be
commit f7dea36abb
3 changed files with 7 additions and 4 deletions

View File

@@ -865,7 +865,7 @@ export class Filter {
if (term.operand === undefined) {
return false;
}
if (!hash_parser.allowed_web_public_narrow_operators.includes(term.operator)) {
if (!hash_parser.is_an_allowed_web_public_narrow(term.operator)) {
return false;
}
}

View File

@@ -116,6 +116,10 @@ export function is_in_specified_hash_category(hash_categories: string[]): boolea
return hash_categories.includes(main_hash);
}
export function is_an_allowed_web_public_narrow(operator: string): boolean {
return allowed_web_public_narrow_operators.includes(operator);
}
export const allowed_web_public_narrow_operators = [
"channels",
"channel",
@@ -157,7 +161,7 @@ export function is_spectator_compatible(hash: string): boolean {
if (main_hash === "narrow") {
const hash_section = get_hash_section(hash);
if (!allowed_web_public_narrow_operators.includes(hash_section)) {
if (!is_an_allowed_web_public_narrow(hash_section)) {
return false;
}
return true;

View File

@@ -444,8 +444,7 @@ export let show = (raw_terms: NarrowTerm[], show_opts: ShowMessageViewOpts): voi
// policy?
!is_combined_feed_global_view &&
raw_terms.some(
(raw_term) =>
!hash_parser.allowed_web_public_narrow_operators.includes(raw_term.operator),
(raw_term) => !hash_parser.is_an_allowed_web_public_narrow(raw_term.operator),
)
) {
spectators.login_to_access();