aboutsummaryrefslogtreecommitdiff
path: root/src/lib/Notification/options.ts
blob: be972a7e4f08db0409b15d04758174254810b7ff (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
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)
  };
};