mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-04 05:53:43 +00:00 
			
		
		
		
	web: Avoid several unchecked TypeScript casts.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
		
				
					committed by
					
						
						Tim Abbott
					
				
			
			
				
	
			
			
			
						parent
						
							4650b789ce
						
					
				
				
					commit
					3d7b9e622d
				
			@@ -129,7 +129,7 @@ function render_attachments_ui(): void {
 | 
			
		||||
    set_upload_space_stats();
 | 
			
		||||
 | 
			
		||||
    const $uploaded_files_table = $("#uploaded_files_table").expectOne();
 | 
			
		||||
    const $search_input = $("#upload_file_search");
 | 
			
		||||
    const $search_input = $<HTMLInputElement>("input#upload_file_search");
 | 
			
		||||
 | 
			
		||||
    ListWidget.create<Attachment>($uploaded_files_table, attachments, {
 | 
			
		||||
        name: "uploaded-files-list",
 | 
			
		||||
 
 | 
			
		||||
@@ -154,8 +154,8 @@ export function set_tab(page: string): void {
 | 
			
		||||
        $("html").scrollTop(0);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    $(`#${CSS.escape(page)}-tabs.nav-tabs a`).on("click", function () {
 | 
			
		||||
        location.hash = (this as HTMLAnchorElement).hash;
 | 
			
		||||
    $<HTMLAnchorElement>(`#${CSS.escape(page)}-tabs.nav-tabs a`).on("click", function () {
 | 
			
		||||
        location.hash = this.hash;
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    current_page = page;
 | 
			
		||||
 
 | 
			
		||||
@@ -20,7 +20,7 @@ type ListWidgetMeta<Key = unknown, Item = Key> = {
 | 
			
		||||
 | 
			
		||||
// This type ensures the mutually exclusive nature of the predicate and filterer options.
 | 
			
		||||
type ListWidgetFilterOpts<Item = unknown> = {
 | 
			
		||||
    $element?: JQuery;
 | 
			
		||||
    $element?: JQuery<HTMLInputElement>;
 | 
			
		||||
    onupdate?: () => void;
 | 
			
		||||
} & (
 | 
			
		||||
    | {
 | 
			
		||||
@@ -359,7 +359,7 @@ export function create<Key = unknown, Item = Key>(
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            opts.filter?.$element?.on("input.list_widget_filter", function () {
 | 
			
		||||
                const value = (this as HTMLInputElement).value.toLocaleLowerCase();
 | 
			
		||||
                const value = this.value.toLocaleLowerCase();
 | 
			
		||||
                widget.set_filter_value(value);
 | 
			
		||||
                widget.hard_redraw();
 | 
			
		||||
            });
 | 
			
		||||
 
 | 
			
		||||
@@ -43,7 +43,7 @@ export type RealmDefaultSettings = {
 | 
			
		||||
    wildcard_mentions_notify: boolean;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export let realm_user_settings_defaults = {} as RealmDefaultSettings;
 | 
			
		||||
export let realm_user_settings_defaults: RealmDefaultSettings;
 | 
			
		||||
 | 
			
		||||
export function initialize(params: Record<string, RealmDefaultSettings>): void {
 | 
			
		||||
    realm_user_settings_defaults = params.realm_user_settings_defaults;
 | 
			
		||||
 
 | 
			
		||||
@@ -136,7 +136,9 @@ export function populate_emoji(): void {
 | 
			
		||||
            return "";
 | 
			
		||||
        },
 | 
			
		||||
        filter: {
 | 
			
		||||
            $element: $emoji_table.closest(".settings-section").find(".search"),
 | 
			
		||||
            $element: $emoji_table
 | 
			
		||||
                .closest(".settings-section")
 | 
			
		||||
                .find<HTMLInputElement>("input.search"),
 | 
			
		||||
            predicate(item, value) {
 | 
			
		||||
                return item.name.toLowerCase().includes(value);
 | 
			
		||||
            },
 | 
			
		||||
 
 | 
			
		||||
@@ -110,14 +110,14 @@ export async function play_audio(elem: HTMLVideoElement): Promise<void> {
 | 
			
		||||
export function listener_for_preferred_color_scheme_change(callback: () => void): void {
 | 
			
		||||
    const media_query_list = window.matchMedia("(prefers-color-scheme: dark)");
 | 
			
		||||
    // MediaQueryList.addEventListener is missing in Safari < 14
 | 
			
		||||
    const listener: () => void = () => {
 | 
			
		||||
    const listener = (): void => {
 | 
			
		||||
        if ($(":root").hasClass("color-scheme-automatic")) {
 | 
			
		||||
            callback();
 | 
			
		||||
        }
 | 
			
		||||
    };
 | 
			
		||||
    if ("addEventListener" in media_query_list) {
 | 
			
		||||
    if (media_query_list.addEventListener) {
 | 
			
		||||
        media_query_list.addEventListener("change", listener);
 | 
			
		||||
    } else {
 | 
			
		||||
        (media_query_list as MediaQueryList).addListener(listener);
 | 
			
		||||
        media_query_list.addListener(listener);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -57,7 +57,7 @@ export type UserSettings = (StreamNotificationSettings &
 | 
			
		||||
    send_read_receipts: boolean;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export let user_settings = {} as UserSettings;
 | 
			
		||||
export let user_settings: UserSettings;
 | 
			
		||||
 | 
			
		||||
export function initialize_user_settings(params: Record<string, UserSettings>): void {
 | 
			
		||||
    user_settings = params.user_settings;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user