Skip to content

Commit bd192da

Browse files
authored
refactor: do not use arrow functions in svelte templates (#505)
Signed-off-by: Philippe Martin <[email protected]>
1 parent 4e8c80c commit bd192da

File tree

9 files changed

+39
-25
lines changed

9 files changed

+39
-25
lines changed

packages/webview/src/component/dashboard/KubernetesProviderCard.svelte

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ let { provider }: Props = $props();
1717
const remote = getContext<Remote>(Remote);
1818
const navigationApi = remote.getProxy(API_NAVIGATION);
1919
20-
async function createNew(provider: KubernetesProvider): Promise<void> {
20+
async function createNew(): Promise<void> {
2121
return navigationApi.navigateToProviderNewConnection(provider.id);
2222
}
2323
</script>
@@ -36,7 +36,7 @@ async function createNew(provider: KubernetesProvider): Promise<void> {
3636

3737
<Button
3838
type="primary"
39-
on:click={(): Promise<void> => createNew(provider)}
39+
on:click={createNew}
4040
class="flex items-center"
4141
aria-label={provider.creationButtonTitle ?? 'Create new'}>
4242
<Fa icon={faPlusCircle} size="1.2x" class="mr-1" />

packages/webview/src/component/dashboard/NewProviderCard.svelte

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ const markdownText = `
1515
Install a new Kubernetes provider via extension. Navigate to extensions by pressing the button, install the ones you prefer and they will show up here.
1616
1717
More information: [creating a kube cluster](https://podman-desktop.io/docs/kubernetes/creating-a-kube-cluster)`;
18+
19+
async function navigateToExtensionsCatalog(): Promise<void> {
20+
return navigationApi.navigateToExtensionsCatalog('category:kubernetes keyword:provider not:installed');
21+
}
1822
</script>
1923

2024
<div class="rounded-xl p-5 text-left border border-dotted border-(--pd-content-divider)">
@@ -29,9 +33,7 @@ More information: [creating a kube cluster](https://podman-desktop.io/docs/kuber
2933

3034
<Button
3135
type="secondary"
32-
on:click={async (): Promise<void> => {
33-
await navigationApi.navigateToExtensionsCatalog('category:kubernetes keyword:provider not:installed');
34-
}}
36+
on:click={navigateToExtensionsCatalog}
3537
class="flex items-center"
3638
aria-label="See available extensions">
3739
<Fa icon={faPuzzlePiece} size="1.2x" class="mr-1" />

packages/webview/src/component/dashboard/NoSelectedContextPage.svelte

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ const remote = getContext<Remote>(Remote);
1212
const contextsApi = remote.getProxy(API_CONTEXTS);
1313
1414
let { availableContexts }: Props = $props();
15+
16+
async function setCurrentContext(context: string): Promise<void> {
17+
return contextsApi.setCurrentContext(context);
18+
}
1519
</script>
1620

1721
<div class="mt-8 flex justify-center overflow-auto">
@@ -27,7 +31,7 @@ let { availableContexts }: Props = $props();
2731
Available contexts:
2832
{#if availableContexts}
2933
{#each availableContexts as context, index (index)}
30-
<Link on:click={(): Promise<void> => contextsApi.setCurrentContext(context)}>{context}</Link
34+
<Link on:click={setCurrentContext.bind(undefined, context)}>{context}</Link
3135
>{#if index < availableContexts.length - 1},
3236
{/if}
3337
{/each}

packages/webview/src/component/ingresses-routes/columns/HostPath.svelte

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,18 @@ const ingressRouteHelper = dependencyAccessor.get<IngressRouteHelper>(IngressRou
1515
1616
const remote = getContext<Remote>(Remote);
1717
const systemApi = remote.getProxy(API_SYSTEM);
18+
19+
async function openExternal(url: string | undefined): Promise<void> {
20+
if (url) {
21+
await systemApi.openExternal(url);
22+
}
23+
}
1824
</script>
1925

2026
{#each ingressRouteHelper.getHostPaths(object) as hostPath, index (index)}
2127
<div class="text-(--pd-table-body-text) overflow-hidden text-ellipsis">
2228
{#if hostPath.url}
23-
<Link
24-
aria-label={hostPath.label}
25-
on:click={async (): Promise<void> => {
26-
if (hostPath.url) {
27-
await systemApi.openExternal(hostPath.url);
28-
}
29-
}}>
29+
<Link aria-label={hostPath.label} on:click={openExternal.bind(undefined, hostPath.url)}>
3030
{hostPath.label}
3131
</Link>
3232
{:else}

packages/webview/src/component/ingresses-routes/details/IngressSpecDetails.svelte

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ let { spec }: Props = $props();
1515
1616
const remote = getContext<Remote>(Remote);
1717
const systemApi = remote.getProxy(API_SYSTEM);
18+
19+
async function openExternal(link: string): Promise<boolean> {
20+
return systemApi.openExternal(link);
21+
}
1822
</script>
1923

2024
<tr>
@@ -74,7 +78,7 @@ const systemApi = remote.getProxy(API_SYSTEM);
7478
{#if rule.host}
7579
• Link:
7680
{@const link = `${spec.tls && spec.tls.length > 0 ? 'https' : 'http'}://${rule.host}${path.path}`}
77-
<Link on:click={(): Promise<boolean> => systemApi.openExternal(link)}>
81+
<Link on:click={openExternal.bind(undefined, link)}>
7882
{link}
7983
</Link>
8084
{/if}

packages/webview/src/component/ingresses-routes/details/RouteSpecDetails.svelte

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ let { spec }: Props = $props();
1515
1616
const remote = getContext<Remote>(Remote);
1717
const systemApi = remote.getProxy(API_SYSTEM);
18+
19+
async function openExternal(link: string): Promise<boolean> {
20+
return systemApi.openExternal(link);
21+
}
1822
</script>
1923

2024
<tr>
@@ -73,7 +77,7 @@ const systemApi = remote.getProxy(API_SYSTEM);
7377
<Cell>Link</Cell>
7478
<Cell>
7579
{@const link = `${spec.tls ? 'https' : 'http'}://${spec.host}${spec.path ?? ''}`}
76-
<Link on:click={(): Promise<boolean> => systemApi.openExternal(link)}>
80+
<Link on:click={openExternal.bind(undefined, link)}>
7781
{link}
7882
</Link>
7983
</Cell>

packages/webview/src/component/objects/columns/DeleteAction.svelte

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import type { ObjectProps } from './object-props';
77
import { getContext } from 'svelte';
88
import { Remote } from '/@/remote/remote';
99
import { API_CONTEXTS } from '@kubernetes-dashboard/channels';
10-
import type { KubernetesObjectUI } from '/@/component/objects/KubernetesObjectUI';
1110
import { DependencyAccessor } from '/@/inject/dependency-accessor';
1211
import { KubernetesObjectUIHelper } from '/@/component/objects/kubernetes-object-ui-helper';
1312
@@ -19,18 +18,18 @@ const contextsApi = remote.getProxy(API_CONTEXTS);
1918
const dependencyAccessor = getContext<DependencyAccessor>(DependencyAccessor);
2019
const objectHelper = dependencyAccessor.get<KubernetesObjectUIHelper>(KubernetesObjectUIHelper);
2120
22-
async function deleteKubernetesObject(obj: KubernetesObjectUI): Promise<void> {
23-
obj.status = 'DELETING';
24-
if (objectHelper.isNamespaced(obj)) {
25-
await contextsApi.deleteObject(obj.kind, obj.name, obj.namespace);
21+
async function deleteKubernetesObject(): Promise<void> {
22+
object.status = 'DELETING';
23+
if (objectHelper.isNamespaced(object)) {
24+
await contextsApi.deleteObject(object.kind, object.name, object.namespace);
2625
} else {
27-
await contextsApi.deleteObject(obj.kind, obj.name);
26+
await contextsApi.deleteObject(object.kind, object.name);
2827
}
2928
}
3029
</script>
3130

3231
<IconButton
3332
enabled={object.status !== 'DELETING'}
3433
title={`Delete ${object.kind}`}
35-
onClick={(): Promise<void> => deleteKubernetesObject(object)}
34+
onClick={deleteKubernetesObject}
3635
icon={faTrash} />

packages/webview/src/component/objects/columns/RestartAction.svelte

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,14 @@ let { object }: ObjectProps = $props();
1414
const remote = getContext<Remote>(Remote);
1515
const contextsApi = remote.getProxy(API_CONTEXTS);
1616
17-
async function restartKubernetesObject(obj: KubernetesNamespacedObjectUI): Promise<void> {
17+
async function restartKubernetesObject(): Promise<void> {
18+
const obj = object as KubernetesNamespacedObjectUI;
1819
await contextsApi.restartObject(obj.kind, obj.name, obj.namespace);
1920
}
2021
</script>
2122

2223
<IconButton
2324
enabled={object.status !== 'DELETING'}
2425
title={`Restart ${object.kind}`}
25-
onClick={(): Promise<void> => restartKubernetesObject(object as KubernetesNamespacedObjectUI)}
26+
onClick={restartKubernetesObject}
2627
icon={faRotate} />

packages/webview/src/component/pods/columns/OpenLinks.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ async function openEndpoint(endpoint: Endpoint): Promise<void> {
5959
{#each filterEndpoints(endpoints.data?.endpoints) as endpoint, index (index)}
6060
<IconButton
6161
title={`Open ${endpoint.inputName}`}
62-
onClick={(): Promise<void> => openEndpoint(endpoint)}
62+
onClick={openEndpoint.bind(undefined, endpoint)}
6363
icon={faExternalLinkSquareAlt} />
6464
{/each}
6565
{/if}

0 commit comments

Comments
 (0)