@zeniai/client-epic-state 5.2.86 → 5.2.88

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 (81) hide show
  1. package/lib/entity/reconciliationReport/reconciliationReportPayload.d.ts +95 -0
  2. package/lib/entity/reconciliationReport/reconciliationReportPayload.js +2 -0
  3. package/lib/entity/reconciliationReport/reconciliationReportReducer.d.ts +7 -0
  4. package/lib/entity/reconciliationReport/reconciliationReportReducer.js +151 -0
  5. package/lib/entity/reconciliationReport/reconciliationReportSelector.d.ts +3 -0
  6. package/lib/entity/reconciliationReport/reconciliationReportSelector.js +10 -0
  7. package/lib/entity/reconciliationReport/reconciliationReportState.d.ts +107 -0
  8. package/lib/entity/reconciliationReport/reconciliationReportState.js +15 -0
  9. package/lib/epic.d.ts +2 -1
  10. package/lib/epic.js +2 -0
  11. package/lib/esm/entity/reconciliationReport/reconciliationReportPayload.js +1 -0
  12. package/lib/esm/entity/reconciliationReport/reconciliationReportReducer.js +146 -0
  13. package/lib/esm/entity/reconciliationReport/reconciliationReportSelector.js +4 -0
  14. package/lib/esm/entity/reconciliationReport/reconciliationReportState.js +10 -0
  15. package/lib/esm/epic.js +2 -0
  16. package/lib/esm/index.js +5 -2
  17. package/lib/esm/reducer.js +7 -1
  18. package/lib/esm/view/expenseAutomationView/selectors/reconciliationViewSelector.js +5 -1
  19. package/lib/esm/view/invoicing/createInvoice/epics/fetchCreateInvoiceFormPageEpic.js +19 -5
  20. package/lib/esm/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewPayload.js +57 -4
  21. package/lib/esm/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewSelector.js +3 -1
  22. package/lib/esm/view/invoicing/editInvoicingSubscriptionDetailView/fetchInvoicingSubscriptionDetailPageEpic.js +7 -4
  23. package/lib/esm/view/invoicing/editInvoicingSubscriptionDetailView/fetchInvoicingSubscriptionFormPageEpic.js +1 -0
  24. package/lib/esm/view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig.js +2 -0
  25. package/lib/esm/view/invoicing/editInvoicingSubscriptionDetailView/saveInvoicingSubscriptionEpic.js +6 -2
  26. package/lib/esm/view/invoicing/invoicingCatalogListView/epics/fetchInvoicingCatalogPlanListEpic.js +14 -3
  27. package/lib/esm/view/invoicing/invoicingCatalogListView/epics/fetchInvoicingCatalogProductListEpic.js +14 -3
  28. package/lib/esm/view/invoicing/invoicingCatalogListView/invoicingCatalogListViewReducer.js +2 -0
  29. package/lib/esm/view/invoicing/invoicingListTabCache.js +8 -0
  30. package/lib/esm/view/invoicing/issueCreditNote/issueCreditNotePayload.js +24 -9
  31. package/lib/esm/view/reconciliationReportView/epic/fetchReconciliationReportEpic.js +29 -0
  32. package/lib/esm/view/reconciliationReportView/reconciliationReportViewPayload.js +1 -0
  33. package/lib/esm/view/reconciliationReportView/reconciliationReportViewReducer.js +44 -0
  34. package/lib/esm/view/reconciliationReportView/reconciliationReportViewSelector.js +10 -0
  35. package/lib/esm/view/reconciliationReportView/reconciliationReportViewState.js +1 -0
  36. package/lib/esm/view/settingsView/epic/saveNotificationSettingsEpic.js +7 -0
  37. package/lib/esm/view/settingsView/settingsViewHelpers.js +1 -0
  38. package/lib/esm/view/settingsView/settingsViewReducer.js +16 -1
  39. package/lib/esm/view/settingsView/settingsViewState.js +1 -0
  40. package/lib/index.d.ts +7 -3
  41. package/lib/index.js +52 -47
  42. package/lib/reducer.d.ts +2 -0
  43. package/lib/reducer.js +7 -1
  44. package/lib/rootStateTypes.d.ts +5 -1
  45. package/lib/view/expenseAutomationView/selectors/reconciliationViewSelector.d.ts +3 -0
  46. package/lib/view/expenseAutomationView/selectors/reconciliationViewSelector.js +5 -0
  47. package/lib/view/invoicing/createInvoice/epics/fetchCreateInvoiceFormPageEpic.js +18 -4
  48. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewPayload.d.ts +11 -1
  49. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewPayload.js +57 -4
  50. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewSelector.d.ts +2 -0
  51. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewSelector.js +2 -0
  52. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/editInvoicingSubscriptionDetailViewState.d.ts +13 -0
  53. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/fetchInvoicingSubscriptionDetailPageEpic.js +6 -3
  54. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/fetchInvoicingSubscriptionFormPageEpic.js +1 -0
  55. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig.d.ts +2 -0
  56. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/invoicingSubscriptionFormConfig.js +4 -1
  57. package/lib/view/invoicing/editInvoicingSubscriptionDetailView/saveInvoicingSubscriptionEpic.js +5 -1
  58. package/lib/view/invoicing/invoicingCatalogListView/epics/fetchInvoicingCatalogPlanListEpic.js +14 -3
  59. package/lib/view/invoicing/invoicingCatalogListView/epics/fetchInvoicingCatalogProductListEpic.js +14 -3
  60. package/lib/view/invoicing/invoicingCatalogListView/invoicingCatalogListViewReducer.d.ts +6 -0
  61. package/lib/view/invoicing/invoicingCatalogListView/invoicingCatalogListViewReducer.js +2 -0
  62. package/lib/view/invoicing/invoicingListTabCache.d.ts +11 -1
  63. package/lib/view/invoicing/invoicingListTabCache.js +10 -1
  64. package/lib/view/invoicing/issueCreditNote/issueCreditNotePayload.js +24 -9
  65. package/lib/view/reconciliationReportView/epic/fetchReconciliationReportEpic.d.ts +19 -0
  66. package/lib/view/reconciliationReportView/epic/fetchReconciliationReportEpic.js +33 -0
  67. package/lib/view/reconciliationReportView/reconciliationReportViewPayload.d.ts +3 -0
  68. package/lib/view/reconciliationReportView/reconciliationReportViewPayload.js +2 -0
  69. package/lib/view/reconciliationReportView/reconciliationReportViewReducer.d.ts +13 -0
  70. package/lib/view/reconciliationReportView/reconciliationReportViewReducer.js +48 -0
  71. package/lib/view/reconciliationReportView/reconciliationReportViewSelector.d.ts +9 -0
  72. package/lib/view/reconciliationReportView/reconciliationReportViewSelector.js +13 -0
  73. package/lib/view/reconciliationReportView/reconciliationReportViewState.d.ts +4 -0
  74. package/lib/view/reconciliationReportView/reconciliationReportViewState.js +2 -0
  75. package/lib/view/settingsView/epic/saveNotificationSettingsEpic.js +7 -0
  76. package/lib/view/settingsView/settingsViewHelpers.js +1 -0
  77. package/lib/view/settingsView/settingsViewPayload.d.ts +2 -0
  78. package/lib/view/settingsView/settingsViewReducer.js +16 -1
  79. package/lib/view/settingsView/settingsViewState.d.ts +2 -2
  80. package/lib/view/settingsView/settingsViewState.js +1 -0
  81. package/package.json +1 -1
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchReconciliationReportEpic = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const operators_1 = require("rxjs/operators");
6
+ const reconciliationReportReducer_1 = require("../../../entity/reconciliationReport/reconciliationReportReducer");
7
+ const reconciliationReportSelector_1 = require("../../../entity/reconciliationReport/reconciliationReportSelector");
8
+ const responsePayload_1 = require("../../../responsePayload");
9
+ const reconciliationReportViewReducer_1 = require("../reconciliationReportViewReducer");
10
+ const fetchReconciliationReportEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(reconciliationReportViewReducer_1.fetchReconciliationReport.match), (0, operators_1.switchMap)((action) => {
11
+ const { reconciliationId, cacheOverride } = action.payload;
12
+ const cachedReport = (0, reconciliationReportSelector_1.getReconciliationReportByReconciliationId)(state$.value.reconciliationReportState, reconciliationId);
13
+ if (cacheOverride === true || cachedReport == null) {
14
+ return zeniAPI
15
+ .getJSON(`${zeniAPI.apiEndPoints.reconciliationMicroServiceBaseUrl}/2.0/reconciliation/${reconciliationId}/report`)
16
+ .pipe((0, operators_1.mergeMap)((response) => {
17
+ if ((0, responsePayload_1.isSuccessResponse)(response) === true &&
18
+ response.data != null) {
19
+ return (0, rxjs_1.of)((0, reconciliationReportReducer_1.updateReconciliationReport)(response.data), (0, reconciliationReportViewReducer_1.fetchReconciliationReportSuccess)(reconciliationId));
20
+ }
21
+ return (0, rxjs_1.of)((0, reconciliationReportViewReducer_1.fetchReconciliationReportFailure)({
22
+ reconciliationId,
23
+ status: response.status,
24
+ }));
25
+ }), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, reconciliationReportViewReducer_1.fetchReconciliationReportFailure)({
26
+ reconciliationId,
27
+ status: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Fetch Reconciliation Report REST API call errored out' +
28
+ JSON.stringify(error)),
29
+ }))));
30
+ }
31
+ return (0, rxjs_1.of)((0, reconciliationReportViewReducer_1.fetchReconciliationReportSuccess)(reconciliationId));
32
+ }));
33
+ exports.fetchReconciliationReportEpic = fetchReconciliationReportEpic;
@@ -0,0 +1,3 @@
1
+ import { ReconciliationReportPayload } from '../../entity/reconciliationReport/reconciliationReportPayload';
2
+ import { ZeniAPIResponse } from '../../responsePayload';
3
+ export type ReconciliationReportResponse = ZeniAPIResponse<ReconciliationReportPayload>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,13 @@
1
+ import { ID } from '../../commonStateTypes/common';
2
+ import { ZeniAPIStatus } from '../../responsePayload';
3
+ import { ReconciliationReportViewState } from './reconciliationReportViewState';
4
+ export declare const initialState: ReconciliationReportViewState;
5
+ export declare const fetchReconciliationReport: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[reconciliationId: string, cacheOverride?: any], {
6
+ reconciliationId: string;
7
+ cacheOverride: any;
8
+ }, "reconciliationReportView/fetchReconciliationReport", never, never>, fetchReconciliationReportSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "reconciliationReportView/fetchReconciliationReportSuccess">, fetchReconciliationReportFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
9
+ reconciliationId: ID;
10
+ status: ZeniAPIStatus;
11
+ }, "reconciliationReportView/fetchReconciliationReportFailure">;
12
+ declare const _default: import("redux").Reducer<ReconciliationReportViewState>;
13
+ export default _default;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.fetchReconciliationReportFailure = exports.fetchReconciliationReportSuccess = exports.fetchReconciliationReport = exports.initialState = void 0;
5
+ const toolkit_1 = require("@reduxjs/toolkit");
6
+ const rootActions_1 = require("../../rootActions");
7
+ exports.initialState = {
8
+ fetchReconciliationReportState: {},
9
+ };
10
+ const reconciliationReportView = (0, toolkit_1.createSlice)({
11
+ name: 'reconciliationReportView',
12
+ initialState: exports.initialState,
13
+ reducers: {
14
+ fetchReconciliationReport: {
15
+ prepare(reconciliationId, cacheOverride = false) {
16
+ return { payload: { reconciliationId, cacheOverride } };
17
+ },
18
+ reducer(draft, action) {
19
+ const { reconciliationId } = action.payload;
20
+ draft.fetchReconciliationReportState[reconciliationId] = {
21
+ fetchState: 'In-Progress',
22
+ error: undefined,
23
+ };
24
+ },
25
+ },
26
+ fetchReconciliationReportSuccess(draft, action) {
27
+ const reconciliationId = action.payload;
28
+ draft.fetchReconciliationReportState[reconciliationId] = {
29
+ fetchState: 'Completed',
30
+ error: undefined,
31
+ };
32
+ },
33
+ fetchReconciliationReportFailure(draft, action) {
34
+ const { reconciliationId, status } = action.payload;
35
+ draft.fetchReconciliationReportState[reconciliationId] = {
36
+ fetchState: 'Error',
37
+ error: status,
38
+ };
39
+ },
40
+ },
41
+ extraReducers: (builder) => {
42
+ builder.addCase(rootActions_1.clearAll, (draft) => {
43
+ Object.assign(draft, exports.initialState);
44
+ });
45
+ },
46
+ });
47
+ _a = reconciliationReportView.actions, exports.fetchReconciliationReport = _a.fetchReconciliationReport, exports.fetchReconciliationReportSuccess = _a.fetchReconciliationReportSuccess, exports.fetchReconciliationReportFailure = _a.fetchReconciliationReportFailure;
48
+ exports.default = reconciliationReportView.reducer;
@@ -0,0 +1,9 @@
1
+ import { FetchState, ID } from '../../commonStateTypes/common';
2
+ import { ReconciliationReport } from '../../entity/reconciliationReport/reconciliationReportState';
3
+ import { ZeniAPIStatus } from '../../responsePayload';
4
+ import { RootState } from '../../rootStateTypes';
5
+ export declare function getReconciliationReport(state: RootState, reconciliationId: ID): {
6
+ fetchState: FetchState;
7
+ fetchError?: ZeniAPIStatus;
8
+ report?: ReconciliationReport;
9
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getReconciliationReport = getReconciliationReport;
4
+ const reconciliationReportSelector_1 = require("../../entity/reconciliationReport/reconciliationReportSelector");
5
+ function getReconciliationReport(state, reconciliationId) {
6
+ const fetchReconciliationReportState = state.reconciliationReportViewState.fetchReconciliationReportState[reconciliationId];
7
+ const report = (0, reconciliationReportSelector_1.getReconciliationReportByReconciliationId)(state.reconciliationReportState, reconciliationId);
8
+ return {
9
+ fetchState: fetchReconciliationReportState?.fetchState ?? 'Not-Started',
10
+ fetchError: fetchReconciliationReportState?.error,
11
+ report,
12
+ };
13
+ }
@@ -0,0 +1,4 @@
1
+ import { FetchStateAndError, ID } from '../../commonStateTypes/common';
2
+ export interface ReconciliationReportViewState {
3
+ fetchReconciliationReportState: Record<ID, FetchStateAndError>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -54,6 +54,8 @@ function toSaveNotificationSettingsPayload(localData, notificationSettingsData)
54
54
  pending_bill_approval_notification: null,
55
55
  pending_reimbursement_approval_notification: null,
56
56
  is_pending_reimbursement_approval_notification_active: null,
57
+ is_pending_task_notification_active: null,
58
+ pending_task_notification: null,
57
59
  is_month_end_insights_active: monthEndInsightsNotificationSettings.enabled != null
58
60
  ? monthEndInsights.notify
59
61
  : null,
@@ -81,5 +83,10 @@ function toSaveNotificationSettingsPayload(localData, notificationSettingsData)
81
83
  0;
82
84
  payload.pending_reimbursement_approval_notification = toRemindersPayload(reminders.pendingReimbursementApprovalNotification);
83
85
  }
86
+ if (reminderNotificationSettings.pendingTaskNotification != null) {
87
+ payload.is_pending_task_notification_active =
88
+ reminders.pendingTaskNotification.preferredMode.length > 0;
89
+ payload.pending_task_notification = toRemindersPayload(reminders.pendingTaskNotification);
90
+ }
84
91
  return payload;
85
92
  }
@@ -153,6 +153,7 @@ const isRemindersSectionVisibleOnSettingsPage = (reminderNotificationSettings) =
153
153
  reminderNotificationSettings.pendingBillApprovalNotification != null ||
154
154
  reminderNotificationSettings.pendingReimbursementApprovalNotification !=
155
155
  null ||
156
+ reminderNotificationSettings.pendingTaskNotification != null ||
156
157
  reminderNotificationSettings.uncategorizedTransactionNotification != null);
157
158
  };
158
159
  exports.isRemindersSectionVisibleOnSettingsPage = isRemindersSectionVisibleOnSettingsPage;
@@ -32,10 +32,12 @@ export interface NotificationSettingsPayload {
32
32
  is_month_end_insights_active: boolean | null;
33
33
  is_pending_bill_approval_notification_active: boolean | null;
34
34
  is_pending_reimbursement_approval_notification_active: boolean | null;
35
+ is_pending_task_notification_active: boolean | null;
35
36
  is_uncategorized_transaction_notification_active: boolean | null;
36
37
  missing_receipt_notification: RemindersPayload | null;
37
38
  pending_bill_approval_notification: RemindersPayload | null;
38
39
  pending_reimbursement_approval_notification: RemindersPayload | null;
40
+ pending_task_notification: RemindersPayload | null;
39
41
  uncategorized_transaction_notification: RemindersPayload | null;
40
42
  month_end_email_recipient_email_ids?: string[];
41
43
  task_checklist_preferences?: NotificationPreferencesPayload;
@@ -8,6 +8,7 @@ const settingsViewState_1 = require("./settingsViewState");
8
8
  const initialNotificationSettingsData = {
9
9
  reminderNotificationSettings: {
10
10
  missingReceiptNotification: null,
11
+ pendingTaskNotification: null,
11
12
  uncategorizedTransactionNotification: null,
12
13
  pendingBillApprovalNotification: null,
13
14
  pendingReimbursementApprovalNotification: null,
@@ -48,6 +49,7 @@ const initialNotificationSettingsLocalData = {
48
49
  missingReceiptNotification: initialRemindersLocalData,
49
50
  pendingBillApprovalNotification: initialRemindersLocalData,
50
51
  pendingReimbursementApprovalNotification: initialRemindersLocalData,
52
+ pendingTaskNotification: initialRemindersLocalData,
51
53
  uncategorizedTransactionNotification: initialRemindersLocalData,
52
54
  },
53
55
  };
@@ -377,7 +379,7 @@ function toRemindersLocalData(reminderNotificationSettingDetails) {
377
379
  }
378
380
  const toNotificationSettingsLocalData = (data, loggedInUserEmail) => {
379
381
  const { monthEndInsightsNotificationSettings, reminderNotificationSettings } = data;
380
- const { missingReceiptNotification, pendingBillApprovalNotification, pendingReimbursementApprovalNotification, uncategorizedTransactionNotification, } = reminderNotificationSettings;
382
+ const { missingReceiptNotification, pendingBillApprovalNotification, pendingReimbursementApprovalNotification, pendingTaskNotification, uncategorizedTransactionNotification, } = reminderNotificationSettings;
381
383
  return {
382
384
  monthEndInsights: {
383
385
  notify: monthEndInsightsNotificationSettings.enabled ??
@@ -388,10 +390,22 @@ const toNotificationSettingsLocalData = (data, loggedInUserEmail) => {
388
390
  missingReceiptNotification: toRemindersLocalData(missingReceiptNotification),
389
391
  pendingBillApprovalNotification: toRemindersLocalData(pendingBillApprovalNotification),
390
392
  pendingReimbursementApprovalNotification: toRemindersLocalData(pendingReimbursementApprovalNotification),
393
+ pendingTaskNotification: toRemindersLocalData(pendingTaskNotification),
391
394
  uncategorizedTransactionNotification: toRemindersLocalData(uncategorizedTransactionNotification),
392
395
  },
393
396
  };
394
397
  };
398
+ function toPendingTaskNotificationActive(data) {
399
+ if (data.is_pending_task_notification_active != null) {
400
+ return data.is_pending_task_notification_active;
401
+ }
402
+ // Rows saved before this flag existed store null. It shares the
403
+ // transactions-reminder scope with missing receipts and uncategorized
404
+ // transactions, so a set sibling means the user has access.
405
+ const hasTransactionReminderAccess = data.is_missing_receipt_notification_active != null ||
406
+ data.is_uncategorized_transaction_notification_active != null;
407
+ return hasTransactionReminderAccess ? false : null;
408
+ }
395
409
  function toReminderNotificationSettingsDetails(isNotificationActive, remindersPayload) {
396
410
  if (isNotificationActive != null) {
397
411
  return {
@@ -412,6 +426,7 @@ const toNotificationSettings = (data) => {
412
426
  missingReceiptNotification: toReminderNotificationSettingsDetails(data.is_missing_receipt_notification_active, data.missing_receipt_notification),
413
427
  pendingBillApprovalNotification: toReminderNotificationSettingsDetails(data.is_pending_bill_approval_notification_active, data.pending_bill_approval_notification),
414
428
  pendingReimbursementApprovalNotification: toReminderNotificationSettingsDetails(data.is_pending_reimbursement_approval_notification_active, data.pending_reimbursement_approval_notification),
429
+ pendingTaskNotification: toReminderNotificationSettingsDetails(toPendingTaskNotificationActive(data), data.pending_task_notification),
415
430
  uncategorizedTransactionNotification: toReminderNotificationSettingsDetails(data.is_uncategorized_transaction_notification_active, data.uncategorized_transaction_notification),
416
431
  },
417
432
  monthEndInsightsNotificationSettings: {
@@ -9,8 +9,8 @@ interface BillingAddress extends FetchStateAndError {
9
9
  export interface IntegrationsSettings {
10
10
  refreshQBO: FetchStateAndError;
11
11
  }
12
- export declare const REMINDER_NOTIFICATION_TYPES: readonly ["missingReceiptNotification", "uncategorizedTransactionNotification", "pendingBillApprovalNotification", "pendingReimbursementApprovalNotification"];
13
- declare const toReminderTypeKey: (v: string) => "missingReceiptNotification" | "uncategorizedTransactionNotification" | "pendingBillApprovalNotification" | "pendingReimbursementApprovalNotification";
12
+ export declare const REMINDER_NOTIFICATION_TYPES: readonly ["missingReceiptNotification", "pendingTaskNotification", "uncategorizedTransactionNotification", "pendingBillApprovalNotification", "pendingReimbursementApprovalNotification"];
13
+ declare const toReminderTypeKey: (v: string) => "missingReceiptNotification" | "pendingTaskNotification" | "uncategorizedTransactionNotification" | "pendingBillApprovalNotification" | "pendingReimbursementApprovalNotification";
14
14
  export type ReminderTypeKey = ReturnType<typeof toReminderTypeKey>;
15
15
  export declare const toRemindersFrequencyType: (v: string) => "weekly" | "monthly" | "daily" | "bi-weekly";
16
16
  export type FrequencyTypeKey = ReturnType<typeof toRemindersFrequencyType>;
@@ -4,6 +4,7 @@ exports.toNotificationMode = exports.NOTIFICATION_MODES = exports.toRemindersFre
4
4
  const stringToUnion_1 = require("../../commonStateTypes/stringToUnion");
5
5
  exports.REMINDER_NOTIFICATION_TYPES = [
6
6
  'missingReceiptNotification',
7
+ 'pendingTaskNotification',
7
8
  'uncategorizedTransactionNotification',
8
9
  'pendingBillApprovalNotification',
9
10
  'pendingReimbursementApprovalNotification',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeniai/client-epic-state",
3
- "version": "5.2.86",
3
+ "version": "5.2.88",
4
4
  "description": "Shared module between Web & Mobile containing required abstractions for state management, async network communication. ",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib/esm/index.js",