refactor: modals (#25162)

This commit is contained in:
Jason Rasmussen
2026-01-09 13:03:57 -05:00
committed by GitHub
parent da248414af
commit 702499b97d
11 changed files with 144 additions and 189 deletions
+3 -8
View File
@@ -1,6 +1,5 @@
import { eventManager } from '$lib/managers/event-manager.svelte';
import ApiKeyCreateModal from '$lib/modals/ApiKeyCreateModal.svelte';
import ApiKeySecretModal from '$lib/modals/ApiKeySecretModal.svelte';
import ApiKeyUpdateModal from '$lib/modals/ApiKeyUpdateModal.svelte';
import { handleError } from '$lib/utils/handle-error';
import { getFormatter } from '$lib/utils/i18n';
@@ -56,14 +55,10 @@ export const handleCreateApiKey = async (dto: ApiKeyCreateDto) => {
return;
}
const { apiKey, secret } = await createApiKey({ apiKeyCreateDto: dto });
const response = await createApiKey({ apiKeyCreateDto: dto });
eventManager.emit('ApiKeyCreate', response.apiKey);
eventManager.emit('ApiKeyCreate', apiKey);
// no nested modal
void modalManager.show(ApiKeySecretModal, { secret });
return true;
return response;
} catch (error) {
handleError(error, $t('errors.unable_to_create_api_key'));
}
+16
View File
@@ -0,0 +1,16 @@
import { handleError } from '$lib/utils/handle-error';
import { getFormatter } from '$lib/utils/i18n';
import { createJob, type JobCreateDto } from '@immich/sdk';
import { toastManager } from '@immich/ui';
export const handleCreateJob = async (dto: JobCreateDto) => {
const $t = await getFormatter();
try {
await createJob({ jobCreateDto: dto });
toastManager.success($t('admin.job_created'));
return true;
} catch (error) {
handleError(error, $t('errors.unable_to_submit_job'));
}
};
+1 -3
View File
@@ -64,9 +64,7 @@ export const getQueuesActions = ($t: MessageFormatter, queues: QueueResponseDto[
title: $t('admin.create_job'),
type: $t('command'),
shortcuts: { shift: true, key: 'n' },
onAction: async () => {
await modalManager.show(JobCreateModal, {});
},
onAction: () => modalManager.show(JobCreateModal, {}),
};
const ManageConcurrency: ActionItem = {
+18
View File
@@ -0,0 +1,18 @@
import { eventManager } from '$lib/managers/event-manager.svelte';
import { handleError } from '$lib/utils/handle-error';
import { getFormatter } from '$lib/utils/i18n';
import { resetPinCode, type PinCodeResetDto } from '@immich/sdk';
import { toastManager } from '@immich/ui';
export const handleResetPinCode = async (dto: PinCodeResetDto) => {
const $t = await getFormatter();
try {
await resetPinCode({ pinCodeResetDto: dto });
toastManager.success($t('pin_code_reset_successfully'));
eventManager.emit('UserPinCodeReset');
return true;
} catch (error) {
handleError(error, $t('errors.failed_to_reset_pin_code'));
}
};