Make more code conform to strict null checks (#10219
* Make more code conform to strict null checks * Fix types * Fix tests * Fix remaining test assertions * Iterate PR
This commit is contained in:
parent
4c79ecf141
commit
76b82b4b2b
130 changed files with 603 additions and 603 deletions
|
@ -20,12 +20,13 @@ import { Room } from "matrix-js-sdk/src/matrix";
|
|||
import { MatrixClientPeg } from "../../MatrixClientPeg";
|
||||
import { SettingLevel } from "../../settings/SettingLevel";
|
||||
import SettingsStore from "../../settings/SettingsStore";
|
||||
import { filterBoolean } from "../../utils/arrays";
|
||||
|
||||
export const useRecentSearches = (): [Room[], () => void] => {
|
||||
const [rooms, setRooms] = useState(() => {
|
||||
const cli = MatrixClientPeg.get();
|
||||
const recents = SettingsStore.getValue<string[]>("SpotlightSearch.recentSearches", null);
|
||||
return recents.map((r) => cli.getRoom(r)).filter(Boolean) as Room[];
|
||||
return filterBoolean(recents.map((r) => cli.getRoom(r)));
|
||||
});
|
||||
|
||||
return [
|
||||
|
|
|
@ -67,7 +67,7 @@ type Mapper<T> = (...args: any[]) => T;
|
|||
* {@link useEventEmitterState}
|
||||
*/
|
||||
export function useTypedEventEmitterState<T, Events extends string, Arguments extends ListenerMap<Events>>(
|
||||
emitter: TypedEventEmitter<Events, Arguments>,
|
||||
emitter: TypedEventEmitter<Events, Arguments> | undefined,
|
||||
eventName: Events,
|
||||
fn: Mapper<T>,
|
||||
): T {
|
||||
|
|
|
@ -107,7 +107,7 @@ export const usePublicRoomDirectory = (): {
|
|||
"org.matrix.msc3827.stable",
|
||||
))
|
||||
? Array.from<RoomType | null>(roomTypes)
|
||||
: null,
|
||||
: undefined,
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -84,7 +84,7 @@ function useUserOnboardingContextValue<T>(defaultValue: T, callback: (cli: Matri
|
|||
|
||||
export function useUserOnboardingContext(): UserOnboardingContext {
|
||||
const hasAvatar = useUserOnboardingContextValue(false, async (cli) => {
|
||||
const profile = await cli.getProfileInfo(cli.getUserId());
|
||||
const profile = await cli.getProfileInfo(cli.getUserId()!);
|
||||
return Boolean(profile?.avatar_url);
|
||||
});
|
||||
const hasDevices = useUserOnboardingContextValue(false, async (cli) => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue