diff --git a/eslint.config.mjs b/eslint.config.mjs index 395a359b323..31202156372 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -305,7 +305,6 @@ export default [ rules: { '@typescript-eslint/no-empty-function': 'off', 'no-undef': 'off', - '@typescript-eslint/explicit-function-return-type': 'off', 'no-self-assign': 'off', 'sonarjs/no-empty-function': 'off', 'sonarjs/sonar-prefer-regexp-exec': 'off', diff --git a/packages/renderer/src/App.spec.ts b/packages/renderer/src/App.spec.ts index bef0c730f28..b5e3ce1a557 100644 --- a/packages/renderer/src/App.spec.ts +++ b/packages/renderer/src/App.spec.ts @@ -150,7 +150,7 @@ test('opens submenu when a `submenu` menu is opened', async () => { link: '/tosubmenu', tooltip: 'With submenu', type: 'submenu', - get counter() { + get counter(): number { return 0; }, items: [{} as NavigationRegistryEntry], diff --git a/packages/renderer/src/App.svelte b/packages/renderer/src/App.svelte index 2c33178b987..31f380af89f 100644 --- a/packages/renderer/src/App.svelte +++ b/packages/renderer/src/App.svelte @@ -119,7 +119,7 @@ window.events?.receive('navigate', (navigationRequest: unknown) => { - router.goto(nonSettingsPage)} /> + router.goto(nonSettingsPage)} /> {#if meta.url.startsWith('/preferences')} {/if} diff --git a/packages/renderer/src/AppNavigation.svelte b/packages/renderer/src/AppNavigation.svelte index 92b4593665e..ab728904a15 100644 --- a/packages/renderer/src/AppNavigation.svelte +++ b/packages/renderer/src/AppNavigation.svelte @@ -94,7 +94,7 @@ function onDidChangeConfigurationCallback(e: Event): void {
- authActions?.onButtonClick(event)}> + authActions?.onButtonClick(event)}>
diff --git a/packages/renderer/src/Loader.spec.ts b/packages/renderer/src/Loader.spec.ts index 76923a4f05e..6d6c05d8f10 100644 --- a/packages/renderer/src/Loader.spec.ts +++ b/packages/renderer/src/Loader.spec.ts @@ -32,7 +32,7 @@ import { lastPage } from './stores/breadcrumb'; // first, patch window object const callbacks = new Map(); const eventEmitter = { - receive: (message: string, callback: any) => { + receive: (message: string, callback: any): void => { callbacks.set(message, callback); }, }; diff --git a/packages/renderer/src/Loader.svelte b/packages/renderer/src/Loader.svelte index d4753943431..0923833e5d7 100644 --- a/packages/renderer/src/Loader.svelte +++ b/packages/renderer/src/Loader.svelte @@ -30,7 +30,7 @@ onMount(async () => { console.error('Unable to check if system is ready', error); } - const checkRemoteStarted = async () => { + const checkRemoteStarted = async (): Promise => { const extensionsStarted = await window.extensionSystemIsExtensionsStarted(); if (extensionsStarted) { window.dispatchEvent(new CustomEvent('extensions-already-started', {})); @@ -57,7 +57,7 @@ onDestroy(() => { // receive events from main process to install a new extension window.events?.receive('install-extension:from-id', (extensionId: unknown) => { - const action = async () => { + const action = async (): Promise => { const redirectPage = `/extensions/details/${extensionId}`; // need to open the extension page await tick(); diff --git a/packages/renderer/src/Route.svelte b/packages/renderer/src/Route.svelte index affe6c2d055..f99d14c2136 100644 --- a/packages/renderer/src/Route.svelte +++ b/packages/renderer/src/Route.svelte @@ -33,7 +33,7 @@ const route = createRouteObject({ }, }); -function processMetaBreadcrumbs(breadcrumbs?: Array) { +function processMetaBreadcrumbs(breadcrumbs?: Array): void { if (breadcrumbs) { const curPage = breadcrumbs[breadcrumbs.length - 1]; if (!curPage) return; diff --git a/packages/renderer/src/SubmenuNavigation.svelte b/packages/renderer/src/SubmenuNavigation.svelte index 0619bde7930..37f3d0c08b7 100644 --- a/packages/renderer/src/SubmenuNavigation.svelte +++ b/packages/renderer/src/SubmenuNavigation.svelte @@ -30,7 +30,7 @@ if (!pages[title]) {
{#each items ?? [] as item} - pages[title] = item.link} + pages[title] = item.link} > {/each}
diff --git a/packages/renderer/src/TelemetryService.ts b/packages/renderer/src/TelemetryService.ts index b77b1ff740a..89a0f6959d0 100644 --- a/packages/renderer/src/TelemetryService.ts +++ b/packages/renderer/src/TelemetryService.ts @@ -32,7 +32,7 @@ export class TelemetryService { private handlerFlusher: NodeJS.Timeout | undefined; - public handlePageOpen(pagePath: string) { + public handlePageOpen(pagePath: string): void { this.handlePageClose(); this.handlerFlusher = setTimeout(() => { @@ -45,7 +45,7 @@ export class TelemetryService { } // clear timeout - public handlePageClose() { + public handlePageClose(): void { if (this.handlerFlusher) { clearTimeout(this.handlerFlusher); this.handlerFlusher = undefined; diff --git a/packages/renderer/src/lib/actions/ActionUtils.spec.ts b/packages/renderer/src/lib/actions/ActionUtils.spec.ts index bc2c1853e86..f2d05ab5efd 100644 --- a/packages/renderer/src/lib/actions/ActionUtils.spec.ts +++ b/packages/renderer/src/lib/actions/ActionUtils.spec.ts @@ -29,11 +29,11 @@ test('Object with single non serializable property', async () => { }); test('Array with single non serializable property', async () => { - expect(removeNonSerializableProperties([() => {}])).toStrictEqual([]); + expect(removeNonSerializableProperties([(): void => {}])).toStrictEqual([]); }); test('Array with single non serializable and serializable property', async () => { - expect(removeNonSerializableProperties([() => {}, 'dummy'])).toStrictEqual(['dummy']); + expect(removeNonSerializableProperties([(): void => {}, 'dummy'])).toStrictEqual(['dummy']); }); test('Object with properties nested in object', async () => { @@ -56,7 +56,7 @@ test('Object with properties nested in array', async () => { removeNonSerializableProperties({ parent: [ { - nonSerializable: () => {}, + nonSerializable: (): void => {}, serializable: 'dummy', }, ], @@ -75,7 +75,7 @@ test('Object with single non serializable property nested in array', async () => removeNonSerializableProperties({ parent: [ { - nonSerializable: () => {}, + nonSerializable: (): void => {}, serializable: 'dummy', }, ], diff --git a/packages/renderer/src/lib/actions/ContributionActions.spec.ts b/packages/renderer/src/lib/actions/ContributionActions.spec.ts index 4a7cdac1be1..66e529920ac 100644 --- a/packages/renderer/src/lib/actions/ContributionActions.spec.ts +++ b/packages/renderer/src/lib/actions/ContributionActions.spec.ts @@ -31,7 +31,7 @@ beforeAll(() => { (window.events as unknown) = { // eslint-disable-next-line @typescript-eslint/no-explicit-any - receive: (_channel: string, func: any) => { + receive: (_channel: string, func: any): void => { func(); }, }; @@ -119,7 +119,7 @@ test('Expect executeCommand to be called with sanitize object', async () => { render(ContributionActions, { args: [ { - nonSerializable: () => {}, + nonSerializable: (): void => {}, serializable: 'hello', }, ], @@ -143,7 +143,7 @@ test('Expect executeCommand to be called with sanitize object nested', async () args: [ { parent: { - nonSerializable: () => {}, + nonSerializable: (): void => {}, serializable: 'hello', }, }, diff --git a/packages/renderer/src/lib/actions/ContributionActions.svelte b/packages/renderer/src/lib/actions/ContributionActions.svelte index 7c59bf5464d..1b2defce576 100644 --- a/packages/renderer/src/lib/actions/ContributionActions.svelte +++ b/packages/renderer/src/lib/actions/ContributionActions.svelte @@ -109,7 +109,7 @@ async function executeContribution(menu: Menu): Promise { {#each filteredContributions as menu} executeContribution(menu)} + onClick={(): Promise => executeContribution(menu)} menu={dropdownMenu} icon={getIcon(menu)} detailed={detailed} diff --git a/packages/renderer/src/lib/appearance/IconImage.svelte b/packages/renderer/src/lib/appearance/IconImage.svelte index 9bfcbadcff9..219750e69dc 100644 --- a/packages/renderer/src/lib/appearance/IconImage.svelte +++ b/packages/renderer/src/lib/appearance/IconImage.svelte @@ -8,7 +8,7 @@ let imgSrc: string | undefined = undefined; $: getImgSrc(image); -function getImgSrc(image: string | { light: string; dark: string } | undefined) { +function getImgSrc(image: string | { light: string; dark: string } | undefined): void { new AppearanceUtil() .getImage(image) .then(s => (imgSrc = s)) diff --git a/packages/renderer/src/lib/authentication/AuthActions.svelte b/packages/renderer/src/lib/authentication/AuthActions.svelte index 1491adbdd94..e6720f1b140 100644 --- a/packages/renderer/src/lib/authentication/AuthActions.svelte +++ b/packages/renderer/src/lib/authentication/AuthActions.svelte @@ -44,7 +44,7 @@ export function onButtonClick(e: MouseEvent): void { handleNavigation({ page: NavigationPage.AUTHENTICATION })} /> + onClick={(): void => handleNavigation({ page: NavigationPage.AUTHENTICATION })} /> {#each $authenticationProviders as provider} {@const sessionRequests = provider.sessionRequests ?? []} @@ -52,7 +52,7 @@ export function onButtonClick(e: MouseEvent): void { {#each provider.accounts as account} window.requestAuthenticationProviderSignOut(provider.id, account.id)} + onClick={(): Promise => window.requestAuthenticationProviderSignOut(provider.id, account.id)} icon={faSignOut} /> {/each} {/if} @@ -60,7 +60,7 @@ export function onButtonClick(e: MouseEvent): void { {#each sessionRequests as request} window.requestAuthenticationProviderSignIn(request.id)} + onClick={(): Promise => window.requestAuthenticationProviderSignIn(request.id)} icon={faSignIn} /> {/each} {/each} diff --git a/packages/renderer/src/lib/compose/ComposeActions.svelte b/packages/renderer/src/lib/compose/ComposeActions.svelte index 793c8cee0d7..0abb329ec48 100644 --- a/packages/renderer/src/lib/compose/ComposeActions.svelte +++ b/packages/renderer/src/lib/compose/ComposeActions.svelte @@ -58,7 +58,7 @@ function handleError(errorMessage: string): void { onUpdate(compose); } -async function startCompose() { +async function startCompose(): Promise { inProgress(true, 'STARTING'); try { await window.startContainersByLabel(compose.engineId, composeLabel, compose.name); @@ -68,7 +68,7 @@ async function startCompose() { inProgress(false); } } -async function stopCompose() { +async function stopCompose(): Promise { inProgress(true, 'STOPPING'); try { await window.stopContainersByLabel(compose.engineId, composeLabel, compose.name); @@ -79,7 +79,7 @@ async function stopCompose() { } } -async function deleteCompose() { +async function deleteCompose(): Promise { inProgress(true, 'DELETING'); try { await window.deleteContainersByLabel(compose.engineId, composeLabel, compose.name); @@ -90,7 +90,7 @@ async function deleteCompose() { } } -async function restartCompose() { +async function restartCompose(): Promise { inProgress(true, 'RESTARTING'); try { await window.restartContainersByLabel(compose.engineId, composeLabel, compose.name); @@ -121,7 +121,7 @@ if (dropdownMenu) { startCompose()} + onClick={startCompose} hidden={compose.status === 'RUNNING' || compose.status === 'STOPPING'} detailed={detailed} inProgress={compose.actionInProgress && compose.status === 'STARTING'} @@ -130,7 +130,7 @@ if (dropdownMenu) { stopCompose()} + onClick={stopCompose} hidden={!(compose.status === 'RUNNING' || compose.status === 'STOPPING')} detailed={detailed} inProgress={compose.actionInProgress && compose.status === 'STOPPING'} @@ -138,7 +138,7 @@ if (dropdownMenu) { withConfirmation(deleteCompose, `delete compose ${compose.name}`)} + onClick={(): void => withConfirmation(deleteCompose, `delete compose ${compose.name}`)} icon={faTrash} detailed={detailed} inProgress={compose.actionInProgress && compose.status === 'DELETING'} /> @@ -148,21 +148,21 @@ if (dropdownMenu) { {#if !detailed} openGenerateKube()} + onClick={openGenerateKube} menu={dropdownMenu} detailed={detailed} icon={faFileCode} /> {/if} deployToKubernetes()} + onClick={deployToKubernetes} menu={dropdownMenu} hidden={compose.engineType !== 'podman'} detailed={detailed} icon={faRocket} /> restartCompose()} + onClick={restartCompose} menu={dropdownMenu} detailed={detailed} icon={faArrowsRotate} /> diff --git a/packages/renderer/src/lib/compose/ComposeDetails.spec.ts b/packages/renderer/src/lib/compose/ComposeDetails.spec.ts index 7c9e3d35b19..6f65454e568 100644 --- a/packages/renderer/src/lib/compose/ComposeDetails.spec.ts +++ b/packages/renderer/src/lib/compose/ComposeDetails.spec.ts @@ -49,7 +49,7 @@ beforeAll(() => { onDidUpdateProviderStatusMock.mockImplementation(() => Promise.resolve()); (window.events as unknown) = { - receive: (_channel: string, func: () => void) => { + receive: (_channel: string, func: () => void): void => { func(); }, }; diff --git a/packages/renderer/src/lib/compose/ComposeDetails.svelte b/packages/renderer/src/lib/compose/ComposeDetails.svelte index 05e75af6e47..e14d914e56a 100644 --- a/packages/renderer/src/lib/compose/ComposeDetails.svelte +++ b/packages/renderer/src/lib/compose/ComposeDetails.svelte @@ -94,7 +94,7 @@ onDestroy(() => {
 
- (compose = compose)} /> + (compose = compose)} /> diff --git a/packages/renderer/src/lib/compose/ComposeDetailsLogs.svelte b/packages/renderer/src/lib/compose/ComposeDetailsLogs.svelte index d4a02722315..9b0061d0087 100644 --- a/packages/renderer/src/lib/compose/ComposeDetailsLogs.svelte +++ b/packages/renderer/src/lib/compose/ComposeDetailsLogs.svelte @@ -32,7 +32,7 @@ $: { const colourizedContainerName = new Map(); // Callback for logs which will output the logs to the terminal -function callback(name: string, data: string) { +function callback(name: string, data: string): void { if (name === 'first-message') { noLogs = false; } else if (name === 'data') { @@ -61,7 +61,7 @@ async function fetchComposeLogs(): Promise { // in order to add padding to each output / make it look nice. const promises = compose.containers.map(container => { // Set a customer callback that will add the container name and padding - const logsCallback = (name: string, data: string) => { + const logsCallback = (name: string, data: string): void => { const padding = ' '.repeat(maxNameLength - container.name.length); const colouredName = colourizedContainerName.get(container.name); diff --git a/packages/renderer/src/lib/compose/ComposeDetailsSummary.svelte b/packages/renderer/src/lib/compose/ComposeDetailsSummary.svelte index c4ecc28d123..a7cf305b965 100644 --- a/packages/renderer/src/lib/compose/ComposeDetailsSummary.svelte +++ b/packages/renderer/src/lib/compose/ComposeDetailsSummary.svelte @@ -11,7 +11,7 @@ import type { ComposeInfoUI } from './ComposeInfoUI'; export let compose: ComposeInfoUI; -function openContainer(containerID: string) { +function openContainer(containerID: string): void { handleNavigation({ page: NavigationPage.CONTAINER_LOGS, parameters: { @@ -48,7 +48,7 @@ function openContainer(containerID: string) { {#each compose.containers as container} - openContainer(container.id)}>{container.name} + openContainer(container.id)}>{container.name} {container.id} diff --git a/packages/renderer/src/lib/configmaps-secrets/ConfigMapDetails.svelte b/packages/renderer/src/lib/configmaps-secrets/ConfigMapDetails.svelte index 24be0b197fe..11161eecba1 100644 --- a/packages/renderer/src/lib/configmaps-secrets/ConfigMapDetails.svelte +++ b/packages/renderer/src/lib/configmaps-secrets/ConfigMapDetails.svelte @@ -44,7 +44,7 @@ onMount(() => { }); }); -async function loadDetails() { +async function loadDetails(): Promise { const getKubeConfigMap = await window.kubernetesReadNamespacedConfigMap(configMap.name, namespace); if (getKubeConfigMap) { kubeConfigMap = getKubeConfigMap; @@ -58,7 +58,7 @@ async function loadDetails() { - (configMap = configMap)} /> + (configMap = configMap)} />
diff --git a/packages/renderer/src/lib/configmaps-secrets/ConfigMapSecretActions.svelte b/packages/renderer/src/lib/configmaps-secrets/ConfigMapSecretActions.svelte index 70aacc9e5be..992d507add0 100644 --- a/packages/renderer/src/lib/configmaps-secrets/ConfigMapSecretActions.svelte +++ b/packages/renderer/src/lib/configmaps-secrets/ConfigMapSecretActions.svelte @@ -32,7 +32,7 @@ async function deleteConfigMapSecret(): Promise { + onClick={(): void => withConfirmation( deleteConfigMapSecret, `delete ${configmapSecretUtils.isSecret(configMapSecret) ? 'secret' : 'configmap'} ${configMapSecret.name}`, diff --git a/packages/renderer/src/lib/configmaps-secrets/ConfigMapSecretColumnName.svelte b/packages/renderer/src/lib/configmaps-secrets/ConfigMapSecretColumnName.svelte index 7477ab49221..de661f9654b 100644 --- a/packages/renderer/src/lib/configmaps-secrets/ConfigMapSecretColumnName.svelte +++ b/packages/renderer/src/lib/configmaps-secrets/ConfigMapSecretColumnName.svelte @@ -6,7 +6,7 @@ import type { ConfigMapSecretUI } from './ConfigMapSecretUI'; export let object: ConfigMapSecretUI; -function openDetails() { +function openDetails(): void { const configmapSecretUtils = new ConfigMapSecretUtils(); if (configmapSecretUtils.isSecret(object)) { router.goto( @@ -22,7 +22,7 @@ function openDetails() { } -
- (container = container)} /> + (container = container)} />
diff --git a/packages/renderer/src/lib/container/ContainerDetailsLogs.svelte b/packages/renderer/src/lib/container/ContainerDetailsLogs.svelte index defaa97d4a0..d9b7d3491fa 100644 --- a/packages/renderer/src/lib/container/ContainerDetailsLogs.svelte +++ b/packages/renderer/src/lib/container/ContainerDetailsLogs.svelte @@ -33,7 +33,7 @@ let terminalParentDiv: HTMLDivElement; let logsTerminal: Terminal; -function callback(name: string, data: string) { +function callback(name: string, data: string): void { if (name === 'first-message') { noLogs = false; // clear on the first message @@ -51,7 +51,7 @@ function callback(name: string, data: string) { } } -async function fetchContainerLogs() { +async function fetchContainerLogs(): Promise { // grab logs of the container await window.logsContainer({ engineId: container.engineId, containerId: container.id, callback }); } diff --git a/packages/renderer/src/lib/container/ContainerDetailsSummary.svelte b/packages/renderer/src/lib/container/ContainerDetailsSummary.svelte index 72666c37d4d..8997e137dea 100644 --- a/packages/renderer/src/lib/container/ContainerDetailsSummary.svelte +++ b/packages/renderer/src/lib/container/ContainerDetailsSummary.svelte @@ -41,7 +41,7 @@ if (container.groupInfo.created) { Image - router.goto(container.imageHref ?? $router.path)}>{container.image} + router.goto(container.imageHref ?? $router.path)}>{container.image} {#if container.command} @@ -72,7 +72,7 @@ if (container.groupInfo.created) { {#if Object.entries(container.labels).length > 0} - (labelsDropdownOpen = !labelsDropdownOpen)}> + (labelsDropdownOpen = !labelsDropdownOpen)}> Labels diff --git a/packages/renderer/src/lib/container/ContainerDetailsTerminal.svelte b/packages/renderer/src/lib/container/ContainerDetailsTerminal.svelte index ec0b6611e30..2b0c62ee032 100644 --- a/packages/renderer/src/lib/container/ContainerDetailsTerminal.svelte +++ b/packages/renderer/src/lib/container/ContainerDetailsTerminal.svelte @@ -37,7 +37,7 @@ $effect(() => { lastState = container.state; }); -async function restartTerminal() { +async function restartTerminal(): Promise { await executeShellIntoContainer(); window.dispatchEvent(new Event('resize')); } @@ -48,11 +48,11 @@ router.subscribe(route => { }); // update terminal when receiving data -function receiveDataCallback(data: Buffer) { +function receiveDataCallback(data: Buffer): void { shellTerminal.write(data.toString()); } -function receiveEndCallback() { +function receiveEndCallback(): void { // need to reopen a new terminal if container is running if (sendCallbackId && containerState === 'RUNNING') { window @@ -68,7 +68,7 @@ function receiveEndCallback() { } // call exec command -async function executeShellIntoContainer() { +async function executeShellIntoContainer(): Promise { if (container.state !== 'RUNNING') { return; } @@ -92,7 +92,7 @@ async function executeShellIntoContainer() { } // refresh -async function refreshTerminal() { +async function refreshTerminal(): Promise { // missing element, return if (!terminalXtermDiv) { return; diff --git a/packages/renderer/src/lib/container/ContainerDetailsTtyTerminal.svelte b/packages/renderer/src/lib/container/ContainerDetailsTtyTerminal.svelte index 03a5c69347c..9fccef886d6 100644 --- a/packages/renderer/src/lib/container/ContainerDetailsTtyTerminal.svelte +++ b/packages/renderer/src/lib/container/ContainerDetailsTtyTerminal.svelte @@ -20,7 +20,7 @@ $: listenTerminalData(attachContainerTerminal, callbackId); // listenTerminalData only when attachContainerTerminal is bound from TerminalWindow component // and callbackId is defined -function listenTerminalData(terminal: Terminal, cbId: number) { +function listenTerminalData(terminal: Terminal, cbId: number): void { if (!attachContainerTerminal || !cbId) { return; } @@ -37,16 +37,16 @@ function listenTerminalData(terminal: Terminal, cbId: number) { } // update terminal when receiving data -function receiveDataCallback(data: Buffer) { +function receiveDataCallback(data: Buffer): void { attachContainerTerminal?.write(data.toString()); } -function receiveEndCallback() { +function receiveEndCallback(): void { closed = true; } // call exec command -async function attachToContainer() { +async function attachToContainer(): Promise { if (container.state !== 'RUNNING') { return; } diff --git a/packages/renderer/src/lib/container/ContainerEmptyScreen.svelte b/packages/renderer/src/lib/container/ContainerEmptyScreen.svelte index dbae1a80a3a..8dc7b3946b0 100644 --- a/packages/renderer/src/lib/container/ContainerEmptyScreen.svelte +++ b/packages/renderer/src/lib/container/ContainerEmptyScreen.svelte @@ -52,7 +52,7 @@ function getCommandLine(stoppedOnly: boolean): string { return 'podman run quay.io/podman/hello'; } } -async function runContainer(commandLine: string) { +async function runContainer(commandLine: string): Promise { try { inProgress = true; if (selectedProviderConnection) { @@ -84,7 +84,7 @@ async function runContainer(commandLine: string) { title={title} message={messageCommandLine} commandline={commandLine} - on:click={() => window.clipboardWriteText(commandLine)}> + on:click={(): Promise => window.clipboardWriteText(commandLine)}> diff --git a/packages/renderer/src/lib/container/ContainerExport.svelte b/packages/renderer/src/lib/container/ContainerExport.svelte index 5fefb6aab57..fad170228ec 100644 --- a/packages/renderer/src/lib/container/ContainerExport.svelte +++ b/packages/renderer/src/lib/container/ContainerExport.svelte @@ -40,7 +40,7 @@ onMount(() => { }); }); -async function selectFolderPath() { +async function selectFolderPath(): Promise { if (!container) return; const result = await window.saveDialog({ @@ -63,7 +63,7 @@ async function selectFolderPath() { invalidFolder = false; } -async function exportContainer() { +async function exportContainer(): Promise { if (!container) return; exportedError = ''; @@ -103,12 +103,12 @@ async function exportContainer() { id="input-export-container-name" aria-invalid={invalidFolder} />
+ {#if selectedItemsNumber > 0}
- - @@ -432,7 +432,7 @@ $: containersAndGroups = containerGroups.map(group => columns={columns} row={row} defaultSortColumn="Name" - on:update={() => (containerGroups = [...containerGroups])}> + on:update={(): ContainerGroupInfoUI[] => (containerGroups = [...containerGroups])}> {#if providerConnections.length === 0} @@ -442,7 +442,7 @@ $: containersAndGroups = containerGroups.map(group => { + on:resetFilter={(e): void => { searchTerm = containerUtils.filterResetSearchTerm(searchTerm); e.preventDefault(); }} @@ -459,7 +459,7 @@ $: containersAndGroups = containerGroups.map(group => {#if openChoiceModal} { + on:close={(): void => { openChoiceModal = false; }}>
@@ -470,8 +470,8 @@ $: containersAndGroups = containerGroups.map(group =>
- - + +
{/if} diff --git a/packages/renderer/src/lib/container/ContainerListCompose.spec.ts b/packages/renderer/src/lib/container/ContainerListCompose.spec.ts index 705cf1fe2e0..235488c2e44 100644 --- a/packages/renderer/src/lib/container/ContainerListCompose.spec.ts +++ b/packages/renderer/src/lib/container/ContainerListCompose.spec.ts @@ -63,7 +63,7 @@ beforeAll(() => { getContributedMenusMock.mockImplementation(() => Promise.resolve([])); (window.events as unknown) = { - receive: (_channel: string, func: any) => { + receive: (_channel: string, func: any): void => { func(); }, }; diff --git a/packages/renderer/src/lib/container/ContainerStatistics.svelte b/packages/renderer/src/lib/container/ContainerStatistics.svelte index 1d8674f76fa..59be85ca125 100644 --- a/packages/renderer/src/lib/container/ContainerStatistics.svelte +++ b/packages/renderer/src/lib/container/ContainerStatistics.svelte @@ -25,7 +25,7 @@ let firstIteration = true; let cpuUsage: string; let memoryUsage: string; -export async function updateStatistics(containerStats: ContainerStatsInfo) { +export async function updateStatistics(containerStats: ContainerStatsInfo): Promise { // we need enough data to compute the CPU usage if (firstIteration) { firstIteration = false; diff --git a/packages/renderer/src/lib/container/container-utils.ts b/packages/renderer/src/lib/container/container-utils.ts index f5251721006..dccf06a3d1a 100644 --- a/packages/renderer/src/lib/container/container-utils.ts +++ b/packages/renderer/src/lib/container/container-utils.ts @@ -33,7 +33,7 @@ import type { ContainerGroupInfoUI, ContainerGroupPartInfoUI, ContainerInfoUI } import { ContainerGroupInfoTypeUI } from './ContainerInfoUI'; export class ContainerUtils { - getName(containerInfo: ContainerInfo) { + getName(containerInfo: ContainerInfo): string { // If the container has no name, return an empty string. if (containerInfo.Names.length === 0) { return ''; @@ -311,20 +311,20 @@ export class ContainerUtils { context.setValue('containerImageName', container.Image); } - filterResetRunning(f: string) { + filterResetRunning(f: string): string { return f .split(' ') .filter(part => !part.startsWith('is:running') && !part.startsWith('is:stopped')) .join(' '); } - filterSetRunning(f: string) { + filterSetRunning(f: string): string { const parts = f.split(' ').filter(part => !part.startsWith('is:running') && !part.startsWith('is:stopped')); parts.push('is:running'); return parts.join(' '); } - filterSetStopped(f: string) { + filterSetStopped(f: string): string { const parts = f.split(' ').filter(part => !part.startsWith('is:running') && !part.startsWith('is:stopped')); parts.push('is:stopped'); return parts.join(' '); diff --git a/packages/renderer/src/lib/context/contextKey.spec.ts b/packages/renderer/src/lib/context/contextKey.spec.ts index 878ef8faf69..c675ed3b22c 100644 --- a/packages/renderer/src/lib/context/contextKey.spec.ts +++ b/packages/renderer/src/lib/context/contextKey.spec.ts @@ -28,9 +28,9 @@ import { suite, test, vi } from 'vitest'; import { ContextKeyExpr, type ContextKeyExpression, implies, initContextKeysPlatform } from './contextKey.js'; -function createContext(ctx: any) { +function createContext(ctx: any): { getValue: (key: string) => any } { return { - getValue: (key: string) => { + getValue: (key: string): any => { return ctx[key]; }, }; diff --git a/packages/renderer/src/lib/context/contextKey.ts b/packages/renderer/src/lib/context/contextKey.ts index 32284d95b78..cef9f9ccf9b 100644 --- a/packages/renderer/src/lib/context/contextKey.ts +++ b/packages/renderer/src/lib/context/contextKey.ts @@ -48,7 +48,7 @@ export async function initContextKeysPlatform(): Promise { } /** allow register constant context keys that are known only after startup; requires running `substituteConstants` on the context key - https://github.com/microsoft/vscode/issues/174218#issuecomment-1437972127 */ -export function setConstant(key: string, value: boolean) { +export function setConstant(key: string, value: boolean): void { if (CONSTANT_VALUES.get(key) !== undefined) { throw new Error('contextkey.setConstant(k, v) invoked with already set constant `k`'); } @@ -487,7 +487,7 @@ export class Parser { offset: number; lexeme: string; }, - ) { + ): number { let parenBalance = 0; switch (followingToken.type) { case TokenType.LParen: @@ -610,11 +610,11 @@ export class Parser { } // careful: this can throw if current token is the initial one (ie index = 0) - private _previous() { + private _previous(): Token { return this._tokens[this._current - 1]; } - private _matchOne(token: TokenType) { + private _matchOne(token: TokenType): boolean { if (this._check(token)) { this._advance(); return true; @@ -623,14 +623,14 @@ export class Parser { return false; } - private _advance() { + private _advance(): Token { if (!this._isAtEnd()) { this._current++; } return this._previous(); } - private _consume(type: TokenType, message: string) { + private _consume(type: TokenType, message: string): Token { if (this._check(type)) { return this._advance(); } @@ -638,7 +638,7 @@ export class Parser { throw this._errExpectedButGot(message, this._peek()); } - private _errExpectedButGot(expected: string, got: Token, additionalInfo?: string) { + private _errExpectedButGot(expected: string, got: Token, additionalInfo?: string): Error { const message = `Expected: ${expected}\nReceived: '${Scanner.getLexeme(got)}'.`; const offset = got.offset; const lexeme = Scanner.getLexeme(got); @@ -646,15 +646,15 @@ export class Parser { return Parser._parseError; } - private _check(type: TokenType) { + private _check(type: TokenType): boolean { return this._peek().type === type; } - private _peek() { + private _peek(): Token { return this._tokens[this._current]; } - private _isAtEnd() { + private _isAtEnd(): boolean { return this._peek().type === TokenType.EOF; } } @@ -2253,7 +2253,7 @@ function allElementsIncluded(p: ContextKeyExpression[], q: ContextKeyExpression[ return pIndex === p.length; } -function getTerminals(node: ContextKeyExpression) { +function getTerminals(node: ContextKeyExpression): ContextKeyExpression[] { if (node.type === ContextKeyExprType.Or) { return node.expr; } diff --git a/packages/renderer/src/lib/context/scanner.spec.ts b/packages/renderer/src/lib/context/scanner.spec.ts index a24b5c05341..a9f520dc4ca 100644 --- a/packages/renderer/src/lib/context/scanner.spec.ts +++ b/packages/renderer/src/lib/context/scanner.spec.ts @@ -28,7 +28,7 @@ import { test } from 'vitest'; import { Scanner, type Token, TokenType } from './scanner'; -function tokenTypeToStr(token: Token) { +function tokenTypeToStr(token: Token): string { switch (token.type) { case TokenType.LParen: return '('; @@ -75,7 +75,7 @@ function tokenTypeToStr(token: Token) { } } -function scan(input: string) { +function scan(input: string): { type: string; offset: number; lexeme?: string }[] { return new Scanner() .reset(input) .scan() diff --git a/packages/renderer/src/lib/context/scanner.ts b/packages/renderer/src/lib/context/scanner.ts index afaec890879..83b518b59c3 100644 --- a/packages/renderer/src/lib/context/scanner.ts +++ b/packages/renderer/src/lib/context/scanner.ts @@ -99,7 +99,7 @@ export type LexingError = { additionalInfo?: string; }; -function hintDidYouMean(...meant: string[]) { +function hintDidYouMean(...meant: string[]): string | undefined { switch (meant.length) { case 1: return `Did you mean ${meant[0]}?`; @@ -199,7 +199,7 @@ export class Scanner { return this._errors; } - reset(value: string) { + reset(value: string): Scanner { this._input = value; this._start = 0; @@ -210,7 +210,7 @@ export class Scanner { return this; } - scan() { + scan(): Token[] { while (!this._isAtEnd()) { this._start = this._current; @@ -223,7 +223,7 @@ export class Scanner { return Array.from(this._tokens); } - scanAtPosition(ch: number) { + scanAtPosition(ch: number): void { switch (ch) { case CharCode.OpenParen: this._addToken(TokenType.LParen); @@ -275,7 +275,7 @@ export class Scanner { } } - _scanExclamationMark() { + _scanExclamationMark(): void { if (this._match(CharCode.Equals)) { const isTripleEq = this._match(CharCode.Equals); // eat last `=` if `!==` this._tokens.push({ type: TokenType.NotEq, offset: this._start, isTripleEq }); @@ -284,7 +284,7 @@ export class Scanner { } } - _scanEquals() { + _scanEquals(): void { if (this._match(CharCode.Equals)) { // support `==` const isTripleEq = this._match(CharCode.Equals); // eat last `=` if `===` @@ -296,7 +296,7 @@ export class Scanner { } } - _scanAmpersand() { + _scanAmpersand(): void { if (this._match(CharCode.Ampersand)) { this._addToken(TokenType.And); } else { @@ -304,7 +304,7 @@ export class Scanner { } } - _scanPipe() { + _scanPipe(): void { if (this._match(CharCode.Pipe)) { this._addToken(TokenType.Or); } else { @@ -331,11 +331,11 @@ export class Scanner { return this._isAtEnd() ? CharCode.Null : this._input.charCodeAt(this._current); } - private _addToken(type: TokenTypeWithoutLexeme) { + private _addToken(type: TokenTypeWithoutLexeme): void { this._tokens.push({ type, offset: this._start }); } - private _error(additional?: string) { + private _error(additional?: string): void { const offset = this._start; const lexeme = this._input.substring(this._start, this._current); const errToken: Token = { type: TokenType.Error, offset: this._start, lexeme }; @@ -345,7 +345,7 @@ export class Scanner { /* eslint-disable-next-line no-useless-escape, sonarjs/duplicates-in-character-class */ private stringRe = /[a-zA-Z0-9_<>\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy; - private _string() { + private _string(): void { this.stringRe.lastIndex = this._start; const match = this.stringRe.exec(this._input); if (match) { @@ -361,7 +361,7 @@ export class Scanner { } // captures the lexeme without the leading and trailing ' - private _quotedString() { + private _quotedString(): void { while (this._peek() !== CharCode.SingleQuote && !this._isAtEnd()) { this._advance(); } @@ -387,7 +387,7 @@ export class Scanner { * * Note that we want slashes within a regex to be escaped, e.g., /file:\\/\\/\\// should match `file:///` */ - private _regex() { + private _regex(): void { let p = this._current; let inEscape = false; @@ -430,7 +430,7 @@ export class Scanner { this._tokens.push({ type: TokenType.RegexStr, lexeme, offset: this._start }); } - private _isAtEnd() { + private _isAtEnd(): boolean { return this._current >= this._input.length; } } diff --git a/packages/renderer/src/lib/dashboard/NewContentOnDashboardBadge.svelte b/packages/renderer/src/lib/dashboard/NewContentOnDashboardBadge.svelte index a6e3948ee23..3cbaf803b43 100644 --- a/packages/renderer/src/lib/dashboard/NewContentOnDashboardBadge.svelte +++ b/packages/renderer/src/lib/dashboard/NewContentOnDashboardBadge.svelte @@ -54,7 +54,7 @@ function hasNewProvider(oldProvidersId: string[], newProvidersId: string[]): boo return false; } -function onHide() { +function onHide(): void { hasNewProviders = false; hasNewNotifications = false; } diff --git a/packages/renderer/src/lib/dashboard/NotificationCardItem.svelte b/packages/renderer/src/lib/dashboard/NotificationCardItem.svelte index 744d6e0294f..501cdb2eccb 100644 --- a/packages/renderer/src/lib/dashboard/NotificationCardItem.svelte +++ b/packages/renderer/src/lib/dashboard/NotificationCardItem.svelte @@ -8,7 +8,7 @@ import Markdown from '../markdown/Markdown.svelte'; export let notification: NotificationCard; -async function removeNotification(id: number) { +async function removeNotification(id: number): Promise { await window.removeNotification(id); } @@ -38,7 +38,7 @@ async function removeNotification(id: number) {
{/if} diff --git a/packages/renderer/src/lib/dashboard/PreflightChecks.svelte b/packages/renderer/src/lib/dashboard/PreflightChecks.svelte index 2396ab0ad88..c3357253450 100644 --- a/packages/renderer/src/lib/dashboard/PreflightChecks.svelte +++ b/packages/renderer/src/lib/dashboard/PreflightChecks.svelte @@ -38,7 +38,7 @@ async function openLink(url: string): Promise { {#if preCheck.docLinks} See: {#each preCheck.docLinks as link} - await openLink(link.url)}>{link.title} + => await openLink(link.url)}>{link.title} {/each} {/if} {/if} diff --git a/packages/renderer/src/lib/dashboard/ProviderConfigured.spec.ts b/packages/renderer/src/lib/dashboard/ProviderConfigured.spec.ts index 871ffb7f4bf..66d75dff6ca 100644 --- a/packages/renderer/src/lib/dashboard/ProviderConfigured.spec.ts +++ b/packages/renderer/src/lib/dashboard/ProviderConfigured.spec.ts @@ -37,13 +37,13 @@ beforeAll(() => { (window as any).startProvider = vi.fn(); // mock that autostart is configured as true - (window.getConfigurationValue as unknown) = (_key: string) => { + (window.getConfigurationValue as unknown) = (_key: string): boolean => { return true; }; // fake the window.events object (window.events as unknown) = { - receive: (_channel: string, func: any) => { + receive: (_channel: string, func: any): void => { func(); }, }; diff --git a/packages/renderer/src/lib/dashboard/ProviderConfigured.svelte b/packages/renderer/src/lib/dashboard/ProviderConfigured.svelte index 6b984fd8ecf..c7120c1262c 100644 --- a/packages/renderer/src/lib/dashboard/ProviderConfigured.svelte +++ b/packages/renderer/src/lib/dashboard/ProviderConfigured.svelte @@ -25,7 +25,7 @@ let runError: string | undefined = undefined; let preflightChecks: CheckStatus[] = []; -async function runProvider() { +async function runProvider(): Promise { runError = undefined; runInProgress = true; try { @@ -62,7 +62,7 @@ onMount(async () => { {/if} needs to be started.

-
@@ -89,7 +89,7 @@ onMount(async () => {
{#if provider.updateInfo?.version && provider.version !== provider.updateInfo?.version} - (preflightChecks = checks)} provider={provider} /> + (preflightChecks = checks)} provider={provider} /> {/if} diff --git a/packages/renderer/src/lib/dashboard/ProviderConfiguring.svelte b/packages/renderer/src/lib/dashboard/ProviderConfiguring.svelte index 232987b5774..2de81812935 100644 --- a/packages/renderer/src/lib/dashboard/ProviderConfiguring.svelte +++ b/packages/renderer/src/lib/dashboard/ProviderConfiguring.svelte @@ -30,7 +30,7 @@ let logsTerminal; let resizeObserver: ResizeObserver; let termFit: FitAddon; -async function refreshTerminal() { +async function refreshTerminal(): Promise { // missing element, return if (!logsXtermDiv) { console.log('missing xterm div, exiting...'); @@ -108,7 +108,7 @@ onDestroy(() => { {#if provider.updateInfo?.version && provider.version !== provider.updateInfo?.version} - (preflightChecks = checks)} provider={provider} /> + (preflightChecks = checks)} provider={provider} /> {/if} diff --git a/packages/renderer/src/lib/dashboard/ProviderDetectionChecksButton.svelte b/packages/renderer/src/lib/dashboard/ProviderDetectionChecksButton.svelte index 5039b62a44a..5944fd825ed 100644 --- a/packages/renderer/src/lib/dashboard/ProviderDetectionChecksButton.svelte +++ b/packages/renderer/src/lib/dashboard/ProviderDetectionChecksButton.svelte @@ -6,12 +6,12 @@ import { Button } from '@podman-desktop/ui-svelte'; import type { ProviderInfo } from '/@api/provider-info'; export let provider: ProviderInfo; -export let onDetectionChecks = (_detectionChecks: ProviderDetectionCheck[]) => {}; +export let onDetectionChecks = (_detectionChecks: ProviderDetectionCheck[]): void => {}; let viewInProgress = false; let mode: 'view' | 'hide' = 'view'; -async function toggleDetectionChecks(provider: ProviderInfo) { +async function toggleDetectionChecks(provider: ProviderInfo): Promise { let detectionChecks: ProviderDetectionCheck[] = []; if (mode === 'view') { viewInProgress = true; @@ -33,7 +33,7 @@ async function toggleDetectionChecks(provider: ProviderInfo) { {#if provider.detectionChecks.length > 0} {/if} diff --git a/packages/renderer/src/lib/dashboard/ProviderInstalled.spec.ts b/packages/renderer/src/lib/dashboard/ProviderInstalled.spec.ts index 30e3f632e92..2c766a453d6 100644 --- a/packages/renderer/src/lib/dashboard/ProviderInstalled.spec.ts +++ b/packages/renderer/src/lib/dashboard/ProviderInstalled.spec.ts @@ -66,7 +66,7 @@ beforeAll(() => { (window as any).telemetryPage = vi.fn().mockResolvedValue(undefined); (window as any).initializeProvider = vi.fn().mockResolvedValue([]); (window.events as unknown) = { - receive: (_channel: string, func: any) => { + receive: (_channel: string, func: any): void => { func(); }, }; diff --git a/packages/renderer/src/lib/dashboard/ProviderInstalled.svelte b/packages/renderer/src/lib/dashboard/ProviderInstalled.svelte index 3f5f9755e65..9b1b5ac2886 100644 --- a/packages/renderer/src/lib/dashboard/ProviderInstalled.svelte +++ b/packages/renderer/src/lib/dashboard/ProviderInstalled.svelte @@ -45,13 +45,13 @@ let installationOptionSelected = InitializeAndStartMode; $: initializationButtonVisible = provider.containerProviderConnectionInitialization || provider.kubernetesProviderConnectionInitialization; -function showLastExecutionError() { +function showLastExecutionError(): void { initializeError = initializationContext.error; logsTerminal?.write('Initialization failed. Please check the error below and try again' + '\r\n'); logsTerminal?.write(initializeError + '\r'); } -async function initializeProvider() { +async function initializeProvider(): Promise { initializeError = undefined; logsTerminal.clear(); initializeInProgress = true; @@ -65,7 +65,7 @@ async function initializeProvider() { initializeInProgress = false; } -async function refreshTerminal() { +async function refreshTerminal(): Promise { // missing element, return if (!logsXtermDiv) { console.log('missing xterm div, exiting...'); @@ -120,11 +120,11 @@ onDestroy(() => { resizeObserver?.unobserve(logsXtermDiv); }); -function updateOptionsMenu(visible: boolean) { +function updateOptionsMenu(visible: boolean): void { installationOptionsMenuVisible = visible; } -async function onInstallationClick() { +async function onInstallationClick(): Promise { initializeInProgress = true; initializationButtonVisible = false; initializationContext.mode = installationOptionSelected as InitializationMode; @@ -149,7 +149,7 @@ async function onInstallationClick() {
@@ -160,7 +160,7 @@ async function onInstallationClick() {
  • {/if} diff --git a/packages/renderer/src/lib/dashboard/ReleaseNotesBox.svelte b/packages/renderer/src/lib/dashboard/ReleaseNotesBox.svelte index cdc4dc6fff2..9fc960310b3 100644 --- a/packages/renderer/src/lib/dashboard/ReleaseNotesBox.svelte +++ b/packages/renderer/src/lib/dashboard/ReleaseNotesBox.svelte @@ -19,23 +19,23 @@ const receiveShowReleaseNotes = window.events?.receive('show-release-notes', () showBanner = true; }); -async function openReleaseNotes() { +async function openReleaseNotes(): Promise { if (!notesURL) return; await window.openExternal(notesURL); } -async function updatePodmanDesktop() { +async function updatePodmanDesktop(): Promise { await window.updatePodmanDesktop(); } -async function getInfoFromNotes() { +async function getInfoFromNotes(): Promise { const releaseNotes = await window.podmanDesktopGetReleaseNotes(); notesInfo = releaseNotes.notes; notesAvailable = notesInfo !== undefined; notesURL = releaseNotes.notesURL; } -async function onClose() { +async function onClose(): Promise { await window.updateConfigurationValue(`releaseNotesBanner.show`, currentVersion); showBanner = false; } diff --git a/packages/renderer/src/lib/deployments/DeploymentActions.svelte b/packages/renderer/src/lib/deployments/DeploymentActions.svelte index fd4e4fc0bc8..c604164e7bf 100644 --- a/packages/renderer/src/lib/deployments/DeploymentActions.svelte +++ b/packages/renderer/src/lib/deployments/DeploymentActions.svelte @@ -24,6 +24,6 @@ async function deleteDeployment(): Promise { withConfirmation(deleteDeployment, `delete deployment ${deployment.name}`)} + onClick={(): void => withConfirmation(deleteDeployment, `delete deployment ${deployment.name}`)} detailed={detailed} icon={faTrash} /> diff --git a/packages/renderer/src/lib/deployments/DeploymentColumnConditions.spec.ts b/packages/renderer/src/lib/deployments/DeploymentColumnConditions.spec.ts index 56d698e8dd1..696fdbf5bda 100644 --- a/packages/renderer/src/lib/deployments/DeploymentColumnConditions.spec.ts +++ b/packages/renderer/src/lib/deployments/DeploymentColumnConditions.spec.ts @@ -22,9 +22,9 @@ import { render, screen } from '@testing-library/svelte'; import { expect, test } from 'vitest'; import DeploymentColumnConditions from './DeploymentColumnConditions.svelte'; -import type { DeploymentCondition } from './DeploymentUI'; +import type { DeploymentCondition, DeploymentUI } from './DeploymentUI'; -function createDeploymentUI(conditions: DeploymentCondition[]) { +function createDeploymentUI(conditions: DeploymentCondition[]): DeploymentUI { return { uid: '123', name: 'my-deployment', diff --git a/packages/renderer/src/lib/deployments/DeploymentColumnConditions.svelte b/packages/renderer/src/lib/deployments/DeploymentColumnConditions.svelte index 2853c4302f2..aa8c6b0ed1e 100644 --- a/packages/renderer/src/lib/deployments/DeploymentColumnConditions.svelte +++ b/packages/renderer/src/lib/deployments/DeploymentColumnConditions.svelte @@ -17,7 +17,7 @@ import type { DeploymentCondition, DeploymentUI } from './DeploymentUI'; export let object: DeploymentUI; // Determine both the icon and color based on the deployment condition -function getConditionAttributes(condition: DeploymentCondition) { +function getConditionAttributes(condition: DeploymentCondition): { name: string; color: string; icon: IconDefinition } { const defaults = { name: condition.type, color: 'text-[var(--pd-status-unknown)]', diff --git a/packages/renderer/src/lib/deployments/DeploymentColumnName.svelte b/packages/renderer/src/lib/deployments/DeploymentColumnName.svelte index 95fe2c8f39c..0ab5c390b3a 100644 --- a/packages/renderer/src/lib/deployments/DeploymentColumnName.svelte +++ b/packages/renderer/src/lib/deployments/DeploymentColumnName.svelte @@ -5,12 +5,12 @@ import type { DeploymentUI } from './DeploymentUI'; export let object: DeploymentUI; -function openDetails() { +function openDetails(): void { router.goto(`/kubernetes/deployments/${encodeURI(object.name)}/${encodeURI(object.namespace)}/summary`); } - @@ -220,7 +220,7 @@ function dragMe(node: HTMLElement) { role="button" tabindex={0} class:relative={usePopperForDetails} - on:mousedown={e => { + on:mousedown={(e): void => { if (usePopperForDetails || itemSectionHiddenStatus.get((i / colsPerRow) * colsPerRow + j)) { e.stopPropagation(); } @@ -240,7 +240,7 @@ function dragMe(node: HTMLElement) { {#if usePopperForDetails}
    -
    @@ -280,7 +280,7 @@ function dragMe(node: HTMLElement) { type="link" aria-label="Less detail" icon={faAngleUp} - on:click={() => setSectionVisibility((i / colsPerRow) * colsPerRow + j, true)}> + on:click={(): void => setSectionVisibility((i / colsPerRow) * colsPerRow + j, true)}> Less details
    @@ -296,8 +296,8 @@ function dragMe(node: HTMLElement) { {/each}
    - - + +
    diff --git a/packages/renderer/src/lib/dialogs/Dialog.svelte b/packages/renderer/src/lib/dialogs/Dialog.svelte index de45f8d080c..46bf715e987 100644 --- a/packages/renderer/src/lib/dialogs/Dialog.svelte +++ b/packages/renderer/src/lib/dialogs/Dialog.svelte @@ -16,7 +16,7 @@ export let onclose: () => void = () => {

    {title}

    - onclose()} /> +
    diff --git a/packages/renderer/src/lib/dialogs/MessageBox.svelte b/packages/renderer/src/lib/dialogs/MessageBox.svelte index 7a77073c162..a9173a4ad0b 100644 --- a/packages/renderer/src/lib/dialogs/MessageBox.svelte +++ b/packages/renderer/src/lib/dialogs/MessageBox.svelte @@ -20,7 +20,7 @@ let buttonOrder: number[]; let display = false; -const showMessageBoxCallback = (messageBoxParameter: unknown) => { +const showMessageBoxCallback = (messageBoxParameter: unknown): void => { const options: MessageBoxOptions | undefined = messageBoxParameter as MessageBoxOptions; currentId = options?.id || 0; title = options?.title || ''; @@ -80,18 +80,18 @@ onDestroy(() => { cleanup(); }); -function cleanup() { +function cleanup(): void { display = false; title = ''; message = ''; } -async function clickButton(index?: number) { +async function clickButton(index?: number): Promise { await window.sendShowMessageBoxOnSelect(currentId, index); cleanup(); } -async function onClose() { +async function onClose(): Promise { await window.sendShowMessageBoxOnSelect(currentId, cancelId >= 0 ? cancelId : undefined); cleanup(); } @@ -134,9 +134,9 @@ function getButtonType(b: boolean): ButtonType { {#each buttonOrder as i} {#if i === cancelId} - + {:else} - + {/if} {/each} diff --git a/packages/renderer/src/lib/dialogs/QuickPickInput.svelte b/packages/renderer/src/lib/dialogs/QuickPickInput.svelte index bca6e9f2e53..35dde36ae08 100644 --- a/packages/renderer/src/lib/dialogs/QuickPickInput.svelte +++ b/packages/renderer/src/lib/dialogs/QuickPickInput.svelte @@ -37,7 +37,7 @@ let quickPickCanPickMany = false; let inputElement: HTMLInputElement | HTMLTextAreaElement | undefined = undefined; let outerDiv: HTMLDivElement | undefined = undefined; -const showInputCallback = (inputCallpackParameter: unknown) => { +const showInputCallback = (inputCallpackParameter: unknown): void => { const options: InputBoxOptions | undefined = inputCallpackParameter as InputBoxOptions; mode = 'InputBox'; inputValue = options?.value; @@ -69,7 +69,7 @@ const showInputCallback = (inputCallpackParameter: unknown) => { }); }; -const showQuickPickCallback = (quickpickParameter: unknown) => { +const showQuickPickCallback = (quickpickParameter: unknown): void => { const options: QuickPickOptions | undefined = quickpickParameter as QuickPickOptions; mode = 'QuickPick'; placeHolder = options?.placeHolder; @@ -130,7 +130,7 @@ onMount(() => { window.events?.receive('showQuickPick:add', showQuickPickCallback); }); -const onClose = async () => { +const onClose = async (): Promise => { if (validationError) { return; } @@ -143,7 +143,7 @@ const onClose = async () => { }; // eslint-disable-next-line @typescript-eslint/no-explicit-any -async function onInputChange(event: any) { +async function onInputChange(event: any): Promise { // in case of quick pick, filter the items if (mode === 'QuickPick') { let val = event.target.value.toLowerCase(); @@ -176,7 +176,7 @@ onDestroy(() => { cleanup(); }); -function cleanup() { +function cleanup(): void { display = false; inputValue = ''; placeHolder = ''; @@ -189,7 +189,7 @@ function cleanup() { ignoreFocusOut = false; } -async function validateQuickPick() { +async function validateQuickPick(): Promise { if (mode === 'InputBox') { // needs to convert the index from the filtered index to the original index const originalIndex = quickPickItems.indexOf(quickPickFilteredItems[quickPickSelectedIndex]); @@ -212,7 +212,7 @@ async function validateQuickPick() { cleanup(); } -async function clickQuickPickItem(item: QuickPickItem, index: number) { +async function clickQuickPickItem(item: QuickPickItem, index: number): Promise { if (quickPickCanPickMany) { // reset index as we clicked quickPickSelectedFilteredIndex = -1; @@ -226,7 +226,7 @@ async function clickQuickPickItem(item: QuickPickItem, index: number) { } } -async function handleKeydown(e: KeyboardEvent) { +async function handleKeydown(e: KeyboardEvent): Promise { if (!display) { return; } @@ -305,7 +305,7 @@ async function handleKeydown(e: KeyboardEvent) { {#if multiline}