Merge pull request #1133 from hgiesel/toolbarcleanup

Toolbar PR Cleanup
This commit is contained in:
Damien Elmes 2021-04-16 11:48:10 +10:00 committed by GitHub
commit 0ce396d95c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 11 additions and 28 deletions

View file

@ -7,7 +7,7 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
import { getContext } from "svelte";
import { nightModeKey } from "./contextKeys";
export let id: string;
export let id: string | undefined = undefined;
export let className = "";
export let buttons: ToolbarItem[];

View file

@ -56,7 +56,7 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
updateButton(command);
commandMap.subscribe((map: Map<string, boolean>): (() => void) => {
active = map.get(command);
active = Boolean(map.get(command));
return () => map.delete(command);
});
}

View file

@ -24,8 +24,11 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
import { disabledKey, nightModeKey } from "./contextKeys";
import ButtonGroup from "./ButtonGroup.svelte";
import type { ButtonGroupProps } from "./ButtonGroup";
export let buttons: Readable<ToolbarItem[]>;
export let buttons: Readable<
(ToolbarItem<typeof ButtonGroup> & ButtonGroupProps)[]
>;
export let menus: Readable<ToolbarItem[]>;
$: _buttons = $buttons;

View file

@ -4,7 +4,7 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
-->
<script lang="typescript">
import type { Writable } from "svelte/store";
import type { PreferencePayload } from "sveltelib/preferences";
import type { PreferenceRaw, PreferencePayload } from "sveltelib/preferences";
import pb from "anki/backend_proto";
import { postRequest } from "anki/postrequest";
@ -60,7 +60,10 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
setGraphPreferences,
pb.BackendProto.GraphPreferences.toObject.bind(
pb.BackendProto.GraphPreferences
)
) as (
preferences: pb.BackendProto.GraphPreferences,
options: { defaults: boolean }
) => PreferenceRaw<pb.BackendProto.GraphPreferences>
)
);

View file

@ -1,17 +0,0 @@
<!--
Copyright: Ankitects Pty Ltd and contributors
License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
-->
<script lang="typescript">
import useAsync from "sveltelib/async";
import { setupI18n } from "anki/i18n";
import { checkNightMode } from "anki/nightmode";
const nightMode = checkNightMode();
const { loading, value: i18n } = useAsync(() => setupI18n());
</script>
{#if !$loading}
<slot i18n={$i18n} {nightMode} />
{/if}

View file

@ -1,14 +1,8 @@
// Copyright: Ankitects Pty Ltd and contributors
// License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
// languageServerHost taken from MIT sources - see below.
import { Writable, writable, get } from "svelte/store";
// import pb from "anki/backend_proto";
// export async function getGraphPreferences(): Promise<pb.BackendProto.GraphPreferences> {
// export async function setGraphPreferences(prefs: PreferencePayload): Promise<void> {
// pb.BackendProto.GraphPreferences.toObject(Preferences, {
export interface CustomStore<T> extends Writable<T> {
subscribe: (getter: (value: T) => void) => () => void;
set: (value: T) => void;