Resolve some typescript errors

This commit is contained in:
nemunaire 2023-05-05 11:12:33 +02:00
parent d0dcb164fc
commit f2de26ea0e
13 changed files with 28 additions and 17 deletions

View File

@ -11,7 +11,7 @@ export async function listServiceSpecs(): Promise<Record<string, ServiceInfos>>
export async function getServiceSpec(ssid: string): Promise<ServiceSpec> {
if (ssid == "string") {
return Promise.resolve(new ServiceSpec({}));
return Promise.resolve(<ServiceSpec>{});
} else {
const res = await fetch(`/api/service_specs/` + ssid, {
method: 'GET',

View File

@ -26,12 +26,14 @@
let className = '';
export let routeId: string | null;
export let sw_state: boolean;
export let sw_state: {triedUpdate: boolean; hasUpdate: boolean;};
let helpLink = "";
$: if (routeId.startsWith("/providers/new/[ptype]")) {
$: if (routeId && routeId.startsWith("/providers/new/[ptype]")) {
helpLink = getHelpPathFromProvider($page.url.pathname.split("/")[3]);
} else {
} else if (routeId) {
helpLink = 'https://help.happydomain.org/' + encodeURIComponent($locale) + getHelpPathFromRoute(routeId);
} else {
helpLink = 'https://help.happydomain.org/' + encodeURIComponent($locale);
}
function getHelpPathFromProvider(ptype: string): string {

View File

@ -14,7 +14,8 @@
import { t } from '$lib/translations';
import { toasts } from '$lib/stores/toasts';
export let data: {user: string; key: string};
export let user: string;
export let key: string;
let value = "";
let passwordConfirmation = "";
let passwordState: boolean|undefined;
@ -34,7 +35,7 @@
if (valid && passwordState && passwordConfirmState) {
formSent = true;
recoverAccount(data.user, data.key, value)
recoverAccount(user, key, value)
.then(
() => {
formSent = false;

View File

@ -1,4 +1,5 @@
<script lang="ts">
// @ts-ignore
import { escape } from 'html-escaper';
import {
ModalHeader,

View File

@ -1,7 +1,8 @@
<script lang="ts">
import { createEventDispatcher } from 'svelte';
import { escape } from 'html-escaper'; // @ts-ignore
// @ts-ignore
import { escape } from 'html-escaper';
import {
Input,
InputGroup,

View File

@ -1,5 +1,6 @@
<script lang="ts">
import { escape } from 'html-escaper'; // @ts-ignore
// @ts-ignore
import { escape } from 'html-escaper';
import {
Badge,
Button,

View File

@ -2,6 +2,7 @@ export interface ProviderInfos {
name: string;
description: string;
capabilities: Array<string>;
helplink: string;
};
export function getAvailableResourceTypes(pi: ProviderInfos): Array<number> {

View File

@ -18,7 +18,7 @@ export class Toast implements NewToast {
timeout: number | undefined = undefined;
timeoutInterval: ReturnType<typeof setTimeout> | undefined = undefined;
dismissFunc: (id: string) => void;
onclick: () => void;
onclick: undefined | (() => void) = undefined;
constructor(obj: NewToast, dismiss: (id: string) => void) {
if (obj.type !== undefined) this.type = obj.type;

View File

@ -18,7 +18,7 @@
import { toasts } from '$lib/stores/toasts';
import { t } from '$lib/translations';
export let data: {route: {id: string | null;};};
export let data: {route: {id: string | null;}; sw_state: {triedUpdate: boolean; hasUpdate: boolean;};};
window.onunhandledrejection = (e) => {
if (e.reason.name == "NotAuthorizedError") {

View File

@ -14,7 +14,7 @@ function onSWupdate(sw_state: {hasUpdate: boolean}) {
toasts.addToast({
title: get_store_value(t)('upgrade.title'),
message: get_store_value(t)('upgrade.content'),
onclick: () => location.reload(true),
onclick: () => location.reload(),
});
}
sw_state.hasUpdate = true;
@ -35,6 +35,9 @@ export const load: Load = async({ fetch, route, url }) => {
registration.onupdatefound = () => {
const installingWorker = registration.installing
if (installingWorker === null) return;
installingWorker.onstatechange = () => {
if (installingWorker.state === 'installed' && navigator.serviceWorker.controller) {
onSWupdate(sw_state);

View File

@ -1,7 +1,8 @@
<script lang="ts">
import { goto } from '$app/navigation';
import { escape } from 'html-escaper'; // @ts-ignore
// @ts-ignore
import { escape } from 'html-escaper';
import {
Button,
ButtonGroup,

View File

@ -13,7 +13,7 @@
import { toasts } from '$lib/stores/toasts';
let error = "";
export let data = { user: null, key: null };
export let data;
if (data.user || data.key) {
if (!data.user || !data.key) {

View File

@ -8,7 +8,7 @@
import RecoverAccountForm from '$lib/components/RecoverAccountForm.svelte';
let error = "";
export let data = { user: "", key: "" };
export let data;
</script>
<Container class="my-3">
@ -16,9 +16,9 @@
<Alert color="danger">
{error}
</Alert>
{:else if !data.user}
<ForgottenPasswordForm />
{:else if data.user && data.key}
<RecoverAccountForm user={data.user} key={data.key} />
{:else}
<RecoverAccountForm {data} />
<ForgottenPasswordForm />
{/if}
</Container>