diff --git a/framework/core/js/src/common/Component.ts b/framework/core/js/src/common/Component.ts index ac2178909..36c12a83e 100644 --- a/framework/core/js/src/common/Component.ts +++ b/framework/core/js/src/common/Component.ts @@ -33,14 +33,14 @@ export default abstract class Component; return selector ? $element.find(selector) : $element; @@ -156,5 +156,5 @@ export default abstract class Component(attrs: T): void {} + static initAttrs(attrs: T): void {} } diff --git a/framework/core/js/src/forum/components/Search.tsx b/framework/core/js/src/forum/components/Search.tsx index 032156bb9..4d04d51be 100644 --- a/framework/core/js/src/forum/components/Search.tsx +++ b/framework/core/js/src/forum/components/Search.tsx @@ -71,11 +71,11 @@ export default class Search extends Compone */ // TODO: [Flarum 2.0] Remove this. // @ts-expect-error This is a get accessor, while superclass defines this as a property. This is needed to prevent breaking changes, however. - protected get state() { + get state() { fireDeprecationWarning('`state` property of the Search component is deprecated', '3212'); return this.searchState; } - protected set state(state: SearchState) { + set state(state: SearchState) { // Workaround to prevent triggering deprecation warnings due to Mithril // setting state to undefined when creating components state !== undefined && fireDeprecationWarning('`state` property of the Search component is deprecated', '3212'); @@ -107,7 +107,7 @@ export default class Search extends Compone protected navigator!: KeyboardNavigatable; - protected searchTimeout?: NodeJS.Timeout; + protected searchTimeout?: number; private updateMaxHeightHandler?: () => void; @@ -240,7 +240,7 @@ export default class Search extends Compone if (!query) return; if (search.searchTimeout) clearTimeout(search.searchTimeout); - search.searchTimeout = setTimeout(() => { + search.searchTimeout = window.setTimeout(() => { if (state.isCached(query)) return; if (query.length >= (search.constructor as typeof Search).MIN_SEARCH_LEN) {