@zeniai/client-epic-state 4.12.21 → 4.12.23
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.
- package/lib/entity/chargeCardTransaction/chargeCardTransaction.d.ts +2 -0
- package/lib/entity/chargeCardTransaction/chargeCardTransactionPayload.d.ts +5 -0
- package/lib/entity/chargeCardTransaction/chargeCardTransactionPayload.js +4 -2
- package/lib/entity/chargeCardTransaction/chargeCardTransactionReducer.d.ts +6 -2
- package/lib/entity/chargeCardTransaction/chargeCardTransactionReducer.js +8 -2
- package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
- package/lib/entity/snackbar/snackbarTypes.js +1 -0
- package/lib/entity/task/taskState.d.ts +0 -3
- package/lib/entity/task/taskState.js +0 -13
- package/lib/entity/toastNotification/epic/pushToastNotificationEpic.d.ts +1 -1
- package/lib/epic.d.ts +4 -1
- package/lib/epic.js +4 -1
- package/lib/index.d.ts +18 -16
- package/lib/index.js +17 -5
- package/lib/view/cardPayment/epic/addCardPaymentSourceEpic.d.ts +1 -1
- package/lib/view/cardPayment/epic/confirmCardSetupIntentEpic.d.ts +1 -1
- package/lib/view/cardPayment/epic/createCardSetupIntentEpic.d.ts +1 -1
- package/lib/view/cardPayment/epic/fetchPaymentSourcesEpic.d.ts +1 -1
- package/lib/view/globalMerchantView/epics/fetchGlobalMerchantRecommendationEpic.d.ts +3 -3
- package/lib/view/globalMerchantView/epics/fetchGlobalMerchantRecommendationEpic.js +20 -4
- package/lib/view/globalMerchantView/globalMerchantViewReducer.d.ts +5 -2
- package/lib/view/globalMerchantView/globalMerchantViewReducer.js +8 -3
- package/lib/view/globalMerchantView/globalMerchantViewSelector.d.ts +1 -1
- package/lib/view/globalMerchantView/globalMerchantViewSelector.js +6 -5
- package/lib/view/globalMerchantView/globalMerchantViewState.d.ts +1 -0
- package/lib/view/people/changeZeniPersonRolesEpic.d.ts +1 -1
- package/lib/view/people/deletePersonEpic.d.ts +1 -1
- package/lib/view/people/invitePeopleEpic.d.ts +1 -1
- package/lib/view/people/inviteZeniPeopleEpic.d.ts +1 -1
- package/lib/view/people/resendInviteEpic.d.ts +1 -1
- package/lib/view/settingsView/epic/saveNotificationSettingsEpic.d.ts +1 -1
- package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigPayload.d.ts +4 -0
- package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigReducer.js +9 -0
- package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigState.d.ts +4 -0
- package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.d.ts +10 -4
- package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.js +82 -29
- package/lib/view/spendManagement/billPay/editBillView/epics/initializeBillToLocalStoreEpic.js +2 -2
- package/lib/view/spendManagement/billPay/editBillView/epics/parseInvoiceToBillEpic.js +1 -1
- package/lib/view/spendManagement/chargeCards/chargeCardConfig/chargeCardConfigPayload.d.ts +6 -0
- package/lib/view/spendManagement/chargeCards/chargeCardConfig/chargeCardConfigReducer.js +9 -0
- package/lib/view/spendManagement/chargeCards/chargeCardConfig/chargeCardConfigState.d.ts +3 -0
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetail.d.ts +11 -1
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetail.js +20 -2
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailPayload.d.ts +5 -0
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailReducer.d.ts +27 -2
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailReducer.js +77 -4
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailSelector.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailSelector.js +19 -2
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardTransactionAttachmentsEpic.d.ts +10 -0
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardTransactionAttachmentsEpic.js +42 -0
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardTransactionListEpic.js +3 -1
- package/lib/view/spendManagement/reimbursement/editRemiView/editRemiViewReducer.js +4 -2
- package/lib/view/tagView/epics/createTagEpic.d.ts +1 -1
- package/lib/view/tagView/epics/deleteTagEpic.d.ts +1 -1
- package/lib/view/taskManager/taskDetailView/taskDetail.js +1 -1
- package/lib/view/taskManager/taskListView/bulkUpdateTaskListEpic.d.ts +23 -0
- package/lib/view/taskManager/taskListView/bulkUpdateTaskListEpic.js +3 -2
- package/lib/view/taskManager/taskListView/taskListReducer.d.ts +5 -0
- package/lib/view/taskManager/taskListView/taskListReducer.js +64 -3
- package/lib/view/taskManager/taskListView/updateTaskFromListViewEpic.d.ts +8 -0
- package/lib/view/taskManager/taskListView/updateTaskFromListViewEpic.js +38 -0
- package/lib/view/vendorReviewView/common/state/commonTypes.d.ts +2 -1
- package/lib/view/vendorReviewView/common/state/commonTypes.js +4 -4
- package/lib/view/vendorReviewView/vendorFirstReviewView/epics/saveVendorDetailsViewEpic.d.ts +8 -0
- package/lib/view/vendorReviewView/vendorFirstReviewView/epics/saveVendorDetailsViewEpic.js +62 -0
- package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewPayload.d.ts +7 -1
- package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewPayload.js +11 -1
- package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewReducer.d.ts +14 -4
- package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewReducer.js +58 -49
- package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewSelector.d.ts +10 -0
- package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewSelector.js +21 -1
- package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewState.d.ts +20 -2
- package/lib/view/vendorReviewView/vendorGlobalReviewView/epics/fetchVendorGlobalReviewViewEpic.js +4 -4
- package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewPayload.d.ts +1 -1
- package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewPayload.js +2 -2
- package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewReducer.d.ts +6 -1
- package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewReducer.js +18 -6
- package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewSelector.d.ts +3 -1
- package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewSelector.js +7 -5
- package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewState.d.ts +9 -1
- package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewState.js +2 -2
- package/package.json +1 -1
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.clearChargeCardDetail = exports.updateChargeCardDetailUpdateStatus = exports.updateChargeCardDetail = exports.updateChargeCardTransactionListFailure = exports.updateChargeCardTransactionList = exports.fetchChargeCardTransactionList = exports.updateChargeCardDetailFetchState = exports.fetchChargeCardDetail = exports.fetchChargeCardDetailPage = exports.initialState = void 0;
|
|
4
|
+
exports.clearChargeCardDetail = exports.updateChargeCardDetailUpdateStatus = exports.updateChargeCardDetail = exports.updateChargeCardTransactionListFailure = exports.updateChargeCardTransactionAttachmentsInCardDetail = exports.updateChargeCardTransactionReceiptsShowTickFetchStatus = exports.updateChargeCardTransactionAttachmentsFailure = exports.fetchChargeCardTransactionAttachments = exports.updateChargeCardTransactionUploadReceiptsFetchStatus = exports.updateChargeCardTransactionList = exports.updateChargeCardDetailUIState = exports.fetchChargeCardTransactionList = exports.updateChargeCardDetailFetchState = exports.fetchChargeCardDetail = exports.fetchChargeCardDetailPage = exports.initialState = void 0;
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
|
-
const chargeCardDetail_1 = require("./chargeCardDetail");
|
|
7
6
|
const sortOrderPayload_1 = require("../../../../commonPayloadTypes/sortOrderPayload");
|
|
7
|
+
const attachmentPayload_1 = require("../../../../entity/transaction/payloadTypes/attachmentPayload");
|
|
8
|
+
const chargeCardDetail_1 = require("./chargeCardDetail");
|
|
8
9
|
exports.initialState = {
|
|
9
10
|
detailById: {},
|
|
10
11
|
};
|
|
@@ -67,10 +68,27 @@ const chargeCardDetail = (0, toolkit_1.createSlice)({
|
|
|
67
68
|
...existingCardDetail.transactionList.transactionIds,
|
|
68
69
|
...newTransactionIds,
|
|
69
70
|
]),
|
|
70
|
-
], fetchState: 'Completed', error: undefined, uiState: Object.assign(Object.assign({}, existingCardDetail.transactionList.uiState), { sortOrder: (0, sortOrderPayload_1.mapSortOrderPayloadToSortOrder)(data.query.sort_order),
|
|
71
|
+
], fetchState: 'Completed', error: undefined, uiState: Object.assign(Object.assign({}, existingCardDetail.transactionList.uiState), { sortOrder: (0, sortOrderPayload_1.mapSortOrderPayloadToSortOrder)(data.query.sort_order), sortKey: data.query.sort_by === 'transaction_date'
|
|
72
|
+
? 'paymentDate'
|
|
73
|
+
: (0, chargeCardDetail_1.toChargeCardTransactionSortKeyType)(data.query.sort_by), limit: data.query.limit, pageToken: data.query.page_token, pageTokenType: data.query.page_token_type, scrollYOffset: existingCardDetail.transactionList.uiState.pageToken === null
|
|
71
74
|
? 0
|
|
72
75
|
: existingCardDetail.transactionList.uiState.scrollYOffset }) }) });
|
|
73
76
|
},
|
|
77
|
+
updateChargeCardDetailUIState(draft, action) {
|
|
78
|
+
const { chargeCardId, uiState } = action.payload;
|
|
79
|
+
if (uiState.sortKey != null) {
|
|
80
|
+
draft.detailById[chargeCardId].transactionList.uiState.sortKey =
|
|
81
|
+
uiState.sortKey;
|
|
82
|
+
}
|
|
83
|
+
if (uiState.sortOrder != null) {
|
|
84
|
+
draft.detailById[chargeCardId].transactionList.uiState.sortOrder =
|
|
85
|
+
uiState.sortOrder;
|
|
86
|
+
}
|
|
87
|
+
if (uiState.scrollYOffset != null) {
|
|
88
|
+
draft.detailById[chargeCardId].transactionList.uiState.scrollYOffset =
|
|
89
|
+
uiState.scrollYOffset;
|
|
90
|
+
}
|
|
91
|
+
},
|
|
74
92
|
updateChargeCardTransactionListFailure(draft, action) {
|
|
75
93
|
const { chargeCardId, error } = action.payload;
|
|
76
94
|
const existingCardDetail = draft.detailById[chargeCardId];
|
|
@@ -99,10 +117,65 @@ const chargeCardDetail = (0, toolkit_1.createSlice)({
|
|
|
99
117
|
error,
|
|
100
118
|
} });
|
|
101
119
|
},
|
|
120
|
+
updateChargeCardTransactionUploadReceiptsFetchStatus(draft, action) {
|
|
121
|
+
const { transactionId, chargeCardId, fetchState, error } = action.payload;
|
|
122
|
+
draft.detailById[chargeCardId].transactionList.uploadReceiptsFetchStateByTransactionId[transactionId] =
|
|
123
|
+
{
|
|
124
|
+
fetchState,
|
|
125
|
+
error,
|
|
126
|
+
};
|
|
127
|
+
},
|
|
128
|
+
updateChargeCardTransactionReceiptsShowTickFetchStatus(draft, action) {
|
|
129
|
+
const { transactionId, chargeCardId, shouldShowTick } = action.payload;
|
|
130
|
+
draft.detailById[chargeCardId].transactionList.uploadReceiptsShowTickByTransactionId[transactionId] =
|
|
131
|
+
shouldShowTick;
|
|
132
|
+
},
|
|
133
|
+
fetchChargeCardTransactionAttachments: {
|
|
134
|
+
reducer(draft, action) {
|
|
135
|
+
const { cardId, transactionId } = action.payload;
|
|
136
|
+
draft.detailById[cardId] = Object.assign(Object.assign({}, chargeCardDetail_1.emptyChargeCardDetail), { id: cardId, transactionList: Object.assign(Object.assign({}, chargeCardDetail_1.emptyChargeCardDetail.transactionList), { transactionAttachmentsByTransactionId: {
|
|
137
|
+
[transactionId]: {
|
|
138
|
+
fetchState: 'In-Progress',
|
|
139
|
+
error: undefined,
|
|
140
|
+
attachments: [],
|
|
141
|
+
},
|
|
142
|
+
} }) });
|
|
143
|
+
},
|
|
144
|
+
prepare(cardId, transactionId, attachmentIds) {
|
|
145
|
+
return {
|
|
146
|
+
payload: {
|
|
147
|
+
cardId,
|
|
148
|
+
transactionId,
|
|
149
|
+
attachmentIds,
|
|
150
|
+
},
|
|
151
|
+
};
|
|
152
|
+
},
|
|
153
|
+
},
|
|
154
|
+
updateChargeCardTransactionAttachmentsInCardDetail(draft, action) {
|
|
155
|
+
const { cardId, transactionId, transactionAttachments } = action.payload;
|
|
156
|
+
const attachments = transactionAttachments.map((transactionAttachment) => (0, attachmentPayload_1.toAttachment)(transactionAttachment));
|
|
157
|
+
draft.detailById[cardId] = Object.assign(Object.assign({}, chargeCardDetail_1.emptyChargeCardDetail), { id: cardId, transactionList: Object.assign(Object.assign({}, chargeCardDetail_1.emptyChargeCardDetail.transactionList), { transactionAttachmentsByTransactionId: {
|
|
158
|
+
[transactionId]: {
|
|
159
|
+
fetchState: 'Completed',
|
|
160
|
+
error: undefined,
|
|
161
|
+
attachments,
|
|
162
|
+
},
|
|
163
|
+
} }) });
|
|
164
|
+
},
|
|
165
|
+
updateChargeCardTransactionAttachmentsFailure(draft, action) {
|
|
166
|
+
const { cardId, transactionId, status } = action.payload;
|
|
167
|
+
draft.detailById[cardId] = Object.assign(Object.assign({}, chargeCardDetail_1.emptyChargeCardDetail), { id: cardId, transactionList: Object.assign(Object.assign({}, chargeCardDetail_1.emptyChargeCardDetail.transactionList), { transactionAttachmentsByTransactionId: {
|
|
168
|
+
[transactionId]: {
|
|
169
|
+
fetchState: 'Error',
|
|
170
|
+
error: status,
|
|
171
|
+
attachments: [],
|
|
172
|
+
},
|
|
173
|
+
} }) });
|
|
174
|
+
},
|
|
102
175
|
clearChargeCardDetail(draft) {
|
|
103
176
|
Object.assign(draft, exports.initialState);
|
|
104
177
|
},
|
|
105
178
|
},
|
|
106
179
|
});
|
|
107
|
-
_a = chargeCardDetail.actions, exports.fetchChargeCardDetailPage = _a.fetchChargeCardDetailPage, exports.fetchChargeCardDetail = _a.fetchChargeCardDetail, exports.updateChargeCardDetailFetchState = _a.updateChargeCardDetailFetchState, exports.fetchChargeCardTransactionList = _a.fetchChargeCardTransactionList, exports.updateChargeCardTransactionList = _a.updateChargeCardTransactionList, exports.updateChargeCardTransactionListFailure = _a.updateChargeCardTransactionListFailure, exports.updateChargeCardDetail = _a.updateChargeCardDetail, exports.updateChargeCardDetailUpdateStatus = _a.updateChargeCardDetailUpdateStatus, exports.clearChargeCardDetail = _a.clearChargeCardDetail;
|
|
180
|
+
_a = chargeCardDetail.actions, exports.fetchChargeCardDetailPage = _a.fetchChargeCardDetailPage, exports.fetchChargeCardDetail = _a.fetchChargeCardDetail, exports.updateChargeCardDetailFetchState = _a.updateChargeCardDetailFetchState, exports.fetchChargeCardTransactionList = _a.fetchChargeCardTransactionList, exports.updateChargeCardDetailUIState = _a.updateChargeCardDetailUIState, exports.updateChargeCardTransactionList = _a.updateChargeCardTransactionList, exports.updateChargeCardTransactionUploadReceiptsFetchStatus = _a.updateChargeCardTransactionUploadReceiptsFetchStatus, exports.fetchChargeCardTransactionAttachments = _a.fetchChargeCardTransactionAttachments, exports.updateChargeCardTransactionAttachmentsFailure = _a.updateChargeCardTransactionAttachmentsFailure, exports.updateChargeCardTransactionReceiptsShowTickFetchStatus = _a.updateChargeCardTransactionReceiptsShowTickFetchStatus, exports.updateChargeCardTransactionAttachmentsInCardDetail = _a.updateChargeCardTransactionAttachmentsInCardDetail, exports.updateChargeCardTransactionListFailure = _a.updateChargeCardTransactionListFailure, exports.updateChargeCardDetail = _a.updateChargeCardDetail, exports.updateChargeCardDetailUpdateStatus = _a.updateChargeCardDetailUpdateStatus, exports.clearChargeCardDetail = _a.clearChargeCardDetail;
|
|
108
181
|
exports.default = chargeCardDetail.reducer;
|
|
@@ -6,9 +6,12 @@ import { ChargeCardConfigState } from '../chargeCardConfig/chargeCardConfigState
|
|
|
6
6
|
import { ChargeCardWithUser } from '../chargeCardList/chargeCardListSelector';
|
|
7
7
|
import { ChargeCardDetailUiState } from './chargeCardDetail';
|
|
8
8
|
import { TwoFactorAuthenticationState } from '../../../twoFactorAuthentication/twoFactorAuthentication';
|
|
9
|
+
import { Attachment } from '../../../../entity/transaction/stateTypes/attachment';
|
|
9
10
|
export interface ChargeCardDetailSelectorView extends SelectorView {
|
|
10
11
|
chargeCardConfig: ChargeCardConfigState;
|
|
11
12
|
transactions: ChargeCardTransaction[];
|
|
13
|
+
uploadReceiptsFetchStateByTransactionId: Record<ID, FetchStateAndError>;
|
|
14
|
+
uploadReceiptsShowTickByTransactionId: Record<ID, boolean>;
|
|
12
15
|
uiState: ChargeCardDetailUiState;
|
|
13
16
|
transactionListFetchState: FetchStateAndError;
|
|
14
17
|
twoFAView: TwoFactorAuthenticationState;
|
|
@@ -17,3 +20,8 @@ export interface ChargeCardDetailSelectorView extends SelectorView {
|
|
|
17
20
|
chargeCard?: ChargeCardWithUser;
|
|
18
21
|
}
|
|
19
22
|
export declare const getChargeCardDetailView: (state: RootState, chargeCardId: ID) => ChargeCardDetailSelectorView;
|
|
23
|
+
export interface ChargeCardTransactionAttachmentView {
|
|
24
|
+
attachmentFetchStatus: FetchStateAndError;
|
|
25
|
+
transactionAttachments: Attachment[];
|
|
26
|
+
}
|
|
27
|
+
export declare const getChargeCardTransactionAttachmentView: (state: RootState, cardId: ID, transactionId: ID) => ChargeCardTransactionAttachmentView | undefined;
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getChargeCardDetailView = void 0;
|
|
6
|
+
exports.getChargeCardTransactionAttachmentView = exports.getChargeCardDetailView = void 0;
|
|
7
7
|
const get_1 = __importDefault(require("lodash/get"));
|
|
8
8
|
const reduceFetchState_1 = require("../../../../commonStateTypes/reduceFetchState");
|
|
9
9
|
const addressSelector_1 = require("../../../../entity/address/addressSelector");
|
|
@@ -14,7 +14,7 @@ const userSelector_1 = require("../../../../entity/user/userSelector");
|
|
|
14
14
|
const userRoleSelector_1 = require("../../../../entity/userRole/userRoleSelector");
|
|
15
15
|
const chargeCardDetail_1 = require("./chargeCardDetail");
|
|
16
16
|
const getChargeCardDetailView = (state, chargeCardId) => {
|
|
17
|
-
var _a, _b, _c, _d, _e, _f;
|
|
17
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
18
18
|
const { tenantState, addressState, chargeCardDetailState, chargeCardState, classState, userState, userRoleState, chargeCardConfigState, chargeCardTransactionState, twoFactorAuthenticationState, } = state;
|
|
19
19
|
const loggedInUserId = (_b = (_a = tenantState.loggedInUser) === null || _a === void 0 ? void 0 : _a.userId) !== null && _b !== void 0 ? _b : '';
|
|
20
20
|
const loggedInUserPhone = (_e = (_c = twoFactorAuthenticationState.phone) !== null && _c !== void 0 ? _c : (_d = (0, userSelector_1.getUserByUserId)(userState, loggedInUserId)) === null || _d === void 0 ? void 0 : _d.phone) !== null && _e !== void 0 ? _e : '';
|
|
@@ -69,6 +69,8 @@ const getChargeCardDetailView = (state, chargeCardId) => {
|
|
|
69
69
|
error: reducedFetchState.error,
|
|
70
70
|
chargeCardConfig: chargeCardConfigState,
|
|
71
71
|
transactions,
|
|
72
|
+
uploadReceiptsFetchStateByTransactionId: (_g = chargeCardDetail === null || chargeCardDetail === void 0 ? void 0 : chargeCardDetail.transactionList.uploadReceiptsFetchStateByTransactionId) !== null && _g !== void 0 ? _g : {},
|
|
73
|
+
uploadReceiptsShowTickByTransactionId: (_h = chargeCardDetail === null || chargeCardDetail === void 0 ? void 0 : chargeCardDetail.transactionList.uploadReceiptsShowTickByTransactionId) !== null && _h !== void 0 ? _h : {},
|
|
72
74
|
uiState,
|
|
73
75
|
transactionListFetchState,
|
|
74
76
|
twoFAView: twoFactorAuthenticationState,
|
|
@@ -77,3 +79,18 @@ const getChargeCardDetailView = (state, chargeCardId) => {
|
|
|
77
79
|
};
|
|
78
80
|
};
|
|
79
81
|
exports.getChargeCardDetailView = getChargeCardDetailView;
|
|
82
|
+
const getChargeCardTransactionAttachmentView = (state, cardId, transactionId) => {
|
|
83
|
+
const { chargeCardDetailState } = state;
|
|
84
|
+
const { transactionAttachmentsByTransactionId } = chargeCardDetailState.detailById[cardId].transactionList;
|
|
85
|
+
if (transactionAttachmentsByTransactionId[transactionId] == null) {
|
|
86
|
+
return undefined;
|
|
87
|
+
}
|
|
88
|
+
return {
|
|
89
|
+
attachmentFetchStatus: {
|
|
90
|
+
fetchState: transactionAttachmentsByTransactionId[transactionId].fetchState,
|
|
91
|
+
error: transactionAttachmentsByTransactionId[transactionId].error,
|
|
92
|
+
},
|
|
93
|
+
transactionAttachments: transactionAttachmentsByTransactionId[transactionId].attachments,
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
exports.getChargeCardTransactionAttachmentView = getChargeCardTransactionAttachmentView;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { RootState } from '../../../../reducer';
|
|
4
|
+
import { ZeniAPI } from '../../../../zeniAPI';
|
|
5
|
+
import { fetchChargeCardTransactionAttachments, updateChargeCardTransactionAttachmentsInCardDetail, updateChargeCardTransactionAttachmentsFailure } from './chargeCardDetailReducer';
|
|
6
|
+
export declare type ActionType = ReturnType<typeof fetchChargeCardTransactionAttachments> | ReturnType<typeof updateChargeCardTransactionAttachmentsInCardDetail> | ReturnType<typeof updateChargeCardTransactionAttachmentsFailure>;
|
|
7
|
+
export declare const fetchChargeCardTransactionAttachmentsEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|
|
8
|
+
export interface ChargeCardTransactionAttachmentQueryPayload {
|
|
9
|
+
attachment_ids: string[];
|
|
10
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchChargeCardTransactionAttachmentsEpic = void 0;
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const operators_1 = require("rxjs/operators");
|
|
6
|
+
const responsePayload_1 = require("../../../../responsePayload");
|
|
7
|
+
const chargeCardDetailReducer_1 = require("./chargeCardDetailReducer");
|
|
8
|
+
const fetchChargeCardTransactionAttachmentsEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(chargeCardDetailReducer_1.fetchChargeCardTransactionAttachments.match), (0, operators_1.switchMap)((action) => {
|
|
9
|
+
const { transactionId, cardId, attachmentIds } = action.payload;
|
|
10
|
+
let apiUrl = `${zeniAPI.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/transactions/${transactionId}/attachments`;
|
|
11
|
+
const queryParam = {
|
|
12
|
+
attachment_ids: attachmentIds,
|
|
13
|
+
};
|
|
14
|
+
apiUrl =
|
|
15
|
+
apiUrl + `?query=${encodeURIComponent(JSON.stringify(queryParam))}`;
|
|
16
|
+
return zeniAPI
|
|
17
|
+
.getJSON(apiUrl)
|
|
18
|
+
.pipe((0, operators_1.mergeMap)((response) => {
|
|
19
|
+
if ((0, responsePayload_1.isSuccessStatus)(response) && response.data != null) {
|
|
20
|
+
return (0, rxjs_1.of)((0, chargeCardDetailReducer_1.updateChargeCardTransactionAttachmentsInCardDetail)({
|
|
21
|
+
transactionId,
|
|
22
|
+
cardId,
|
|
23
|
+
transactionAttachments: response.data.attachments,
|
|
24
|
+
}));
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
return (0, rxjs_1.of)((0, chargeCardDetailReducer_1.updateChargeCardTransactionAttachmentsFailure)({
|
|
28
|
+
cardId,
|
|
29
|
+
transactionId,
|
|
30
|
+
status: response.status,
|
|
31
|
+
}));
|
|
32
|
+
}
|
|
33
|
+
}), (0, operators_1.catchError)((error) => {
|
|
34
|
+
return (0, rxjs_1.of)((0, chargeCardDetailReducer_1.updateChargeCardTransactionAttachmentsFailure)({
|
|
35
|
+
cardId,
|
|
36
|
+
transactionId,
|
|
37
|
+
status: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Fetch charge card transaction attachments API call errored out' +
|
|
38
|
+
JSON.stringify(error)),
|
|
39
|
+
}));
|
|
40
|
+
}));
|
|
41
|
+
}));
|
|
42
|
+
exports.fetchChargeCardTransactionAttachmentsEpic = fetchChargeCardTransactionAttachmentsEpic;
|
package/lib/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardTransactionListEpic.js
CHANGED
|
@@ -15,7 +15,9 @@ const fetchChargeCardTransactionListEpic = (actions$, state$, zeniAPI) => action
|
|
|
15
15
|
const queryParam = {
|
|
16
16
|
page_token: pageToken,
|
|
17
17
|
page_token_type: pageTokenType,
|
|
18
|
-
sort_by: uiState.
|
|
18
|
+
sort_by: uiState.sortKey === 'paymentDate'
|
|
19
|
+
? 'transaction_date'
|
|
20
|
+
: uiState.sortKey,
|
|
19
21
|
sort_order: (0, sortOrderPayload_1.getSortOrder)(uiState.sortOrder),
|
|
20
22
|
};
|
|
21
23
|
return zeniAPI
|
|
@@ -401,8 +401,10 @@ const doUpdateRecommendationForEntity = (draft, lineId, recommendations, shouldA
|
|
|
401
401
|
draft.newRemiState.remiDetailLocalData.updatesByLineId[lineId].outOfPocket = Object.assign(Object.assign({}, draft.newRemiState.remiDetailLocalData.updatesByLineId[lineId]
|
|
402
402
|
.outOfPocket), { recommendations,
|
|
403
403
|
recommendedAccount, isCategoryUpdateSelected: false, isCategoryFirstTimeAutofilled: true });
|
|
404
|
-
|
|
405
|
-
.outOfPocket.lineDetail
|
|
404
|
+
if (recommendedAccount != null) {
|
|
405
|
+
draft.newRemiState.remiDetailLocalData.updatesByLineId[lineId].outOfPocket.lineDetail = Object.assign(Object.assign({}, draft.newRemiState.remiDetailLocalData.updatesByLineId[lineId]
|
|
406
|
+
.outOfPocket.lineDetail), { account: recommendedAccount });
|
|
407
|
+
}
|
|
406
408
|
//add account to addRemiAutoFieldsByLineId, since account was autofilled
|
|
407
409
|
if (!((_f = draft.newRemiState.addRemiAutoFieldsByLineId[lineId]) === null || _f === void 0 ? void 0 : _f.includes('account')) &&
|
|
408
410
|
(recommendedAccount === null || recommendedAccount === void 0 ? void 0 : recommendedAccount.accountId) != null) {
|
|
@@ -8,7 +8,7 @@ import { updateCreatedTagToLocalStore } from '../../taskManager/taskDetailView/t
|
|
|
8
8
|
export declare type ActionType = ReturnType<typeof createTag> | ReturnType<typeof updateTagCreateStatus> | ReturnType<typeof openSnackbar> | ReturnType<typeof updateCreatedTagToLocalStore> | ReturnType<typeof updateTags>;
|
|
9
9
|
export declare const createTagEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<{
|
|
10
10
|
payload: {
|
|
11
|
-
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "zeni_account_accept_term" | "update_vendor" | "data_refresh_update" | "delete_bank_account" | "create_bank_account" | "create_bank_account_ach" | "create_bank_account_wire" | "create_bank_account_international" | "transfer_money" | "update_zeni_account_nickname" | "create_checking_account" | "deposit_check" | "create_vendor" | "onboarding_customer_view" | "onboarding_customer_view_complete" | "onboarding_customer_identity_verification_save" | "onboarding_customer_identity_verification_submit" | "onboarding_customer_business_verification_save" | "onboarding_customer_business_verification_submit" | "retry_bank_account_connection" | "dashboard_invite_sent" | "onboarding_info_saved" | "approve_original_merchant" | "approve_global_merchant" | "reject_global_merchant" | "create_global_merchant" | "fetch_global_merchant_no_recommendation" | "save_vendor_renamed" | "save_vendor_sent_for_review" | "save_vendor_marked_as_employee" | "save_vendor_marked_as_local_contractor" | "charge_card_accept_term" | "create_schedule" | "save_schedule" | "delete_schedule" | "save_task_detail" | "fetch_task_detail" | "delete_task" | "archive_task" | "create_tag" | "delete_tag" | "update_charge_card" | "issue_charge_card" | "notification_settings_saved" | "referral_invite_sent" | "notification_mark_as_read" | "mark_as_complete_schedule" | "settings_accounting_accounts_updated" | "create_card_setup" | "confirm_card_setup" | "add_card_payment_source" | "fetch_payment_sources" | "task_assigned_toast_notification" | "task_due_tomorrow_toast_notification" | "task_deleted_toast_notification" | "task_archived_toast_notification" | "task_overdue_toast_notification" | "task_overdue_toast_notification_creator" | "task_notification_count" | "task_activities_toast_notification" | "task_created_toast_notification" | "task_group_creation_success" | "task_group_deletion_success" | "task_group_update_success" | "primary_funding_account_updated";
|
|
11
|
+
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "zeni_account_accept_term" | "update_vendor" | "data_refresh_update" | "delete_bank_account" | "create_bank_account" | "create_bank_account_ach" | "create_bank_account_wire" | "create_bank_account_international" | "transfer_money" | "update_zeni_account_nickname" | "create_checking_account" | "deposit_check" | "create_vendor" | "onboarding_customer_view" | "onboarding_customer_view_complete" | "onboarding_customer_identity_verification_save" | "onboarding_customer_identity_verification_submit" | "onboarding_customer_business_verification_save" | "onboarding_customer_business_verification_submit" | "retry_bank_account_connection" | "dashboard_invite_sent" | "onboarding_info_saved" | "approve_original_merchant" | "approve_global_merchant" | "reject_global_merchant" | "create_global_merchant" | "fetch_global_merchant_no_recommendation" | "save_vendor_renamed" | "save_vendor_sent_for_review" | "save_vendor_marked_as_employee" | "save_vendor_marked_as_local_contractor" | "charge_card_accept_term" | "charge_card_receipt_upload" | "create_schedule" | "save_schedule" | "delete_schedule" | "save_task_detail" | "fetch_task_detail" | "delete_task" | "archive_task" | "create_tag" | "delete_tag" | "update_charge_card" | "issue_charge_card" | "notification_settings_saved" | "referral_invite_sent" | "notification_mark_as_read" | "mark_as_complete_schedule" | "settings_accounting_accounts_updated" | "create_card_setup" | "confirm_card_setup" | "add_card_payment_source" | "fetch_payment_sources" | "task_assigned_toast_notification" | "task_due_tomorrow_toast_notification" | "task_deleted_toast_notification" | "task_archived_toast_notification" | "task_overdue_toast_notification" | "task_overdue_toast_notification_creator" | "task_notification_count" | "task_activities_toast_notification" | "task_created_toast_notification" | "task_group_creation_success" | "task_group_deletion_success" | "task_group_update_success" | "primary_funding_account_updated";
|
|
12
12
|
messageText: "failed" | "success" | "notification";
|
|
13
13
|
type: import("../../..").SnackbarMessageType;
|
|
14
14
|
showStatusIcon?: boolean | undefined;
|
|
@@ -9,7 +9,7 @@ export declare const deleteTagEpic: (actions$: ActionsObservable<ActionType>, _s
|
|
|
9
9
|
type: string;
|
|
10
10
|
} | {
|
|
11
11
|
payload: {
|
|
12
|
-
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "zeni_account_accept_term" | "update_vendor" | "data_refresh_update" | "delete_bank_account" | "create_bank_account" | "create_bank_account_ach" | "create_bank_account_wire" | "create_bank_account_international" | "transfer_money" | "update_zeni_account_nickname" | "create_checking_account" | "deposit_check" | "create_vendor" | "onboarding_customer_view" | "onboarding_customer_view_complete" | "onboarding_customer_identity_verification_save" | "onboarding_customer_identity_verification_submit" | "onboarding_customer_business_verification_save" | "onboarding_customer_business_verification_submit" | "retry_bank_account_connection" | "dashboard_invite_sent" | "onboarding_info_saved" | "approve_original_merchant" | "approve_global_merchant" | "reject_global_merchant" | "create_global_merchant" | "fetch_global_merchant_no_recommendation" | "save_vendor_renamed" | "save_vendor_sent_for_review" | "save_vendor_marked_as_employee" | "save_vendor_marked_as_local_contractor" | "charge_card_accept_term" | "create_schedule" | "save_schedule" | "delete_schedule" | "save_task_detail" | "fetch_task_detail" | "delete_task" | "archive_task" | "create_tag" | "delete_tag" | "update_charge_card" | "issue_charge_card" | "notification_settings_saved" | "referral_invite_sent" | "notification_mark_as_read" | "mark_as_complete_schedule" | "settings_accounting_accounts_updated" | "create_card_setup" | "confirm_card_setup" | "add_card_payment_source" | "fetch_payment_sources" | "task_assigned_toast_notification" | "task_due_tomorrow_toast_notification" | "task_deleted_toast_notification" | "task_archived_toast_notification" | "task_overdue_toast_notification" | "task_overdue_toast_notification_creator" | "task_notification_count" | "task_activities_toast_notification" | "task_created_toast_notification" | "task_group_creation_success" | "task_group_deletion_success" | "task_group_update_success" | "primary_funding_account_updated";
|
|
12
|
+
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "zeni_account_accept_term" | "update_vendor" | "data_refresh_update" | "delete_bank_account" | "create_bank_account" | "create_bank_account_ach" | "create_bank_account_wire" | "create_bank_account_international" | "transfer_money" | "update_zeni_account_nickname" | "create_checking_account" | "deposit_check" | "create_vendor" | "onboarding_customer_view" | "onboarding_customer_view_complete" | "onboarding_customer_identity_verification_save" | "onboarding_customer_identity_verification_submit" | "onboarding_customer_business_verification_save" | "onboarding_customer_business_verification_submit" | "retry_bank_account_connection" | "dashboard_invite_sent" | "onboarding_info_saved" | "approve_original_merchant" | "approve_global_merchant" | "reject_global_merchant" | "create_global_merchant" | "fetch_global_merchant_no_recommendation" | "save_vendor_renamed" | "save_vendor_sent_for_review" | "save_vendor_marked_as_employee" | "save_vendor_marked_as_local_contractor" | "charge_card_accept_term" | "charge_card_receipt_upload" | "create_schedule" | "save_schedule" | "delete_schedule" | "save_task_detail" | "fetch_task_detail" | "delete_task" | "archive_task" | "create_tag" | "delete_tag" | "update_charge_card" | "issue_charge_card" | "notification_settings_saved" | "referral_invite_sent" | "notification_mark_as_read" | "mark_as_complete_schedule" | "settings_accounting_accounts_updated" | "create_card_setup" | "confirm_card_setup" | "add_card_payment_source" | "fetch_payment_sources" | "task_assigned_toast_notification" | "task_due_tomorrow_toast_notification" | "task_deleted_toast_notification" | "task_archived_toast_notification" | "task_overdue_toast_notification" | "task_overdue_toast_notification_creator" | "task_notification_count" | "task_activities_toast_notification" | "task_created_toast_notification" | "task_group_creation_success" | "task_group_deletion_success" | "task_group_update_success" | "primary_funding_account_updated";
|
|
13
13
|
messageText: "failed" | "success" | "notification";
|
|
14
14
|
type: import("../../..").SnackbarMessageType;
|
|
15
15
|
showStatusIcon?: boolean | undefined;
|
|
@@ -3,6 +3,29 @@ import { Observable } from 'rxjs';
|
|
|
3
3
|
import { RootState } from '../../../reducer';
|
|
4
4
|
import { ZeniAPI } from '../../../zeniAPI';
|
|
5
5
|
import { bulkUpdateTaskList, updateTasksListOnBulkUpdateTasksSuccess, updateTasksListOnBulkUpdateTasksFailure } from './taskListReducer';
|
|
6
|
+
import { ID } from '../../../commonStateTypes/common';
|
|
7
|
+
import { Task } from '../../../entity/task/taskState';
|
|
6
8
|
import { updateTasks } from '../../../entity/task/taskReducer';
|
|
7
9
|
export declare type ActionType = ReturnType<typeof bulkUpdateTaskList> | ReturnType<typeof updateTasks> | ReturnType<typeof updateTasksListOnBulkUpdateTasksFailure> | ReturnType<typeof updateTasksListOnBulkUpdateTasksSuccess>;
|
|
8
10
|
export declare const bulkUpdateTaskListEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|
|
11
|
+
/**
|
|
12
|
+
* Helpers
|
|
13
|
+
*/
|
|
14
|
+
interface UpdateTaskPayload {
|
|
15
|
+
task_id: string;
|
|
16
|
+
name: string;
|
|
17
|
+
assignees: string[];
|
|
18
|
+
description: string;
|
|
19
|
+
due_date: string | null;
|
|
20
|
+
priority: string;
|
|
21
|
+
status: string;
|
|
22
|
+
tags: string[];
|
|
23
|
+
type: string;
|
|
24
|
+
file_ids: ID[];
|
|
25
|
+
recurring_end_date: string | null;
|
|
26
|
+
recurring_frequency: string | null;
|
|
27
|
+
recurring_start_date: string | null;
|
|
28
|
+
task_group_ids: string[];
|
|
29
|
+
}
|
|
30
|
+
export declare const getTasksListPayload: (state: RootState, taskIds: ID[], updates: Partial<Task>) => UpdateTaskPayload[];
|
|
31
|
+
export {};
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.bulkUpdateTaskListEpic = void 0;
|
|
6
|
+
exports.getTasksListPayload = exports.bulkUpdateTaskListEpic = void 0;
|
|
7
7
|
const rxjs_1 = require("rxjs");
|
|
8
8
|
const operators_1 = require("rxjs/operators");
|
|
9
9
|
const get_1 = __importDefault(require("lodash/get"));
|
|
@@ -15,7 +15,7 @@ const bulkUpdateTaskListEpic = (actions$, state$, zeniAPI) => actions$.pipe((0,
|
|
|
15
15
|
const state = state$.value;
|
|
16
16
|
const { taskIds, updates, groupId } = action.payload;
|
|
17
17
|
const payload = {
|
|
18
|
-
tasks: getTasksListPayload(state, taskIds, updates),
|
|
18
|
+
tasks: (0, exports.getTasksListPayload)(state, taskIds, updates),
|
|
19
19
|
};
|
|
20
20
|
return zeniAPI
|
|
21
21
|
.putAndGetJSON(`${zeniAPI.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks`, payload)
|
|
@@ -50,6 +50,7 @@ const getTasksListPayload = (state, taskIds, updates) => {
|
|
|
50
50
|
const tasksPayload = tasksList.map((task) => toTaskPayload(state, task));
|
|
51
51
|
return tasksPayload;
|
|
52
52
|
};
|
|
53
|
+
exports.getTasksListPayload = getTasksListPayload;
|
|
53
54
|
const toTaskPayload = (state, task) => {
|
|
54
55
|
var _a;
|
|
55
56
|
const { tagState } = state;
|
|
@@ -47,6 +47,11 @@ export declare const fetchTaskListPage: import("@reduxjs/toolkit").ActionCreator
|
|
|
47
47
|
}, string>, updateTaskListOnTaskGroupNameUpdate: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
48
48
|
taskGroupName: ID;
|
|
49
49
|
taskGroupId: ID;
|
|
50
|
+
}, string>, updateTaskFromListView: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
51
|
+
task: Task;
|
|
52
|
+
updates: Partial<Task>;
|
|
53
|
+
}, string>, updateTasksListOnUpdateTaskSuccess: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, updateTasksListOnUpdateTaskFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
54
|
+
error: ZeniAPIStatus;
|
|
50
55
|
}, string>, clearTaskList: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>;
|
|
51
56
|
declare const _default: import("@reduxjs/toolkit").Reducer<TaskListState, import("@reduxjs/toolkit").AnyAction>;
|
|
52
57
|
export default _default;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.clearTaskList = exports.updateTaskListOnTaskGroupNameUpdate = exports.updateTaskListOnNewTaskCreationSuccess = exports.dragNDropTasks = exports.updateTaskListOnTaskGroupDeletion = exports.updateTaskListLocalData = exports.initiateTaskListLocalData = exports.updateTasksListOnBulkUpdateTasksFailure = exports.updateTasksListOnBulkUpdateTasksSuccess = exports.bulkUpdateTaskList = exports.updateTaskListOnNewGroupCreationSuccess = exports.updateTaskFilters = exports.updateTaskListUIState = exports.updateTaskListSearchText = exports.updateTaskListFetchStatus = exports.updateTaskList = exports.fetchTaskList = exports.fetchTaskListPage = exports.initialState = void 0;
|
|
4
|
+
exports.clearTaskList = exports.updateTasksListOnUpdateTaskFailure = exports.updateTasksListOnUpdateTaskSuccess = exports.updateTaskFromListView = exports.updateTaskListOnTaskGroupNameUpdate = exports.updateTaskListOnNewTaskCreationSuccess = exports.dragNDropTasks = exports.updateTaskListOnTaskGroupDeletion = exports.updateTaskListLocalData = exports.initiateTaskListLocalData = exports.updateTasksListOnBulkUpdateTasksFailure = exports.updateTasksListOnBulkUpdateTasksSuccess = exports.bulkUpdateTaskList = exports.updateTaskListOnNewGroupCreationSuccess = exports.updateTaskFilters = exports.updateTaskListUIState = exports.updateTaskListSearchText = exports.updateTaskListFetchStatus = exports.updateTaskList = exports.fetchTaskList = exports.fetchTaskListPage = exports.initialState = void 0;
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
6
|
const taskList_1 = require("./taskList");
|
|
7
7
|
const taskState_1 = require("../../../entity/task/taskState");
|
|
@@ -289,7 +289,9 @@ const taskList = (0, toolkit_1.createSlice)({
|
|
|
289
289
|
const priorityKey = (0, taskState_1.toPriorityCodeType)(currentTaskState.priority.code);
|
|
290
290
|
const statusKey = (0, taskState_1.toTaskStatusCodeType)(currentTaskState.status.code);
|
|
291
291
|
const assigneeKey = getAssigneesGroupKey(currentTaskState.assignees);
|
|
292
|
-
const
|
|
292
|
+
const tagIds = [...currentTaskState.tagIds];
|
|
293
|
+
tagIds.sort();
|
|
294
|
+
const tagsKey = tagIds.join();
|
|
293
295
|
const dueDateKey = currentTaskState.dueDate != null
|
|
294
296
|
? getDueDateGroupKey(currentTaskState.dueDate.toString())
|
|
295
297
|
: 'upcoming';
|
|
@@ -349,12 +351,71 @@ const taskList = (0, toolkit_1.createSlice)({
|
|
|
349
351
|
const { taskGroupName, taskGroupId } = action.payload;
|
|
350
352
|
draft.localData.existingTaskGroupNamesByGroupId = Object.assign(Object.assign({}, draft.localData.existingTaskGroupNamesByGroupId), { [taskGroupId]: taskGroupName });
|
|
351
353
|
},
|
|
354
|
+
updateTaskFromListView(draft, action) {
|
|
355
|
+
var _a;
|
|
356
|
+
const { updates, task } = action.payload;
|
|
357
|
+
const taskId = task.id;
|
|
358
|
+
draft.updateTasksFetchState.fetchState = 'In-Progress';
|
|
359
|
+
draft.updateTasksFetchState.error = undefined;
|
|
360
|
+
if (updates.priority != null) {
|
|
361
|
+
const prevPriorityCode = (0, taskState_1.toPriorityCodeType)(task.priority.code);
|
|
362
|
+
draft.taskIdsByPriority[prevPriorityCode] = draft.taskIdsByPriority[prevPriorityCode].filter((id) => id != taskId);
|
|
363
|
+
const newPriorityCode = (0, taskState_1.toPriorityCodeType)(updates.priority.code);
|
|
364
|
+
draft.taskIdsByPriority[newPriorityCode].push(taskId);
|
|
365
|
+
}
|
|
366
|
+
if (updates.status != null) {
|
|
367
|
+
const prevStatusCode = (0, taskState_1.toTaskStatusCodeType)(task.status.code);
|
|
368
|
+
draft.taskIdsByStatus[prevStatusCode] = draft.taskIdsByStatus[prevStatusCode].filter((id) => id != taskId);
|
|
369
|
+
const newStatusCode = (0, taskState_1.toTaskStatusCodeType)(updates.status.code);
|
|
370
|
+
draft.taskIdsByStatus[newStatusCode].push(taskId);
|
|
371
|
+
}
|
|
372
|
+
if (updates.assignees != null) {
|
|
373
|
+
const prevGroupId = getAssigneesGroupKey(task.assignees);
|
|
374
|
+
draft.taskIdsByAssignees[prevGroupId] = draft.taskIdsByAssignees[prevGroupId].filter((id) => id != taskId);
|
|
375
|
+
const newGroupId = updates.assignees.join(',');
|
|
376
|
+
if (draft.taskIdsByAssignees[newGroupId] != null) {
|
|
377
|
+
draft.taskIdsByAssignees[newGroupId].push(taskId);
|
|
378
|
+
}
|
|
379
|
+
else {
|
|
380
|
+
draft.taskIdsByAssignees = Object.assign(Object.assign({}, draft.taskIdsByAssignees), { [newGroupId]: [taskId] });
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
if (updates.dueDate != null) {
|
|
384
|
+
const prevDueDateKey = task.dueDate != null
|
|
385
|
+
? getDueDateGroupKey((_a = task.dueDate) === null || _a === void 0 ? void 0 : _a.toString())
|
|
386
|
+
: 'upcoming';
|
|
387
|
+
draft.taskIdsByDueDate[prevDueDateKey] = draft.taskIdsByDueDate[prevDueDateKey].filter((id) => id != taskId);
|
|
388
|
+
const newDueDateKey = getDueDateGroupKey(updates.dueDate.toString());
|
|
389
|
+
draft.taskIdsByDueDate[newDueDateKey].push(taskId);
|
|
390
|
+
}
|
|
391
|
+
if (updates.tagIds != null) {
|
|
392
|
+
const tagIds = [...task.tagIds];
|
|
393
|
+
tagIds.sort();
|
|
394
|
+
const prevGroupId = tagIds.join(',');
|
|
395
|
+
draft.taskIdsByTags[prevGroupId] = draft.taskIdsByTags[prevGroupId].filter((id) => id != taskId);
|
|
396
|
+
const newGroupId = updates.tagIds.join(',');
|
|
397
|
+
if (draft.taskIdsByTags[newGroupId] != null) {
|
|
398
|
+
draft.taskIdsByTags[newGroupId].push(taskId);
|
|
399
|
+
}
|
|
400
|
+
else {
|
|
401
|
+
draft.taskIdsByTags = Object.assign(Object.assign({}, draft.taskIdsByTags), { [newGroupId]: [taskId] });
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
},
|
|
405
|
+
updateTasksListOnUpdateTaskSuccess(draft) {
|
|
406
|
+
draft.updateTasksFetchState.fetchState = 'Completed';
|
|
407
|
+
draft.updateTasksFetchState.error = undefined;
|
|
408
|
+
},
|
|
409
|
+
updateTasksListOnUpdateTaskFailure(draft, action) {
|
|
410
|
+
draft.updateTasksFetchState.fetchState = 'Error';
|
|
411
|
+
draft.updateTasksFetchState.error = action.payload.error;
|
|
412
|
+
},
|
|
352
413
|
clearTaskList(draft) {
|
|
353
414
|
Object.assign(draft, exports.initialState);
|
|
354
415
|
},
|
|
355
416
|
},
|
|
356
417
|
});
|
|
357
|
-
_a = taskList.actions, exports.fetchTaskListPage = _a.fetchTaskListPage, exports.fetchTaskList = _a.fetchTaskList, exports.updateTaskList = _a.updateTaskList, exports.updateTaskListFetchStatus = _a.updateTaskListFetchStatus, exports.updateTaskListSearchText = _a.updateTaskListSearchText, exports.updateTaskListUIState = _a.updateTaskListUIState, exports.updateTaskFilters = _a.updateTaskFilters, exports.updateTaskListOnNewGroupCreationSuccess = _a.updateTaskListOnNewGroupCreationSuccess, exports.bulkUpdateTaskList = _a.bulkUpdateTaskList, exports.updateTasksListOnBulkUpdateTasksSuccess = _a.updateTasksListOnBulkUpdateTasksSuccess, exports.updateTasksListOnBulkUpdateTasksFailure = _a.updateTasksListOnBulkUpdateTasksFailure, exports.initiateTaskListLocalData = _a.initiateTaskListLocalData, exports.updateTaskListLocalData = _a.updateTaskListLocalData, exports.updateTaskListOnTaskGroupDeletion = _a.updateTaskListOnTaskGroupDeletion, exports.dragNDropTasks = _a.dragNDropTasks, exports.updateTaskListOnNewTaskCreationSuccess = _a.updateTaskListOnNewTaskCreationSuccess, exports.updateTaskListOnTaskGroupNameUpdate = _a.updateTaskListOnTaskGroupNameUpdate, exports.clearTaskList = _a.clearTaskList;
|
|
418
|
+
_a = taskList.actions, exports.fetchTaskListPage = _a.fetchTaskListPage, exports.fetchTaskList = _a.fetchTaskList, exports.updateTaskList = _a.updateTaskList, exports.updateTaskListFetchStatus = _a.updateTaskListFetchStatus, exports.updateTaskListSearchText = _a.updateTaskListSearchText, exports.updateTaskListUIState = _a.updateTaskListUIState, exports.updateTaskFilters = _a.updateTaskFilters, exports.updateTaskListOnNewGroupCreationSuccess = _a.updateTaskListOnNewGroupCreationSuccess, exports.bulkUpdateTaskList = _a.bulkUpdateTaskList, exports.updateTasksListOnBulkUpdateTasksSuccess = _a.updateTasksListOnBulkUpdateTasksSuccess, exports.updateTasksListOnBulkUpdateTasksFailure = _a.updateTasksListOnBulkUpdateTasksFailure, exports.initiateTaskListLocalData = _a.initiateTaskListLocalData, exports.updateTaskListLocalData = _a.updateTaskListLocalData, exports.updateTaskListOnTaskGroupDeletion = _a.updateTaskListOnTaskGroupDeletion, exports.dragNDropTasks = _a.dragNDropTasks, exports.updateTaskListOnNewTaskCreationSuccess = _a.updateTaskListOnNewTaskCreationSuccess, exports.updateTaskListOnTaskGroupNameUpdate = _a.updateTaskListOnTaskGroupNameUpdate, exports.updateTaskFromListView = _a.updateTaskFromListView, exports.updateTasksListOnUpdateTaskSuccess = _a.updateTasksListOnUpdateTaskSuccess, exports.updateTasksListOnUpdateTaskFailure = _a.updateTasksListOnUpdateTaskFailure, exports.clearTaskList = _a.clearTaskList;
|
|
358
419
|
exports.default = taskList.reducer;
|
|
359
420
|
/**
|
|
360
421
|
* helpers
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { RootState } from '../../../reducer';
|
|
4
|
+
import { ZeniAPI } from '../../../zeniAPI';
|
|
5
|
+
import { updateTaskFromListView, updateTasksListOnUpdateTaskSuccess, updateTasksListOnUpdateTaskFailure } from './taskListReducer';
|
|
6
|
+
import { updateTasks } from '../../../entity/task/taskReducer';
|
|
7
|
+
export declare type ActionType = ReturnType<typeof updateTaskFromListView> | ReturnType<typeof updateTasks> | ReturnType<typeof updateTasksListOnUpdateTaskFailure> | ReturnType<typeof updateTasksListOnUpdateTaskSuccess>;
|
|
8
|
+
export declare const updateTaskFromListViewEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateTaskFromListViewEpic = void 0;
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const operators_1 = require("rxjs/operators");
|
|
6
|
+
const responsePayload_1 = require("../../../responsePayload");
|
|
7
|
+
const taskListReducer_1 = require("./taskListReducer");
|
|
8
|
+
const taskReducer_1 = require("../../../entity/task/taskReducer");
|
|
9
|
+
const bulkUpdateTaskListEpic_1 = require("./bulkUpdateTaskListEpic");
|
|
10
|
+
const updateTaskFromListViewEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(taskListReducer_1.updateTaskFromListView.match), (0, operators_1.switchMap)((action) => {
|
|
11
|
+
const state = state$.value;
|
|
12
|
+
const { task, updates } = action.payload;
|
|
13
|
+
const taskId = task.id;
|
|
14
|
+
const payload = {
|
|
15
|
+
tasks: (0, bulkUpdateTaskListEpic_1.getTasksListPayload)(state, [taskId], updates),
|
|
16
|
+
};
|
|
17
|
+
return zeniAPI
|
|
18
|
+
.putAndGetJSON(`${zeniAPI.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks`, payload)
|
|
19
|
+
.pipe((0, operators_1.mergeMap)((response) => {
|
|
20
|
+
if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
|
|
21
|
+
return (0, rxjs_1.from)([
|
|
22
|
+
(0, taskReducer_1.updateTasks)(response.data.tasks),
|
|
23
|
+
(0, taskListReducer_1.updateTasksListOnUpdateTaskSuccess)(),
|
|
24
|
+
]);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
return (0, rxjs_1.of)((0, taskListReducer_1.updateTasksListOnUpdateTaskFailure)({
|
|
28
|
+
error: response.status,
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
}), (0, operators_1.catchError)((error) => {
|
|
32
|
+
return (0, rxjs_1.of)((0, taskListReducer_1.updateTasksListOnUpdateTaskFailure)({
|
|
33
|
+
error: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'update task from list view REST API call errored out' +
|
|
34
|
+
JSON.stringify(error)),
|
|
35
|
+
}));
|
|
36
|
+
}));
|
|
37
|
+
}));
|
|
38
|
+
exports.updateTaskFromListViewEpic = updateTaskFromListViewEpic;
|
|
@@ -14,7 +14,8 @@ export interface VendorReviewRecommendationViewState {
|
|
|
14
14
|
export interface VendorReviewNonExistingRecommendationViewState {
|
|
15
15
|
globalMerchants: RecommendedNonExistingGlobalMerchant[];
|
|
16
16
|
}
|
|
17
|
-
export declare type VendorReviewRowCurrentSelection = 'retain' | '
|
|
17
|
+
export declare type VendorReviewRowCurrentSelection = 'retain' | 'recommendedFirst' | 'recommendedSecond' | 'customMerchant' | 'rename' | null;
|
|
18
|
+
export declare type GlobalVendorReviewRowCurrentSelection = 'requested' | 'recommendedFirst' | 'recommendedSecond' | 'originalVendor' | null;
|
|
18
19
|
/**
|
|
19
20
|
* Helpers
|
|
20
21
|
*/
|
|
@@ -49,12 +49,12 @@ const toAllRecommendationsFromPayload = (recommendationsPayload) => {
|
|
|
49
49
|
var _a;
|
|
50
50
|
const recommendations = [];
|
|
51
51
|
const nonExistingRecommendations = [];
|
|
52
|
-
(_a = recommendationsPayload[0]) === null || _a === void 0 ? void 0 : _a.global_merchants.forEach((
|
|
53
|
-
if (
|
|
54
|
-
recommendations.push((0, globalMerchantPayload_1.toGlobalMerchantBase)(
|
|
52
|
+
(_a = recommendationsPayload[0]) === null || _a === void 0 ? void 0 : _a.global_merchants.forEach((globalMerchant) => {
|
|
53
|
+
if (globalMerchant.global_merchant_id != null) {
|
|
54
|
+
recommendations.push((0, globalMerchantPayload_1.toGlobalMerchantBase)(globalMerchant));
|
|
55
55
|
}
|
|
56
56
|
else {
|
|
57
|
-
nonExistingRecommendations.push((0, exports.toNonExistingGlobalMerchantBase)(
|
|
57
|
+
nonExistingRecommendations.push((0, exports.toNonExistingGlobalMerchantBase)(globalMerchant));
|
|
58
58
|
}
|
|
59
59
|
});
|
|
60
60
|
const recommendationIds = recommendations.map((recommendation) => recommendation.globalMerchantId);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { ZeniAPI } from '../../../../zeniAPI';
|
|
3
|
+
import { RootState } from '../../../../reducer';
|
|
4
|
+
import { saveVendorDetailsView, updateVendorDetailsViewFailureOrSuccess } from '../vendorFirstReviewViewReducer';
|
|
5
|
+
import { updateVendors } from '../../../../entity/vendor/vendorReducer';
|
|
6
|
+
import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
|
|
7
|
+
export declare type ActionType = ReturnType<typeof saveVendorDetailsView> | ReturnType<typeof updateVendors> | ReturnType<typeof openSnackbar> | ReturnType<typeof updateVendorDetailsViewFailureOrSuccess>;
|
|
8
|
+
export declare const saveVendorDetailsViewEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<ActionType>;
|