Merge branch 'IDTEAM-1.26.0' into 'main'
[ProtonMail-WebClient.git] / packages / shared / lib / api / orgIncomingDefaults.ts
blobce59108b00c3edeaa8c8262e31f8299689ac4e7f
1 export const getOrgIncomingDefaults = ({
2     Location,
3     Page,
4     PageSize,
5     Keyword,
6 }: {
7     Location?: number;
8     Page?: number;
9     PageSize?: number;
10     Keyword?: string;
11 } = {}) => ({
12     method: 'get',
13     url: 'mail/v4/orgincomingdefaults',
14     params: { Location, Page, PageSize, Keyword },
15 });
17 interface OrgIncomingDefaultConfig {
18     Email?: string;
19     Domain?: string;
20     Location: number;
23 interface AddOrgIncomingDefaultConfig extends OrgIncomingDefaultConfig {
24     /**
25      * If email is already registered in orgIncomingDefaults we overwrite the location
26      * Avoids to find the already exiting item ID
27      */
28     Overwrite?: boolean;
31 export const addOrgIncomingDefault = ({ Email, Domain, Location, Overwrite }: AddOrgIncomingDefaultConfig) => {
32     let url = 'mail/v4/orgincomingdefaults';
34     if (Overwrite) {
35         url = `${url}?Overwrite=1`;
36     }
38     return {
39         method: 'post',
40         url,
41         data: { Email, Domain, Location },
42     };
45 export const updateOrgIncomingDefault = (
46     orgIncomingDefaultID: string,
47     { Email, Domain, Location }: OrgIncomingDefaultConfig
48 ) => ({
49     method: 'put',
50     url: `mail/v4/orgincomingdefaults/${orgIncomingDefaultID}`,
51     data: { Email, Domain, Location },
52 });
54 export const deleteOrgIncomingDefaults = (IDs: string[]) => ({
55     method: 'put',
56     url: 'mail/v4/orgincomingdefaults/delete',
57     data: { IDs },
58 });
60 export const clearOrgIncomingDefaults = () => ({
61     method: 'delete',
62     url: 'mail/v4/orgincomingdefaults',
63 });