feat(core): duplicated calendar subscription notification (#12364)

This commit is contained in:
CatsJuice
2025-05-21 03:04:01 +00:00
parent 14cba1be17
commit 1831d291f1
5 changed files with 30 additions and 1 deletions
@@ -55,9 +55,20 @@ const AddSubscription = () => {
}, []);
const handleAddSub = useCallback(() => {
const _url = url.trim();
const exists = calendar.getSubscription(_url);
if (exists) {
notify.error({
title: t['com.affine.integration.calendar.new-duplicate-error-title'](),
message:
t['com.affine.integration.calendar.new-duplicate-error-content'](),
});
return;
}
setVerifying(true);
calendar
.createSubscription(url)
.createSubscription(_url)
.then(() => {
setOpen(false);
setUrl('');
@@ -106,6 +106,10 @@ export class CalendarIntegration extends Entity {
}
}
getSubscription(url: string) {
return this.store.getSubscription(url);
}
deleteSubscription(url: string) {
this.store.removeSubscription(url);
}
@@ -99,6 +99,10 @@ export class CalendarStore extends Store {
);
}
getSubscription(url: string) {
return this.getSubscriptionMap()[url];
}
watchSubscriptionCache(url: string) {
return this.cacheStorage.watch<string>(this.getCacheKey(url));
}