Refactor getOrganizationSettings with requestActionsFactory
[ProtonMail-WebClient.git] / packages / pass / store / sagas / index.ts
blob2c7d0bc81466a099ece807aab4f99c61764eb42a
1 import { all } from 'redux-saga/effects';
3 import type { PassSaga, RootSagaOptions } from '@proton/pass/store/types';
5 import aliasDetailsRequest from './alias/alias-details-request.saga';
6 import aliasOptionsRequest from './alias/alias-options-request.saga';
7 import lockCreate from './auth/lock-create.saga';
8 import lock from './auth/lock.saga';
9 import passwordConfirm from './auth/password-confirm.saga';
10 import passwordExtra from './auth/password-extra.saga';
11 import unlock from './auth/unlock.saga';
12 import boot from './client/boot.saga';
13 import cache from './client/cache.saga';
14 import notification from './client/notification.saga';
15 import reportProblem from './client/report-problem.saga';
16 import settings from './client/settings.saga';
17 import sync from './client/sync.saga';
18 import events from './events/events.saga';
19 import itemsImport from './import/import.saga';
20 import inviteAccept from './invites/invite-accept.saga';
21 import inviteAddressesValidate from './invites/invite-addresses-validate.saga';
22 import inviteCreate from './invites/invite-create.saga';
23 import inviteRecommendations from './invites/invite-recommendations.saga';
24 import inviteReject from './invites/invite-reject.saga';
25 import inviteRemove from './invites/invite-remove.saga';
26 import inviteResend from './invites/invite-resend.saga';
27 import newUserInvitePromote from './invites/new-user-invite-promote.saga';
28 import newUserInviteRemove from './invites/new-user-invite-remove.saga';
29 import itemBulkDelete from './items/item-bulk-delete.saga';
30 import itemBulkMove from './items/item-bulk-move.saga';
31 import itemBulkRestore from './items/item-bulk-restore.saga';
32 import itemBulkTrash from './items/item-bulk-trash.saga';
33 import itemCreation from './items/item-creation.saga';
34 import itemDelete from './items/item-delete.saga';
35 import itemEdit from './items/item-edit.saga';
36 import itemHistory from './items/item-history.saga';
37 import itemMove from './items/item-move.saga';
38 import itemPin from './items/item-pin.saga';
39 import itemRestore from './items/item-restore.saga';
40 import itemTrash from './items/item-trash.saga';
41 import itemUnpin from './items/item-unpin.saga';
42 import itemSetFlags from './items/item.set-flags.saga';
43 import getOrganizationSettings from './organization/organization-settings.saga';
44 import secureLinkSagas from './secure-links/secure-links.sagas';
45 import shareAccessOptions from './shares/share-access-options.saga';
46 import shareEditRole from './shares/share-edit-role.saga';
47 import shareLeave from './shares/share-leave.saga';
48 import shareRemoveMember from './shares/share-remove-member.saga';
49 import featureFlags from './user/feature-flags.saga';
50 import userAccess from './user/user-access.saga';
51 import userSettings from './user/user-settings.saga';
52 import trashDelete from './vaults/trash-empty.saga';
53 import trashRestore from './vaults/trash-restore.saga';
54 import vaultCreation from './vaults/vault-creation.saga';
55 import vaultDelete from './vaults/vault-delete.saga';
56 import vaultEdit from './vaults/vault-edit.saga';
57 import vaultMoveAllItems from './vaults/vault-move-all-items.saga';
58 import vaultTransferOwner from './vaults/vault-transfer-owner.saga';
60 const COMMON_SAGAS = [
61     ...secureLinkSagas,
62     aliasDetailsRequest,
63     aliasOptionsRequest,
64     boot,
65     cache,
66     events,
67     featureFlags,
68     getOrganizationSettings,
69     inviteAccept,
70     inviteAddressesValidate,
71     inviteCreate,
72     inviteRecommendations,
73     inviteReject,
74     inviteRemove,
75     inviteResend,
76     itemBulkDelete,
77     itemBulkMove,
78     itemBulkRestore,
79     itemBulkTrash,
80     itemCreation,
81     itemDelete,
82     itemEdit,
83     itemHistory,
84     itemMove,
85     itemPin,
86     itemRestore,
87     itemSetFlags,
88     itemsImport,
89     itemTrash,
90     itemUnpin,
91     lock,
92     lockCreate,
93     newUserInvitePromote,
94     newUserInviteRemove,
95     notification,
96     passwordConfirm,
97     passwordExtra,
98     reportProblem,
99     settings,
100     shareAccessOptions,
101     shareEditRole,
102     shareLeave,
103     shareRemoveMember,
104     sync,
105     trashDelete,
106     trashRestore,
107     unlock,
108     userAccess,
109     userSettings,
110     vaultCreation,
111     vaultDelete,
112     vaultEdit,
113     vaultMoveAllItems,
114     vaultTransferOwner,
117 export const rootSagaFactory = (platformSagas: PassSaga[]) =>
118     function* workerRootSaga(options: RootSagaOptions) {
119         yield all(COMMON_SAGAS.concat(platformSagas).map((saga) => saga(options)));
120     };