pull/24686/merge
Timon 2025-12-19 12:18:15 +08:00 committed by GitHub
commit f3710eb3b7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 15 additions and 2 deletions

View File

@ -55,6 +55,19 @@
return closestOption; return closestOption;
}; };
const deduplicateOptionsByValue = (
options: { text: string; value: string | number }[],
): { text: string; value: string | number }[] => {
const seen = new Set<string | number>();
return options.filter((option) => {
if (seen.has(option.value)) {
return false;
}
seen.add(option.value);
return true;
});
};
const onSelect = (option: number | string) => { const onSelect = (option: number | string) => {
const expirationOption = Number(option); const expirationOption = Number(option);
@ -68,9 +81,9 @@
<SettingSelect <SettingSelect
bind:value={expirationOption} bind:value={expirationOption}
{onSelect} {onSelect}
options={[...new Set([...expiredDateOptions, getExpirationOption(createdAt, expiresAt)])]} options={deduplicateOptionsByValue([...expiredDateOptions, getExpirationOption(createdAt, expiresAt)])}
label={$t('expire_after')} label={$t('expire_after')}
disabled={expiresAt !== null && DateTime.fromISO(expiresAt) < DateTime.now()} disabled={false}
number={true} number={true}
/> />
</div> </div>