From bde758c8ae91212c5a0c16ae316e635b4b2e893d Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Sat, 4 May 2024 15:16:39 -0700 Subject: [PATCH] scroll_util: Fix implicit use of any. Signed-off-by: Anders Kaseorg --- web/src/scroll_util.ts | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/web/src/scroll_util.ts b/web/src/scroll_util.ts index a4be25b85a..ded4918427 100644 --- a/web/src/scroll_util.ts +++ b/web/src/scroll_util.ts @@ -1,4 +1,5 @@ import $ from "jquery"; +import assert from "minimalistic-assert"; import SimpleBar from "simplebar"; // This type is helpful for testing, where we may have a dummy object instead of an actual jquery object. @@ -6,9 +7,10 @@ type JQueryOrZJQuery = {__zjquery?: true} & JQuery; export function get_content_element($element: JQuery): JQuery { const element = $element.expectOne()[0]; - const sb = SimpleBar.instances.get(element); + const sb: unknown = SimpleBar.instances.get(element); if (sb) { - return $(sb.getContentElement()); + assert(sb instanceof SimpleBar); // https://github.com/Grsmto/simplebar/pull/689 + return $(sb.getContentElement()!); } return $element; } @@ -20,9 +22,10 @@ export function get_scroll_element($element: JQueryOrZJQuery): JQuery { } const element = $element.expectOne()[0]; - const sb = SimpleBar.instances.get(element); + const sb: unknown = SimpleBar.instances.get(element); if (sb) { - return $(sb.getScrollElement()); + assert(sb instanceof SimpleBar); // https://github.com/Grsmto/simplebar/pull/689 + return $(sb.getScrollElement()!); } else if ("simplebar" in element.dataset) { // The SimpleBar mutation observer hasn’t processed this element yet. // Create the SimpleBar early in case we need to add event listeners. @@ -33,9 +36,10 @@ export function get_scroll_element($element: JQueryOrZJQuery): JQuery { export function reset_scrollbar($element: JQuery): void { const element = $element.expectOne()[0]; - const sb = SimpleBar.instances.get(element); + const sb: unknown = SimpleBar.instances.get(element); if (sb) { - sb.getScrollElement().scrollTop = 0; + assert(sb instanceof SimpleBar); // https://github.com/Grsmto/simplebar/pull/689 + sb.getScrollElement()!.scrollTop = 0; } else { element.scrollTop = 0; }