mirror of
https://github.com/tauri-apps/plugins-workspace.git
synced 2026-09-24 21:40:48 +02:00
fix(notification): scheduled notifications not working (#909)
* fix(notification): scheduled notifications not working * do not use toJSON since it doesnt work on isolation pattern * fmt
This commit is contained in:
@@ -163,49 +163,57 @@ enum ScheduleEvery {
|
||||
Second = "second",
|
||||
}
|
||||
|
||||
type ScheduleData =
|
||||
| {
|
||||
at: {
|
||||
class Schedule {
|
||||
at:
|
||||
| {
|
||||
date: Date;
|
||||
repeating: boolean;
|
||||
allowWhileIdle: boolean;
|
||||
};
|
||||
}
|
||||
| {
|
||||
interval: {
|
||||
}
|
||||
| undefined;
|
||||
interval:
|
||||
| {
|
||||
interval: ScheduleInterval;
|
||||
allowWhileIdle: boolean;
|
||||
};
|
||||
}
|
||||
| {
|
||||
every: {
|
||||
}
|
||||
| undefined;
|
||||
every:
|
||||
| {
|
||||
interval: ScheduleEvery;
|
||||
count: number;
|
||||
allowWhileIdle: boolean;
|
||||
};
|
||||
}
|
||||
| undefined;
|
||||
|
||||
static at(date: Date, repeating = false, allowWhileIdle = false): Schedule {
|
||||
return {
|
||||
at: { date, repeating, allowWhileIdle },
|
||||
interval: undefined,
|
||||
every: undefined,
|
||||
};
|
||||
|
||||
class Schedule {
|
||||
schedule: ScheduleData;
|
||||
|
||||
private constructor(schedule: ScheduleData) {
|
||||
this.schedule = schedule;
|
||||
}
|
||||
|
||||
toJSON(): string {
|
||||
return JSON.stringify(this.schedule);
|
||||
static interval(
|
||||
interval: ScheduleInterval,
|
||||
allowWhileIdle = false,
|
||||
): Schedule {
|
||||
return {
|
||||
at: undefined,
|
||||
interval: { interval, allowWhileIdle },
|
||||
every: undefined,
|
||||
};
|
||||
}
|
||||
|
||||
static at(date: Date, repeating = false, allowWhileIdle = false) {
|
||||
return new Schedule({ at: { date, repeating, allowWhileIdle } });
|
||||
}
|
||||
|
||||
static interval(interval: ScheduleInterval, allowWhileIdle = false) {
|
||||
return new Schedule({ interval: { interval, allowWhileIdle } });
|
||||
}
|
||||
|
||||
static every(kind: ScheduleEvery, count: number, allowWhileIdle = false) {
|
||||
return new Schedule({ every: { interval: kind, count, allowWhileIdle } });
|
||||
static every(
|
||||
kind: ScheduleEvery,
|
||||
count: number,
|
||||
allowWhileIdle = false,
|
||||
): Schedule {
|
||||
return {
|
||||
at: undefined,
|
||||
interval: undefined,
|
||||
every: { interval: kind, count, allowWhileIdle },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user