@zeniai/client-epic-state 4.8.73 → 4.8.74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/lib/commonStateTypes/viewAndReport/viewAndReport.d.ts +1 -0
  2. package/lib/commonStateTypes/viewAndReport/viewAndReport.js +3 -3
  3. package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
  4. package/lib/entity/snackbar/snackbarTypes.js +1 -0
  5. package/lib/entity/tenant/clearAllEpic.d.ts +2 -1
  6. package/lib/entity/tenant/clearAllEpic.js +2 -0
  7. package/lib/epic.d.ts +7 -1
  8. package/lib/epic.js +7 -1
  9. package/lib/index.d.ts +15 -7
  10. package/lib/index.js +35 -12
  11. package/lib/init.js +1 -1
  12. package/lib/reducer.d.ts +6 -0
  13. package/lib/reducer.js +6 -0
  14. package/lib/view/auditReportView/auditReportViewHelper.d.ts +12 -0
  15. package/lib/view/auditReportView/auditReportViewHelper.js +79 -0
  16. package/lib/view/auditReportView/auditReportViewPayload.d.ts +53 -0
  17. package/lib/view/auditReportView/auditReportViewPayload.js +2 -0
  18. package/lib/view/auditReportView/auditReportViewReducer.d.ts +27 -0
  19. package/lib/view/auditReportView/auditReportViewReducer.js +121 -0
  20. package/lib/view/auditReportView/auditReportViewSelector.d.ts +22 -0
  21. package/lib/view/auditReportView/auditReportViewSelector.js +34 -0
  22. package/lib/view/auditReportView/auditReportViewState.d.ts +71 -0
  23. package/lib/view/auditReportView/auditReportViewState.js +22 -0
  24. package/lib/view/auditReportView/epics/fetchAuditReportGroupViewEpic.d.ts +7 -0
  25. package/lib/view/auditReportView/epics/fetchAuditReportGroupViewEpic.js +54 -0
  26. package/lib/view/auditReportView/epics/fetchAuditRuleGroupViewEpic.d.ts +7 -0
  27. package/lib/view/auditReportView/epics/fetchAuditRuleGroupViewEpic.js +39 -0
  28. package/lib/view/companyView/types/cockpitTypes.d.ts +2 -0
  29. package/lib/view/companyView/types/cockpitTypes.js +9 -1
  30. package/lib/view/people/changeZeniPersonRolesEpic.d.ts +1 -1
  31. package/lib/view/people/deletePersonEpic.d.ts +1 -1
  32. package/lib/view/people/invitePeopleEpic.d.ts +1 -1
  33. package/lib/view/people/inviteZeniPeopleEpic.d.ts +1 -1
  34. package/lib/view/people/resendInviteEpic.d.ts +1 -1
  35. package/lib/view/referralView/epics/fetchReferralsEpic.d.ts +7 -0
  36. package/lib/view/referralView/epics/fetchReferralsEpic.js +36 -0
  37. package/lib/view/referralView/epics/fetchRewardsPlanEpic.d.ts +7 -0
  38. package/lib/view/referralView/epics/fetchRewardsPlanEpic.js +41 -0
  39. package/lib/view/referralView/epics/resendReferralInviteEpic.d.ts +8 -0
  40. package/lib/view/referralView/epics/resendReferralInviteEpic.js +39 -0
  41. package/lib/view/referralView/epics/sendReferralInviteEpic.d.ts +8 -0
  42. package/lib/view/referralView/epics/sendReferralInviteEpic.js +52 -0
  43. package/lib/view/referralView/referralPayload.d.ts +43 -0
  44. package/lib/view/referralView/referralPayload.js +33 -0
  45. package/lib/view/referralView/referralReducer.d.ts +23 -0
  46. package/lib/view/referralView/referralReducer.js +162 -0
  47. package/lib/view/referralView/referralSelector.d.ts +21 -0
  48. package/lib/view/referralView/referralSelector.js +76 -0
  49. package/lib/view/referralView/referralState.d.ts +54 -0
  50. package/lib/view/referralView/referralState.js +37 -0
  51. package/lib/view/reviewCompanyView/reviewCompanyPayload.d.ts +25 -1
  52. package/lib/view/reviewCompanyView/reviewCompanyViewSelector.d.ts +1 -0
  53. package/lib/view/reviewCompanyView/reviewCompanyViewSelector.js +31 -8
  54. package/lib/view/reviewCompanyView/reviewCompanyViewState.d.ts +12 -4
  55. package/lib/view/reviewCompanyView/reviewCompanyViewState.js +15 -5
  56. package/lib/view/settingsView/epic/saveNotificationSettingsEpic.d.ts +1 -1
  57. package/package.json +1 -1
package/lib/reducer.d.ts CHANGED
@@ -146,6 +146,7 @@ import { PaymentInstrumentState } from './entity/paymentInstrument/paymentInstru
146
146
  import { JESchedulesState } from './entity/jeSchedules/jeSchedulesState';
147
147
  import { GlobalMerchantAutoCompleteState } from './view/globalMerchantView/globalMerchantAutoCompleteView/globalMerchantAutoCompleteViewState';
148
148
  import { GlobalMerchantViewState } from './view/globalMerchantView/globalMerchantViewState';
149
+ import { AuditReportViewState } from './view/auditReportView/auditReportViewState';
149
150
  import { TaskState } from './entity/task/task';
150
151
  import { TaskSummaryState } from './entity/taskSummary/taskSummaryState';
151
152
  import { TaskListState } from './view/taskManager/taskListView/taskList';
@@ -153,6 +154,7 @@ import { TaskDetailViewState } from './view/taskManager/taskDetailView/taskDetai
153
154
  import { AuthenticationViewState } from './view/authenticationView/authenticationViewState';
154
155
  import { TwoFactorAuthenticationState } from './view/twoFactorAuthentication/twoFactorAuthentication';
155
156
  import { ZeniAccountsPromoCardState } from './view/zeniAccountsPromoCard/zeniAccountsPromoCardState';
157
+ import { ReferralViewState } from './view/referralView/referralState';
156
158
  declare type EntitiesState = {
157
159
  accountGroupState: AccountGroupState;
158
160
  accountingSummaryState: AccountingSummaryState;
@@ -214,6 +216,7 @@ declare type ViewsState = {
214
216
  apAgingState: ApAgingState;
215
217
  arAgingDetailState: ArAgingDetailState;
216
218
  arAgingState: ArAgingState;
219
+ auditReportViewState: AuditReportViewState;
217
220
  authenticationViewState: AuthenticationViewState;
218
221
  balanceSheetState: BalanceSheetState;
219
222
  bankAccountViewState: BankAccountViewState;
@@ -271,6 +274,7 @@ declare type ViewsState = {
271
274
  profitAndLossClassesViewState: ProfitAndLossClassesViewState;
272
275
  profitAndLossState: ProfitAndLossWithForecastState;
273
276
  realTimeApprovalState: RealTimeApprovalState;
277
+ referralViewState: ReferralViewState;
274
278
  reimbursementCardState: ReimbursementCardState;
275
279
  reimbursementConfigState: ReimbursementConfigState;
276
280
  remiDetailViewState: RemiDetailViewState;
@@ -323,6 +327,7 @@ declare const reducers: import("redux").Reducer<import("redux").CombinedState<{
323
327
  apAgingState: ApAgingState;
324
328
  arAgingDetailState: ArAgingDetailState;
325
329
  arAgingState: ArAgingState;
330
+ auditReportViewState: AuditReportViewState;
326
331
  authenticationViewState: AuthenticationViewState;
327
332
  balanceSheetState: BalanceSheetState;
328
333
  bankAccountViewState: BankAccountViewState;
@@ -380,6 +385,7 @@ declare const reducers: import("redux").Reducer<import("redux").CombinedState<{
380
385
  profitAndLossClassesViewState: ProfitAndLossClassesViewState;
381
386
  profitAndLossState: ProfitAndLossWithForecastState;
382
387
  realTimeApprovalState: RealTimeApprovalState;
388
+ referralViewState: ReferralViewState;
383
389
  reimbursementCardState: ReimbursementCardState;
384
390
  reimbursementConfigState: ReimbursementConfigState;
385
391
  remiDetailViewState: RemiDetailViewState;
package/lib/reducer.js CHANGED
@@ -177,6 +177,7 @@ const paymentInstrumentReducer_1 = __importStar(require("./entity/paymentInstrum
177
177
  const jeSchedulesReducer_1 = __importStar(require("./entity/jeSchedules/jeSchedulesReducer"));
178
178
  const globalMerchantAutoCompleteViewReducer_1 = __importStar(require("./view/globalMerchantView/globalMerchantAutoCompleteView/globalMerchantAutoCompleteViewReducer"));
179
179
  const globalMerchantViewReducer_1 = __importStar(require("./view/globalMerchantView/globalMerchantViewReducer"));
180
+ const auditReportViewReducer_1 = __importStar(require("./view/auditReportView/auditReportViewReducer"));
180
181
  const taskReducer_1 = __importStar(require("./entity/task/taskReducer"));
181
182
  const taskSummaryReducer_1 = __importStar(require("./entity/taskSummary/taskSummaryReducer"));
182
183
  const taskListReducer_1 = __importStar(require("./view/taskManager/taskListView/taskListReducer"));
@@ -184,6 +185,7 @@ const taskDetailReducer_1 = __importStar(require("./view/taskManager/taskDetailV
184
185
  const authenticationViewReducer_1 = __importStar(require("./view/authenticationView/authenticationViewReducer"));
185
186
  const twoFactorAuthenticationReducer_1 = __importStar(require("./view/twoFactorAuthentication/twoFactorAuthenticationReducer"));
186
187
  const zeniAccountsPromoCardReducer_1 = __importStar(require("./view/zeniAccountsPromoCard/zeniAccountsPromoCardReducer"));
188
+ const referralReducer_1 = __importStar(require("./view/referralView/referralReducer"));
187
189
  // Note: Please maintain strict alphabetical order
188
190
  const initialEntitiesState = {
189
191
  accountGroupState: accountGroupReducer_1.initialState,
@@ -247,6 +249,7 @@ const initialViewsState = {
247
249
  apAgingState: apAgingReducer_1.initialState,
248
250
  arAgingDetailState: arAgingDetailReducer_1.initialState,
249
251
  arAgingState: arAgingReducer_1.initialState,
252
+ auditReportViewState: auditReportViewReducer_1.initialState,
250
253
  authenticationViewState: authenticationViewReducer_1.initialState,
251
254
  balanceSheetState: balanceSheetReducer_1.initialState,
252
255
  bankAccountViewState: bankAccountViewReducer_1.initialState,
@@ -304,6 +307,7 @@ const initialViewsState = {
304
307
  profitAndLossClassesViewState: profitAndLossClassesViewReducer_1.initialState,
305
308
  profitAndLossState: profitAndLossReducer_1.initialState,
306
309
  realTimeApprovalState: realTimeApprovalReducer_1.initialState,
310
+ referralViewState: referralReducer_1.initialState,
307
311
  reimbursementCardState: reimbursementCardReducer_1.initialState,
308
312
  reimbursementConfigState: reimbursementConfigReducer_1.initialState,
309
313
  remiDetailViewState: remiDetailViewReducer_1.initialState,
@@ -411,6 +415,7 @@ const viewReducers = {
411
415
  apAgingState: apAgingReducer_1.default,
412
416
  arAgingDetailState: arAgingDetailReducer_1.default,
413
417
  arAgingState: arAgingReducer_1.default,
418
+ auditReportViewState: auditReportViewReducer_1.default,
414
419
  authenticationViewState: authenticationViewReducer_1.default,
415
420
  balanceSheetState: balanceSheetReducer_1.default,
416
421
  bankAccountViewState: bankAccountViewReducer_1.default,
@@ -468,6 +473,7 @@ const viewReducers = {
468
473
  profitAndLossClassesViewState: profitAndLossClassesViewReducer_1.default,
469
474
  profitAndLossState: profitAndLossReducer_1.default,
470
475
  realTimeApprovalState: realTimeApprovalReducer_1.default,
476
+ referralViewState: referralReducer_1.default,
471
477
  reimbursementCardState: reimbursementCardReducer_1.default,
472
478
  reimbursementConfigState: reimbursementConfigReducer_1.default,
473
479
  remiDetailViewState: remiDetailViewReducer_1.default,
@@ -0,0 +1,12 @@
1
+ import { AuditRule, AuditRuleGroup, AuditReportGroupQuery, AuditReport, AuditRuleGroupReport, AuditReportGroup, AuditRuleBase, AuditReportRule } from './auditReportViewState';
2
+ import { AuditReportGroupPayload, AuditReportGroupQueryPayload, AuditReportPayload, AuditRuleGroupPayload, AuditRulePayload, AuditRuleGroupReportPayload, AuditRuleBasePayload, AuditReportRulePayload } from './auditReportViewPayload';
3
+ declare const toAuditRuleGroupFromPayload: (auditRuleGroupPayload: AuditRuleGroupPayload) => AuditRuleGroup;
4
+ declare const toAuditRulesFromPayload: (auditRulesPayload: AuditRulePayload[]) => AuditRule[];
5
+ declare const toAuditRuleBaseFromPayload: (auditRuleBasePayload: AuditRuleBasePayload) => AuditRuleBase;
6
+ declare const toAuditRuleFromPayload: (auditRulesPayload: AuditRulePayload) => AuditRule;
7
+ declare const toAuditReportGroupViewFromPayload: (auditReportGroupPayload: AuditReportGroupPayload) => AuditReportGroup;
8
+ declare const toAuditReportGroupQueryFromPayload: (queryPayload: AuditReportGroupQueryPayload) => AuditReportGroupQuery;
9
+ declare const toAuditReportFromPayload: (auditReportPayload: AuditReportPayload) => AuditReport;
10
+ declare const toAuditReportRuleFromPayload: (auditReportRulesPayload: AuditReportRulePayload[]) => AuditReportRule[];
11
+ declare const toAuditRuleReportGroupFromPayload: (auditRuleReportGroupPayload: AuditRuleGroupReportPayload[]) => AuditRuleGroupReport[];
12
+ export { toAuditRuleGroupFromPayload, toAuditRulesFromPayload, toAuditRuleBaseFromPayload, toAuditRuleFromPayload, toAuditReportGroupViewFromPayload, toAuditReportGroupQueryFromPayload, toAuditReportFromPayload, toAuditReportRuleFromPayload, toAuditRuleReportGroupFromPayload, };
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toAuditRuleReportGroupFromPayload = exports.toAuditReportRuleFromPayload = exports.toAuditReportFromPayload = exports.toAuditReportGroupQueryFromPayload = exports.toAuditReportGroupViewFromPayload = exports.toAuditRuleFromPayload = exports.toAuditRuleBaseFromPayload = exports.toAuditRulesFromPayload = exports.toAuditRuleGroupFromPayload = void 0;
4
+ const statusPayload_1 = require("../../commonPayloadTypes/statusPayload");
5
+ const viewAndReport_1 = require("../../commonStateTypes/viewAndReport/viewAndReport");
6
+ const auditReportViewState_1 = require("./auditReportViewState");
7
+ const toAuditRuleGroupFromPayload = (auditRuleGroupPayload) => {
8
+ return {
9
+ auditRuleCategory: auditRuleGroupPayload.audit_rule_category,
10
+ auditRuleGroupDescription: auditRuleGroupPayload.audit_rule_group_description,
11
+ auditRuleGroupId: auditRuleGroupPayload.audit_rule_group_id,
12
+ auditRules: toAuditRulesFromPayload(auditRuleGroupPayload.audit_rules),
13
+ sequence: auditRuleGroupPayload.sequence,
14
+ };
15
+ };
16
+ exports.toAuditRuleGroupFromPayload = toAuditRuleGroupFromPayload;
17
+ const toAuditRulesFromPayload = (auditRulesPayload) => {
18
+ const auditRules = [];
19
+ auditRulesPayload.forEach((auditRulePayload) => auditRules.push(toAuditRuleFromPayload(auditRulePayload)));
20
+ return auditRules;
21
+ };
22
+ exports.toAuditRulesFromPayload = toAuditRulesFromPayload;
23
+ const toAuditRuleBaseFromPayload = (auditRuleBasePayload) => {
24
+ return {
25
+ auditRuleId: auditRuleBasePayload.audit_rule_id,
26
+ };
27
+ };
28
+ exports.toAuditRuleBaseFromPayload = toAuditRuleBaseFromPayload;
29
+ const toAuditRuleFromPayload = (auditRulesPayload) => {
30
+ return Object.assign(Object.assign({}, toAuditRuleBaseFromPayload(auditRulesPayload)), { auditRuleDescription: auditRulesPayload.audit_rule_description, sequence: auditRulesPayload.sequence });
31
+ };
32
+ exports.toAuditRuleFromPayload = toAuditRuleFromPayload;
33
+ const toAuditReportGroupViewFromPayload = (auditReportGroupPayload) => {
34
+ const query = toAuditReportGroupQueryFromPayload(auditReportGroupPayload.query);
35
+ const report = toAuditReportFromPayload(auditReportGroupPayload.report);
36
+ return {
37
+ report,
38
+ query,
39
+ };
40
+ };
41
+ exports.toAuditReportGroupViewFromPayload = toAuditReportGroupViewFromPayload;
42
+ const toAuditReportGroupQueryFromPayload = (queryPayload) => {
43
+ return {
44
+ auditRuleGroupIds: queryPayload.audit_rule_group_ids,
45
+ action: (0, auditReportViewState_1.toAuditReportActionType)(queryPayload.action),
46
+ };
47
+ };
48
+ exports.toAuditReportGroupQueryFromPayload = toAuditReportGroupQueryFromPayload;
49
+ const toAuditReportFromPayload = (auditReportPayload) => {
50
+ return {
51
+ auditMonthAndYear: auditReportPayload.audit_month_and_year,
52
+ auditRulesGroupReport: toAuditRuleReportGroupFromPayload(auditReportPayload.audit_rules_group_report),
53
+ reportId: auditReportPayload.report_id,
54
+ reportTitle: auditReportPayload.report_title,
55
+ status: (0, statusPayload_1.mapStatusPayloadToStatus)(auditReportPayload.status),
56
+ version: auditReportPayload.version,
57
+ };
58
+ };
59
+ exports.toAuditReportFromPayload = toAuditReportFromPayload;
60
+ const toAuditReportRuleFromPayload = (auditReportRulesPayload) => {
61
+ var _a;
62
+ return ((_a = auditReportRulesPayload.map((auditReportRulePayload) => {
63
+ return Object.assign(Object.assign({}, toAuditRuleBaseFromPayload(auditReportRulePayload)), { isSuccess: auditReportRulePayload.is_success, entityType: (0, auditReportViewState_1.toAuditRuleEntityType)(auditReportRulePayload.entity_type), entityIds: auditReportRulePayload.entity_ids.map((id) => (0, viewAndReport_1.toReportID)(id)), message: auditReportRulePayload.message, sequence: auditReportRulePayload.sequence });
64
+ })) !== null && _a !== void 0 ? _a : []);
65
+ };
66
+ exports.toAuditReportRuleFromPayload = toAuditReportRuleFromPayload;
67
+ const toAuditRuleReportGroupFromPayload = (auditRuleReportGroupPayload) => {
68
+ return auditRuleReportGroupPayload.map((auditRuleReportGroup) => {
69
+ var _a;
70
+ return {
71
+ auditRuleGroupId: auditRuleReportGroup.audit_rule_group_id,
72
+ isSuccess: auditRuleReportGroup.is_success,
73
+ message: auditRuleReportGroup.message,
74
+ auditRules: toAuditReportRuleFromPayload((_a = auditRuleReportGroup.audit_rules) !== null && _a !== void 0 ? _a : []),
75
+ sequence: auditRuleReportGroup.sequence,
76
+ };
77
+ });
78
+ };
79
+ exports.toAuditRuleReportGroupFromPayload = toAuditRuleReportGroupFromPayload;
@@ -0,0 +1,53 @@
1
+ import { StatusPayload } from '../../commonPayloadTypes/statusPayload';
2
+ import { ZeniAPIResponse } from '../../responsePayload';
3
+ export interface AuditRuleGroupBasePayload {
4
+ audit_rule_group_id: string;
5
+ }
6
+ export interface AuditRuleGroupPayload extends AuditRuleGroupBasePayload {
7
+ audit_rule_category: string;
8
+ audit_rule_group_description: string;
9
+ audit_rules: AuditRulePayload[];
10
+ sequence: number;
11
+ }
12
+ export interface AuditRuleBasePayload {
13
+ audit_rule_id: string;
14
+ }
15
+ export interface AuditRulePayload extends AuditRuleBasePayload {
16
+ audit_rule_description: string;
17
+ sequence: number;
18
+ }
19
+ export interface AuditRuleGroupsPayload {
20
+ audit_rule_groups: AuditRuleGroupPayload[];
21
+ version: string;
22
+ }
23
+ export interface AuditReportRulePayload extends AuditRuleBasePayload {
24
+ is_success: boolean;
25
+ entity_type: string;
26
+ entity_ids: string[];
27
+ message: string;
28
+ sequence: number;
29
+ }
30
+ export interface AuditRuleGroupReportPayload extends AuditRuleGroupBasePayload {
31
+ is_success: boolean;
32
+ message: string;
33
+ audit_rules?: AuditReportRulePayload[] | null;
34
+ sequence: number;
35
+ }
36
+ export interface AuditReportPayload {
37
+ audit_month_and_year: string;
38
+ audit_rules_group_report: AuditRuleGroupReportPayload[];
39
+ report_id: string;
40
+ report_title: string;
41
+ status: StatusPayload;
42
+ version: string;
43
+ }
44
+ export interface AuditReportGroupQueryPayload {
45
+ audit_rule_group_ids: string[];
46
+ action: string;
47
+ }
48
+ export interface AuditReportGroupPayload {
49
+ query: AuditReportGroupQueryPayload;
50
+ report: AuditReportPayload;
51
+ }
52
+ export declare type AuditReportGroupResponse = ZeniAPIResponse<AuditReportGroupPayload>;
53
+ export declare type AuditRuleGroupsResponse = ZeniAPIResponse<AuditRuleGroupsPayload>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,27 @@
1
+ import { ZeniAPIStatus } from '../../responsePayload';
2
+ import { AuditReportViewState } from './auditReportViewState';
3
+ import { AuditReportGroupPayload, AuditRuleGroupPayload } from './auditReportViewPayload';
4
+ export declare const initialState: AuditReportViewState;
5
+ export declare const fetchAuditRuleGroupView: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[cacheOverride?: any], {
6
+ cacheOverride: any;
7
+ }, string, never, never>, updateAuditRuleGroupViewOnSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[auditRuleGroups: AuditRuleGroupPayload[]], {
8
+ auditRuleGroups: AuditRuleGroupPayload[];
9
+ }, string, never, never>, updateAuditRuleGroupViewOnFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[error: ZeniAPIStatus<Record<string, unknown>>], {
10
+ error: ZeniAPIStatus<Record<string, unknown>>;
11
+ }, string, never, never>, fetchAuditReportGroupView: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[companyId: string, fetchAction: "view" | "generate", reportGroupId: string], {
12
+ companyId: string;
13
+ fetchAction: "view" | "generate";
14
+ reportGroupId: string;
15
+ }, string, never, never>, updateAuditReportGroupViewOnSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[companyId: string, reportGroupId: string, auditReportGroupPayload: AuditReportGroupPayload], {
16
+ companyId: string;
17
+ reportGroupId: string;
18
+ auditReportGroupPayload: AuditReportGroupPayload;
19
+ }, string, never, never>, updateAuditReportGroupViewOnFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[companyId: string, reportGroupId: string, error: ZeniAPIStatus<Record<string, unknown>>], {
20
+ companyId: string;
21
+ reportGroupId: string;
22
+ error: ZeniAPIStatus<Record<string, unknown>>;
23
+ }, string, never, never>, clearAuditRuleGroupView: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, clearAuditReportGroupViewByCompanyId: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[companyId: string], {
24
+ companyId: string;
25
+ }, string, never, never>, clearAuditReportGroupView: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>;
26
+ declare const _default: import("@reduxjs/toolkit").Reducer<AuditReportViewState, import("@reduxjs/toolkit").AnyAction>;
27
+ export default _default;
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.clearAuditReportGroupView = exports.clearAuditReportGroupViewByCompanyId = exports.clearAuditRuleGroupView = exports.updateAuditReportGroupViewOnFailure = exports.updateAuditReportGroupViewOnSuccess = exports.fetchAuditReportGroupView = exports.updateAuditRuleGroupViewOnFailure = exports.updateAuditRuleGroupViewOnSuccess = exports.fetchAuditRuleGroupView = exports.initialState = void 0;
5
+ const toolkit_1 = require("@reduxjs/toolkit");
6
+ const auditReportViewHelper_1 = require("./auditReportViewHelper");
7
+ exports.initialState = {
8
+ auditRuleGroupView: {
9
+ auditRuleGroups: [],
10
+ fetchState: 'Not-Started',
11
+ error: undefined,
12
+ hasValidState() {
13
+ return this.fetchState == 'Completed';
14
+ },
15
+ },
16
+ auditReportViewByCompanyId: {},
17
+ };
18
+ const auditReportView = (0, toolkit_1.createSlice)({
19
+ name: 'auditReportView',
20
+ initialState: exports.initialState,
21
+ reducers: {
22
+ fetchAuditRuleGroupView: {
23
+ prepare(cacheOverride = true) {
24
+ return { payload: { cacheOverride } };
25
+ },
26
+ reducer(draft) {
27
+ if (draft.auditRuleGroupView.fetchState !== 'Completed' ||
28
+ draft.auditRuleGroupView.auditRuleGroups.length === 0) {
29
+ draft.auditRuleGroupView.fetchState = 'In-Progress';
30
+ }
31
+ draft.auditRuleGroupView.error = undefined;
32
+ },
33
+ },
34
+ updateAuditRuleGroupViewOnSuccess: {
35
+ reducer(draft, action) {
36
+ const { auditRuleGroups } = action.payload;
37
+ draft.auditRuleGroupView.fetchState = 'Completed';
38
+ draft.auditRuleGroupView.error = undefined;
39
+ draft.auditRuleGroupView.auditRuleGroups = auditRuleGroups.map((ruleGroup) => (0, auditReportViewHelper_1.toAuditRuleGroupFromPayload)(ruleGroup));
40
+ },
41
+ prepare(auditRuleGroups) {
42
+ return {
43
+ payload: { auditRuleGroups },
44
+ };
45
+ },
46
+ },
47
+ updateAuditRuleGroupViewOnFailure: {
48
+ reducer(draft, action) {
49
+ draft.auditRuleGroupView.fetchState = 'Error';
50
+ draft.auditRuleGroupView.error = action.payload.error;
51
+ },
52
+ prepare(error) {
53
+ return { payload: { error } };
54
+ },
55
+ },
56
+ fetchAuditReportGroupView: {
57
+ prepare(companyId, fetchAction, reportGroupId) {
58
+ return {
59
+ payload: { companyId, fetchAction, reportGroupId },
60
+ };
61
+ },
62
+ reducer(draft, action) {
63
+ var _a;
64
+ const { companyId, reportGroupId } = action.payload;
65
+ const draftReportById = (_a = draft.auditReportViewByCompanyId[companyId]) === null || _a === void 0 ? void 0 : _a.auditReportGroupViewByGroupId;
66
+ draft.auditReportViewByCompanyId[companyId] = {
67
+ auditReportGroupViewByGroupId: Object.assign(Object.assign({}, draftReportById), { [reportGroupId]: {
68
+ id: reportGroupId,
69
+ fetchState: 'In-Progress',
70
+ error: undefined,
71
+ hasValidState: exports.initialState.auditRuleGroupView.hasValidState,
72
+ } }),
73
+ };
74
+ },
75
+ },
76
+ updateAuditReportGroupViewOnSuccess: {
77
+ reducer(draft, action) {
78
+ const { auditReportGroupPayload, reportGroupId, companyId } = action.payload;
79
+ draft.auditReportViewByCompanyId[companyId].auditReportGroupViewByGroupId[reportGroupId].fetchState = 'Completed';
80
+ draft.auditReportViewByCompanyId[companyId].auditReportGroupViewByGroupId[reportGroupId].error = undefined;
81
+ draft.auditReportViewByCompanyId[companyId].auditReportGroupViewByGroupId[reportGroupId].auditReportGroup =
82
+ (0, auditReportViewHelper_1.toAuditReportGroupViewFromPayload)(auditReportGroupPayload);
83
+ },
84
+ prepare(companyId, reportGroupId, auditReportGroupPayload) {
85
+ return {
86
+ payload: { companyId, reportGroupId, auditReportGroupPayload },
87
+ };
88
+ },
89
+ },
90
+ updateAuditReportGroupViewOnFailure: {
91
+ reducer(draft, action) {
92
+ const { companyId, reportGroupId } = action.payload;
93
+ draft.auditReportViewByCompanyId[companyId].auditReportGroupViewByGroupId[reportGroupId].fetchState = 'Error';
94
+ draft.auditReportViewByCompanyId[companyId].auditReportGroupViewByGroupId[reportGroupId].error =
95
+ action.payload.error;
96
+ },
97
+ prepare(companyId, reportGroupId, error) {
98
+ return { payload: { companyId, reportGroupId, error } };
99
+ },
100
+ },
101
+ clearAuditReportGroupViewByCompanyId: {
102
+ reducer(draft, action) {
103
+ const { companyId } = action.payload;
104
+ delete draft.auditReportViewByCompanyId[companyId];
105
+ },
106
+ prepare(companyId) {
107
+ return {
108
+ payload: { companyId },
109
+ };
110
+ },
111
+ },
112
+ clearAuditRuleGroupView(draft) {
113
+ draft.auditRuleGroupView = Object.assign(draft.auditRuleGroupView, exports.initialState.auditRuleGroupView);
114
+ },
115
+ clearAuditReportGroupView(draft) {
116
+ Object.assign(draft, exports.initialState);
117
+ },
118
+ },
119
+ });
120
+ _a = auditReportView.actions, exports.fetchAuditRuleGroupView = _a.fetchAuditRuleGroupView, exports.updateAuditRuleGroupViewOnSuccess = _a.updateAuditRuleGroupViewOnSuccess, exports.updateAuditRuleGroupViewOnFailure = _a.updateAuditRuleGroupViewOnFailure, exports.fetchAuditReportGroupView = _a.fetchAuditReportGroupView, exports.updateAuditReportGroupViewOnSuccess = _a.updateAuditReportGroupViewOnSuccess, exports.updateAuditReportGroupViewOnFailure = _a.updateAuditReportGroupViewOnFailure, exports.clearAuditRuleGroupView = _a.clearAuditRuleGroupView, exports.clearAuditReportGroupViewByCompanyId = _a.clearAuditReportGroupViewByCompanyId, exports.clearAuditReportGroupView = _a.clearAuditReportGroupView;
121
+ exports.default = auditReportView.reducer;
@@ -0,0 +1,22 @@
1
+ import { RootState } from '../../reducer';
2
+ import { SelectorView } from '../../commonStateTypes/viewAndReport/viewAndReport';
3
+ import { ID } from '../../commonStateTypes/common';
4
+ import { AuditReport, AuditRuleGroup } from './auditReportViewState';
5
+ export interface AuditRuleGroupViewSelectorView extends SelectorView {
6
+ auditRuleGroups: AuditRuleGroup[];
7
+ }
8
+ export interface AuditReportGroupSelectorView extends SelectorView {
9
+ auditReportGroupId: ID;
10
+ auditReport?: AuditReport;
11
+ }
12
+ export interface AuditReportGroupViewSelectorView {
13
+ auditReportGroups: AuditReportGroupSelectorView[];
14
+ }
15
+ export declare const getAuditRuleGroupViewSelectorView: (state: RootState) => {
16
+ auditRuleGroups: AuditRuleGroup[];
17
+ fetchState: import("../../commonStateTypes/common").FetchState;
18
+ error: import("../..").ZeniAPIStatus<Record<string, unknown>> | undefined;
19
+ };
20
+ export declare const getAuditReportGroupViewSelectorView: (companyId: ID, state: RootState) => {
21
+ auditReportGroups: AuditReportGroupSelectorView[];
22
+ };
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAuditReportGroupViewSelectorView = exports.getAuditRuleGroupViewSelectorView = void 0;
4
+ const getAuditRuleGroupViewSelectorView = (state) => {
5
+ const { auditRuleGroupView } = state.auditReportViewState;
6
+ const auditRuleGroups = auditRuleGroupView.auditRuleGroups;
7
+ return {
8
+ auditRuleGroups,
9
+ fetchState: auditRuleGroupView.fetchState,
10
+ error: auditRuleGroupView.error,
11
+ };
12
+ };
13
+ exports.getAuditRuleGroupViewSelectorView = getAuditRuleGroupViewSelectorView;
14
+ const getAuditReportGroupViewSelectorView = (companyId, state) => {
15
+ var _a;
16
+ const { auditReportViewByCompanyId } = state.auditReportViewState;
17
+ const auditReportGroupViewByGroupId = (_a = auditReportViewByCompanyId[companyId]) === null || _a === void 0 ? void 0 : _a.auditReportGroupViewByGroupId;
18
+ const auditReportGroups = [];
19
+ if (auditReportGroupViewByGroupId != null) {
20
+ Object.values(auditReportGroupViewByGroupId).forEach((reportView) => {
21
+ var _a;
22
+ auditReportGroups.push({
23
+ auditReportGroupId: reportView.id,
24
+ auditReport: (_a = reportView.auditReportGroup) === null || _a === void 0 ? void 0 : _a.report,
25
+ fetchState: reportView.fetchState,
26
+ error: reportView.error,
27
+ });
28
+ });
29
+ }
30
+ return {
31
+ auditReportGroups,
32
+ };
33
+ };
34
+ exports.getAuditReportGroupViewSelectorView = getAuditReportGroupViewSelectorView;
@@ -0,0 +1,71 @@
1
+ import { FetchedState, ID } from '../../commonStateTypes/common';
2
+ import { Status } from '../../commonStateTypes/status';
3
+ import { View } from '../../commonStateTypes/viewAndReport/viewAndReport';
4
+ export declare const AUDIT_RULE_ENTITY_TYPES: readonly ["reports", "transactions", "dashboard"];
5
+ export declare const toAuditRuleEntityType: (v: string) => "dashboard" | "transactions" | "reports";
6
+ export declare type AuditRuleEntityType = ReturnType<typeof toAuditRuleEntityType>;
7
+ export declare const AUDIT_RULE_ENTITY_IDS: readonly ["uncategorized-expense", "uncategorized-income", "cash_balance", "card_balance", "operating_expenses", "operating_expenses_by_classes", "revenue", "revenue_by_classes", "net_burn_or_income", "net_burn_or_income_story_card", "net_burn_or_income_by_classes", "cash_position", "top_expenses", "profit_and_loss", "profit_and_loss_by_classes", "balance_sheet", "cash_flow", "dashboard", "finance_statement", "transaction_list_of_account", "transaction_list_missing_receipt", "transaction_list_of_account_by_class", "transaction_detail", "cash_in_cash_out", "insights_dashboard", "company_details", "class_list", "account_list", "account_list_by_type", "vendor", "task_card", "bill_pay", "reimbursement", "bill_pay_card", "reimbursement_card", "bill_pay_promo_card", "zeni_accounts", "zeni_accounts_promo_card", "charge_cards", "reimbursement_promo_card", "onboarding", "operating_expenses_by_vendor", "operating_expenses_by_vendor_summary", "vendors_tab", "accounts_payable_aging", "accounts_receivable_aging", "vendor_global_review", "prepaid_expenses"];
8
+ export declare const toAuditRuleEntityIdType: (v: string) => "cash_balance" | "card_balance" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "charge_cards" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "uncategorized-expense" | "uncategorized-income";
9
+ export declare type AuditRuleEntityIdType = ReturnType<typeof toAuditRuleEntityIdType>;
10
+ export declare const AUDIT_REPORT_ACTION_TYPES: readonly ["generate", "view"];
11
+ export declare const toAuditReportActionType: (v: string) => "view" | "generate";
12
+ export declare type AuditReportActionType = ReturnType<typeof toAuditReportActionType>;
13
+ export interface AuditRuleGroupBase {
14
+ auditRuleGroupId: ID;
15
+ }
16
+ export interface AuditRuleBase {
17
+ auditRuleId: string;
18
+ }
19
+ export interface AuditRuleGroup extends AuditRuleGroupBase {
20
+ auditRuleCategory: string;
21
+ auditRuleGroupDescription: string;
22
+ auditRules: AuditRule[];
23
+ sequence: number;
24
+ }
25
+ export interface AuditRule extends AuditRuleBase {
26
+ auditRuleDescription: string;
27
+ sequence: number;
28
+ }
29
+ export interface AuditReportRule extends AuditRuleBase {
30
+ isSuccess: boolean;
31
+ entityType: AuditRuleEntityType;
32
+ entityIds: AuditRuleEntityIdType[];
33
+ message: string;
34
+ sequence: number;
35
+ }
36
+ export interface AuditRuleGroupReport extends AuditRuleGroupBase {
37
+ isSuccess: boolean;
38
+ message: string;
39
+ auditRules: AuditReportRule[];
40
+ sequence: number;
41
+ }
42
+ export interface AuditReport {
43
+ auditRulesGroupReport: AuditRuleGroupReport[];
44
+ reportId: ID;
45
+ reportTitle: string;
46
+ status: Status;
47
+ version: string;
48
+ auditMonthAndYear: string;
49
+ }
50
+ export interface AuditReportGroupQuery {
51
+ auditRuleGroupIds: ID[];
52
+ action: AuditReportActionType;
53
+ }
54
+ export interface AuditReportGroup {
55
+ query: AuditReportGroupQuery;
56
+ report: AuditReport;
57
+ }
58
+ export interface AuditReportGroupView extends FetchedState {
59
+ id: ID;
60
+ auditReportGroup?: AuditReportGroup;
61
+ }
62
+ export interface AuditRuleGroupViewState extends FetchedState, View {
63
+ auditRuleGroups: AuditRuleGroup[];
64
+ }
65
+ export interface AuditReportGroupViewState {
66
+ auditReportGroupViewByGroupId: Record<ID, AuditReportGroupView>;
67
+ }
68
+ export interface AuditReportViewState {
69
+ auditRuleGroupView: AuditRuleGroupViewState;
70
+ auditReportViewByCompanyId: Record<ID, AuditReportGroupViewState>;
71
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toAuditReportActionType = exports.AUDIT_REPORT_ACTION_TYPES = exports.toAuditRuleEntityIdType = exports.AUDIT_RULE_ENTITY_IDS = exports.toAuditRuleEntityType = exports.AUDIT_RULE_ENTITY_TYPES = void 0;
4
+ const stringToUnion_1 = require("../../commonStateTypes/stringToUnion");
5
+ const viewAndReport_1 = require("../../commonStateTypes/viewAndReport/viewAndReport");
6
+ exports.AUDIT_RULE_ENTITY_TYPES = [
7
+ 'reports',
8
+ 'transactions',
9
+ 'dashboard',
10
+ ];
11
+ const toAuditRuleEntityType = (v) => (0, stringToUnion_1.stringToUnion)(v, exports.AUDIT_RULE_ENTITY_TYPES);
12
+ exports.toAuditRuleEntityType = toAuditRuleEntityType;
13
+ exports.AUDIT_RULE_ENTITY_IDS = [
14
+ 'uncategorized-expense',
15
+ 'uncategorized-income',
16
+ ...viewAndReport_1.ALL_REPORT_IDS,
17
+ ];
18
+ const toAuditRuleEntityIdType = (v) => (0, stringToUnion_1.stringToUnion)(v, exports.AUDIT_RULE_ENTITY_IDS);
19
+ exports.toAuditRuleEntityIdType = toAuditRuleEntityIdType;
20
+ exports.AUDIT_REPORT_ACTION_TYPES = ['generate', 'view'];
21
+ const toAuditReportActionType = (v) => (0, stringToUnion_1.stringToUnion)(v, exports.AUDIT_REPORT_ACTION_TYPES);
22
+ exports.toAuditReportActionType = toAuditReportActionType;
@@ -0,0 +1,7 @@
1
+ import { Observable } from 'rxjs';
2
+ import { ActionsObservable, StateObservable } from 'redux-observable';
3
+ import { ZeniAPI } from '../../../zeniAPI';
4
+ import { RootState } from '../../../reducer';
5
+ import { fetchAuditReportGroupView, updateAuditReportGroupViewOnSuccess, updateAuditReportGroupViewOnFailure } from '../auditReportViewReducer';
6
+ export declare type ActionType = ReturnType<typeof fetchAuditReportGroupView> | ReturnType<typeof updateAuditReportGroupViewOnSuccess> | ReturnType<typeof updateAuditReportGroupViewOnFailure>;
7
+ export declare const fetchAuditReportGroupViewEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchAuditReportGroupViewEpic = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const operators_1 = require("rxjs/operators");
6
+ const responsePayload_1 = require("../../../responsePayload");
7
+ const auditReportViewReducer_1 = require("../auditReportViewReducer");
8
+ const fetchAuditReportGroupViewEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(auditReportViewReducer_1.fetchAuditReportGroupView.match), (0, operators_1.mergeMap)((action) => {
9
+ const { companyId, fetchAction, reportGroupId } = action.payload;
10
+ const state = state$.value;
11
+ const company = state.companyState.companiesById[companyId];
12
+ const tenantId = company.companyInfo.tenantId;
13
+ if (tenantId != null) {
14
+ const query = toQueryPayload(fetchAction, reportGroupId);
15
+ const { userId, sessionId } = zeniAPI;
16
+ const headers = {
17
+ 'zeni-user-id': userId,
18
+ 'zeni-tenant-id': tenantId,
19
+ 'zeni-session-id': sessionId,
20
+ };
21
+ return zeniAPI
22
+ .getJSON(`${zeniAPI.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/audit?query=${encodeURIComponent(JSON.stringify(query))}`, headers)
23
+ .pipe((0, operators_1.mergeMap)((response) => {
24
+ if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
25
+ const actions = [
26
+ (0, auditReportViewReducer_1.updateAuditReportGroupViewOnSuccess)(companyId, reportGroupId, response.data),
27
+ ];
28
+ return (0, rxjs_1.from)(actions);
29
+ }
30
+ else {
31
+ const actions = [
32
+ (0, auditReportViewReducer_1.updateAuditReportGroupViewOnFailure)(companyId, reportGroupId, response.status),
33
+ ];
34
+ return (0, rxjs_1.from)(actions);
35
+ }
36
+ }), (0, operators_1.catchError)((error) => {
37
+ const actions = [
38
+ (0, auditReportViewReducer_1.updateAuditReportGroupViewOnFailure)(companyId, reportGroupId, (0, responsePayload_1.createZeniAPIStatus)('Unexpected error', 'Audit Report Group view errored out' +
39
+ JSON.stringify(error))),
40
+ ];
41
+ return (0, rxjs_1.from)(actions);
42
+ }));
43
+ }
44
+ else {
45
+ return (0, rxjs_1.from)([]);
46
+ }
47
+ }));
48
+ exports.fetchAuditReportGroupViewEpic = fetchAuditReportGroupViewEpic;
49
+ const toQueryPayload = (action, groupId) => {
50
+ return {
51
+ action,
52
+ audit_rule_group_ids: [groupId],
53
+ };
54
+ };
@@ -0,0 +1,7 @@
1
+ import { Observable } from 'rxjs';
2
+ import { ActionsObservable, StateObservable } from 'redux-observable';
3
+ import { ZeniAPI } from '../../../zeniAPI';
4
+ import { RootState } from '../../../reducer';
5
+ import { fetchAuditRuleGroupView, updateAuditRuleGroupViewOnFailure, updateAuditRuleGroupViewOnSuccess } from '../auditReportViewReducer';
6
+ export declare type ActionType = ReturnType<typeof fetchAuditRuleGroupView> | ReturnType<typeof updateAuditRuleGroupViewOnSuccess> | ReturnType<typeof updateAuditRuleGroupViewOnFailure>;
7
+ export declare const fetchAuditRuleGroupViewEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;