feat(web): add types to dispatcher (#5700)

* feat: add types to dispatcher

* fix: create album name

* pr feedback

* pr feedback

* pr feedback

* fix: api key name

* remove newSharedAlbum

* pr feedback

* fix: api key creation

* on:close

* fix: owner

* fix: onclose

* remove unused code

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
This commit is contained in:
martin 2023-12-15 03:54:21 +01:00 committed by GitHub
parent 502495883d
commit 4c5397d7e6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
41 changed files with 199 additions and 130 deletions

View file

@ -6,19 +6,22 @@
export let user: UserResponseDto;
const dispatch = createEventDispatcher();
const dispatch = createEventDispatcher<{
success: void;
fail: void;
}>();
const deleteUser = async () => {
try {
const deletedUser = await api.userApi.deleteUser({ id: user.id });
if (deletedUser.data.deletedAt != null) {
dispatch('user-delete-success');
dispatch('success');
} else {
dispatch('user-delete-fail');
dispatch('fail');
}
} catch (error) {
handleError(error, 'Unable to delete user');
dispatch('user-delete-fail');
dispatch('fail');
}
};
</script>

View file

@ -5,14 +5,17 @@
export let user: UserResponseDto;
const dispatch = createEventDispatcher();
const dispatch = createEventDispatcher<{
success: void;
fail: void;
}>();
const restoreUser = async () => {
const restoredUser = await api.userApi.restoreUser({ id: user.id });
if (restoredUser.data.deletedAt == null) {
dispatch('user-restore-success');
dispatch('success');
} else {
dispatch('user-restore-fail');
dispatch('fail');
}
};
</script>

View file

@ -10,6 +10,7 @@
import SettingButtonsRow from '../setting-buttons-row.svelte';
import SettingSwitch from '../setting-switch.svelte';
import SettingSelect from '../setting-select.svelte';
import type { ResetOptions } from '$lib/utils/dipatch';
export let loggingConfig: SystemConfigLoggingDto; // this is the config that is being edited
export let disabled = false;
@ -24,6 +25,14 @@
]);
}
const handleReset = (detail: ResetOptions) => {
if (detail.default) {
resetToDefault();
} else {
reset();
}
};
async function saveSetting() {
try {
const { data: current } = await api.systemConfigApi.getConfig();
@ -96,9 +105,8 @@
/>
<SettingButtonsRow
on:reset={reset}
on:reset={({ detail }) => handleReset(detail)}
on:save={saveSetting}
on:reset-to-default={resetToDefault}
showResetToDefault={!isEqual(savedConfig, defaultConfig)}
{disabled}
/>