@zeniai/client-epic-state 5.1.50-betaRD2 → 5.1.50-betaRD4
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/jeSchedules/jeSchedulesPayload.d.ts +1 -0
- package/lib/entity/jeSchedules/jeSchedulesPayload.js +1 -0
- package/lib/entity/jeSchedules/jeSchedulesSelector.d.ts +1 -0
- package/lib/entity/jeSchedules/jeSchedulesSelector.js +2 -1
- package/lib/entity/jeSchedules/jeSchedulesState.d.ts +1 -0
- package/lib/esm/entity/jeSchedules/jeSchedulesPayload.js +1 -0
- package/lib/esm/entity/jeSchedules/jeSchedulesSelector.js +2 -1
- package/lib/esm/view/expenseAutomationView/selectors/jeSchedulesViewSelector.js +5 -1
- package/lib/view/expenseAutomationView/selectorTypes/jeSchedulesSelectorTypes.d.ts +2 -0
- package/lib/view/expenseAutomationView/selectors/jeSchedulesViewSelector.js +5 -1
- package/package.json +1 -1
|
@@ -73,6 +73,7 @@ export interface JEScheduledTransactionPayload {
|
|
|
73
73
|
vendor: VendorPayload;
|
|
74
74
|
ai_summaries?: JEScheduleAISummariesPayload;
|
|
75
75
|
confidence_score?: number | null;
|
|
76
|
+
create_time?: string | null;
|
|
76
77
|
created_by?: UserPayload;
|
|
77
78
|
end_date?: string | null;
|
|
78
79
|
recommendations?: JEScheduleRecommendationsPayload;
|
|
@@ -261,6 +261,7 @@ function toJEScheduledTransaction(payload) {
|
|
|
261
261
|
updatedByUserID: payload.updated_by.user_id,
|
|
262
262
|
balanceAsOfToday: payload.balance ?? undefined,
|
|
263
263
|
updatedAt: payload.updated_at != null ? (0, zeniDayJS_1.date)(payload.updated_at) : undefined,
|
|
264
|
+
createTime: payload.create_time != null ? (0, zeniDayJS_1.date)(payload.create_time) : undefined,
|
|
264
265
|
jeCredit: {
|
|
265
266
|
accountId: payload.je_credit_account_id ?? undefined,
|
|
266
267
|
accountingClassId: payload.je_credit_accounting_class_id ?? undefined,
|
|
@@ -81,7 +81,7 @@ exports.getJEAccruedScheduleByJEScheduleKey = getJEAccruedScheduleByJEScheduleKe
|
|
|
81
81
|
const getJEScheduledTransactionByJEScheduleTransactionKey = (jeScheduleTransactionKey, state) => {
|
|
82
82
|
const { jeSchedulesState, vendorState, accountState, userState, classState, transactionState, } = state;
|
|
83
83
|
const jeScheduleTransactionState = (0, get_1.default)(jeSchedulesState.schedulesByTransactionKey, jeScheduleTransactionKey);
|
|
84
|
-
const { period, updatedByUserID: updatedBy, createdByUserID: createdBy, vendorId, jeCredit, jeDebit, currencyCode, currencySymbol, balanceAsOfToday, baseTransaction, startDate, endDate, status, updatedAt, jeScheduleId, scheduledJournalEntry, dayOfPostingDate: postingDate, lastDayOfMonth, otherAttributes, jeScheduleType, aiSummaries, confidenceScore, recommendations, } = jeScheduleTransactionState;
|
|
84
|
+
const { period, updatedByUserID: updatedBy, createdByUserID: createdBy, createTime, vendorId, jeCredit, jeDebit, currencyCode, currencySymbol, balanceAsOfToday, baseTransaction, startDate, endDate, status, updatedAt, jeScheduleId, scheduledJournalEntry, dayOfPostingDate: postingDate, lastDayOfMonth, otherAttributes, jeScheduleType, aiSummaries, confidenceScore, recommendations, } = jeScheduleTransactionState;
|
|
85
85
|
const vendorDetails = (0, vendorSelector_1.getVendorByVendorId)(vendorState, vendorId);
|
|
86
86
|
if (vendorDetails == null) {
|
|
87
87
|
throw new Error(`Vendor with ${vendorId} doesn't exist`);
|
|
@@ -146,6 +146,7 @@ const getJEScheduledTransactionByJEScheduleTransactionKey = (jeScheduleTransacti
|
|
|
146
146
|
aiSummaries,
|
|
147
147
|
confidenceScore,
|
|
148
148
|
createdByUser: createdByUserDetails,
|
|
149
|
+
createTime,
|
|
149
150
|
recommendations,
|
|
150
151
|
};
|
|
151
152
|
};
|
|
@@ -251,6 +251,7 @@ export function toJEScheduledTransaction(payload) {
|
|
|
251
251
|
updatedByUserID: payload.updated_by.user_id,
|
|
252
252
|
balanceAsOfToday: payload.balance ?? undefined,
|
|
253
253
|
updatedAt: payload.updated_at != null ? date(payload.updated_at) : undefined,
|
|
254
|
+
createTime: payload.create_time != null ? date(payload.create_time) : undefined,
|
|
254
255
|
jeCredit: {
|
|
255
256
|
accountId: payload.je_credit_account_id ?? undefined,
|
|
256
257
|
accountingClassId: payload.je_credit_accounting_class_id ?? undefined,
|
|
@@ -74,7 +74,7 @@ export const getJEAccruedScheduleByJEScheduleKey = (JEScheduleKey, state) => {
|
|
|
74
74
|
export const getJEScheduledTransactionByJEScheduleTransactionKey = (jeScheduleTransactionKey, state) => {
|
|
75
75
|
const { jeSchedulesState, vendorState, accountState, userState, classState, transactionState, } = state;
|
|
76
76
|
const jeScheduleTransactionState = recordGet(jeSchedulesState.schedulesByTransactionKey, jeScheduleTransactionKey);
|
|
77
|
-
const { period, updatedByUserID: updatedBy, createdByUserID: createdBy, vendorId, jeCredit, jeDebit, currencyCode, currencySymbol, balanceAsOfToday, baseTransaction, startDate, endDate, status, updatedAt, jeScheduleId, scheduledJournalEntry, dayOfPostingDate: postingDate, lastDayOfMonth, otherAttributes, jeScheduleType, aiSummaries, confidenceScore, recommendations, } = jeScheduleTransactionState;
|
|
77
|
+
const { period, updatedByUserID: updatedBy, createdByUserID: createdBy, createTime, vendorId, jeCredit, jeDebit, currencyCode, currencySymbol, balanceAsOfToday, baseTransaction, startDate, endDate, status, updatedAt, jeScheduleId, scheduledJournalEntry, dayOfPostingDate: postingDate, lastDayOfMonth, otherAttributes, jeScheduleType, aiSummaries, confidenceScore, recommendations, } = jeScheduleTransactionState;
|
|
78
78
|
const vendorDetails = getVendorByVendorId(vendorState, vendorId);
|
|
79
79
|
if (vendorDetails == null) {
|
|
80
80
|
throw new Error(`Vendor with ${vendorId} doesn't exist`);
|
|
@@ -139,6 +139,7 @@ export const getJEScheduledTransactionByJEScheduleTransactionKey = (jeScheduleTr
|
|
|
139
139
|
aiSummaries,
|
|
140
140
|
confidenceScore,
|
|
141
141
|
createdByUser: createdByUserDetails,
|
|
142
|
+
createTime,
|
|
142
143
|
recommendations,
|
|
143
144
|
};
|
|
144
145
|
};
|
|
@@ -54,7 +54,7 @@ function getJEScheduleSortAccessor(sortKey) {
|
|
|
54
54
|
case 'totalAmount':
|
|
55
55
|
return (s) => s.baseTransaction.amount.amount;
|
|
56
56
|
case 'transactionDate':
|
|
57
|
-
return (s) => s.
|
|
57
|
+
return (s) => s.createTime?.valueOf();
|
|
58
58
|
case 'memo':
|
|
59
59
|
return (s) => s.baseTransaction.memo?.toLowerCase();
|
|
60
60
|
default:
|
|
@@ -140,6 +140,8 @@ export function getExpenseAutomationJESchedulesView(state) {
|
|
|
140
140
|
// KPI summary — derived from unfiltered schedules so counts are always accurate
|
|
141
141
|
const allSchedules = jeScheduledTransaction;
|
|
142
142
|
const sumAmount = (schedules) => schedules.reduce((total, schedule) => total + (schedule.baseTransaction.amount.amount ?? 0), 0);
|
|
143
|
+
const pendingReviewTotal = sumAmount(pendingReviewSchedules);
|
|
144
|
+
const createdTotal = sumAmount(createdSchedules);
|
|
143
145
|
const aiAccountantSchedules = allSchedules.filter((schedule) => schedule.confidenceScore != null);
|
|
144
146
|
const pendingUnfiltered = allSchedules.filter((schedule) => schedule.status.code === 'draft');
|
|
145
147
|
const kpiSummary = {
|
|
@@ -198,9 +200,11 @@ export function getExpenseAutomationJESchedulesView(state) {
|
|
|
198
200
|
accountListNestedAccountHierarchy,
|
|
199
201
|
allClassList: allClasses,
|
|
200
202
|
createdSchedules,
|
|
203
|
+
createdTotal,
|
|
201
204
|
jeScheduleTypeCounts,
|
|
202
205
|
kpiSummary,
|
|
203
206
|
pendingReviewSchedules,
|
|
207
|
+
pendingReviewTotal,
|
|
204
208
|
resolveSchedules: resolveSchedules,
|
|
205
209
|
accountSettingsView,
|
|
206
210
|
postStatusById: postStatusById,
|
|
@@ -38,6 +38,7 @@ export interface ExpenseAutomationJESchedulesViewSelector extends SelectorView {
|
|
|
38
38
|
classListNestedAccountHierarchy: NestedClassHierarchyForReport[];
|
|
39
39
|
completionStatus: CompletionStatusType;
|
|
40
40
|
createdSchedules: JEScheduledTransaction[];
|
|
41
|
+
createdTotal: number;
|
|
41
42
|
ignoreStatusById: Record<JEScheduleTransactionKey, FetchStateAndError>;
|
|
42
43
|
jeScheduleLocalDataById: Record<ID, JEScheduleLocalData>;
|
|
43
44
|
jeScheduleTypeCounts: {
|
|
@@ -46,6 +47,7 @@ export interface ExpenseAutomationJESchedulesViewSelector extends SelectorView {
|
|
|
46
47
|
};
|
|
47
48
|
kpiSummary: JEKpiSummary;
|
|
48
49
|
pendingReviewSchedules: (JEScheduledTransaction | JEScheduledTransactionWithFailedEntries)[];
|
|
50
|
+
pendingReviewTotal: number;
|
|
49
51
|
postStatusById: Record<ID, FetchStateAndError>;
|
|
50
52
|
refreshStatus: FetchStateAndError;
|
|
51
53
|
resolveSchedules: JEScheduledTransactionWithFailedEntries[];
|
|
@@ -60,7 +60,7 @@ function getJEScheduleSortAccessor(sortKey) {
|
|
|
60
60
|
case 'totalAmount':
|
|
61
61
|
return (s) => s.baseTransaction.amount.amount;
|
|
62
62
|
case 'transactionDate':
|
|
63
|
-
return (s) => s.
|
|
63
|
+
return (s) => s.createTime?.valueOf();
|
|
64
64
|
case 'memo':
|
|
65
65
|
return (s) => s.baseTransaction.memo?.toLowerCase();
|
|
66
66
|
default:
|
|
@@ -146,6 +146,8 @@ function getExpenseAutomationJESchedulesView(state) {
|
|
|
146
146
|
// KPI summary — derived from unfiltered schedules so counts are always accurate
|
|
147
147
|
const allSchedules = jeScheduledTransaction;
|
|
148
148
|
const sumAmount = (schedules) => schedules.reduce((total, schedule) => total + (schedule.baseTransaction.amount.amount ?? 0), 0);
|
|
149
|
+
const pendingReviewTotal = sumAmount(pendingReviewSchedules);
|
|
150
|
+
const createdTotal = sumAmount(createdSchedules);
|
|
149
151
|
const aiAccountantSchedules = allSchedules.filter((schedule) => schedule.confidenceScore != null);
|
|
150
152
|
const pendingUnfiltered = allSchedules.filter((schedule) => schedule.status.code === 'draft');
|
|
151
153
|
const kpiSummary = {
|
|
@@ -204,9 +206,11 @@ function getExpenseAutomationJESchedulesView(state) {
|
|
|
204
206
|
accountListNestedAccountHierarchy,
|
|
205
207
|
allClassList: allClasses,
|
|
206
208
|
createdSchedules,
|
|
209
|
+
createdTotal,
|
|
207
210
|
jeScheduleTypeCounts,
|
|
208
211
|
kpiSummary,
|
|
209
212
|
pendingReviewSchedules,
|
|
213
|
+
pendingReviewTotal,
|
|
210
214
|
resolveSchedules: resolveSchedules,
|
|
211
215
|
accountSettingsView,
|
|
212
216
|
postStatusById: postStatusById,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zeniai/client-epic-state",
|
|
3
|
-
"version": "5.1.50-
|
|
3
|
+
"version": "5.1.50-betaRD4",
|
|
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",
|