aboutsummaryrefslogtreecommitdiff
path: root/src/lib/Notification/options.ts
blob: 28eeecb30fd8f8a61deefe3287433a0dd34e41ec (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
type Position = "top-right" | "top-left" | "bottom-right" | "bottom-left";

export interface Options {
	heading: string;
	description?: string;
	position: Position;
	duration: number;
	id: string;
}

export const options = (preferences: {
	heading: string;
	description?: string;
	position?: string;
	duration?: number;
}): Options => {
	return {
		position: (preferences.position || "top-right") as Position,
		duration: preferences.duration || 3000,
		heading: preferences.heading,
		description: preferences.description,
		id:
			Math.random().toString(36).substring(2, 15) +
			Math.random().toString(36).substring(2, 15),
	};
};