@zeniai/client-epic-state 5.1.86-beta2UT → 5.1.87
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/aiCfo/aiCfoPayload.d.ts +7 -0
- package/lib/entity/aiCfo/aiCfoReducer.d.ts +3 -2
- package/lib/entity/aiCfo/aiCfoReducer.js +25 -2
- package/lib/entity/aiCfo/aiCfoState.d.ts +7 -0
- package/lib/entity/tenant/tenantPayload.d.ts +0 -1
- package/lib/entity/tenant/tenantReducer.js +0 -1
- package/lib/entity/tenant/tenantSelector.d.ts +0 -1
- package/lib/entity/tenant/tenantSelector.js +0 -12
- package/lib/entity/tenant/tenantState.d.ts +0 -1
- package/lib/esm/entity/aiCfo/aiCfoReducer.js +23 -1
- package/lib/esm/entity/tenant/tenantReducer.js +0 -1
- package/lib/esm/entity/tenant/tenantSelector.js +0 -11
- package/lib/esm/index.js +3 -3
- package/lib/index.d.ts +4 -4
- package/lib/index.js +33 -33
- package/package.json +1 -1
- package/lib/__testHelpers__/apiFailure.json +0 -6
- package/lib/entity/vendor/__mocks__/vendorMock.d.ts +0 -7
- package/lib/entity/vendor/__mocks__/vendorMock.js +0 -311
- package/lib/entity/vendor/__mocks__/vendorStateMocks.d.ts +0 -8
- package/lib/entity/vendor/__mocks__/vendorStateMocks.js +0 -415
- package/lib/view/accountMappingView/__mocks__/accountMappingSelectorMock.d.ts +0 -11
- package/lib/view/accountMappingView/__mocks__/accountMappingSelectorMock.js +0 -4659
- package/lib/view/addressView/__mocks__/addressViewMocks.d.ts +0 -35
- package/lib/view/addressView/__mocks__/addressViewMocks.js +0 -239
- package/lib/view/addressView/__mocks__/json/createAddressResponse.json +0 -23
- package/lib/view/addressView/__mocks__/json/createCompanyAddressSuccess.json +0 -258
- package/lib/view/addressView/__mocks__/json/createCompanyUserAddressSuccess.json +0 -418
- package/lib/view/addressView/__mocks__/json/fetchAddressResponse.json +0 -24
- package/lib/view/addressView/__mocks__/json/updateAddressResponse.json +0 -24
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ID } from '../../commonStateTypes/common';
|
|
1
2
|
import { ZeniAPIResponse } from '../../responsePayload';
|
|
2
3
|
export interface TableVisualizationPayload {
|
|
3
4
|
columns: string[];
|
|
@@ -101,10 +102,16 @@ export interface AiCfoAnswerPayload {
|
|
|
101
102
|
artifact?: string | null;
|
|
102
103
|
artifact_host_url?: string | null;
|
|
103
104
|
artifact_title?: string | null;
|
|
105
|
+
exports?: AiCfoExportPayload[] | null;
|
|
104
106
|
follow_up_questions?: string[];
|
|
105
107
|
suggested_reply?: string | null;
|
|
106
108
|
table?: AiCfoVisualizationPayload | null;
|
|
107
109
|
}
|
|
110
|
+
export interface AiCfoExportPayload {
|
|
111
|
+
export_id: ID;
|
|
112
|
+
name: string;
|
|
113
|
+
size_bytes: number | null;
|
|
114
|
+
}
|
|
108
115
|
export interface ChatSessionPayload {
|
|
109
116
|
chat_session_id: string;
|
|
110
117
|
chat_session_summary: string | null;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { ID } from '../../commonStateTypes/common';
|
|
2
2
|
import { ZeniDate } from '../../zeniDayJS';
|
|
3
|
-
import { AiCfoAnswerPayload, AiCfoVisualizationPayload, ChatSessionPayload, MessagePayload } from './aiCfoPayload';
|
|
4
|
-
import { AiCfoState, AiCfoVisualization, FileAttachmentMetadata, SyntheticAiCfoAnswerKind } from './aiCfoState';
|
|
3
|
+
import { AiCfoAnswerPayload, AiCfoExportPayload, AiCfoVisualizationPayload, ChatSessionPayload, MessagePayload } from './aiCfoPayload';
|
|
4
|
+
import { AiCfoExport, AiCfoState, AiCfoVisualization, FileAttachmentMetadata, SyntheticAiCfoAnswerKind } from './aiCfoState';
|
|
5
5
|
import type { CardPolicyUploadSource, CardPolicyWizardPlan } from './aiCfoState';
|
|
6
6
|
export declare const initialAiCfoState: AiCfoState;
|
|
7
7
|
export declare const toAiCfoVisualization: (visualization: AiCfoVisualizationPayload) => AiCfoVisualization | undefined;
|
|
8
|
+
export declare const toAiCfoExports: (payload: AiCfoExportPayload[] | null | undefined) => AiCfoExport[] | undefined;
|
|
8
9
|
export declare const setNewSession: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
9
10
|
chatSessionId: ID;
|
|
10
11
|
createdAt: ZeniDate;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.clearSyntheticAiCfoAnswers = exports.removeSyntheticAiCfoAnswer = exports.updateSyntheticAiCfoAnswer = exports.appendSyntheticAiCfoAnswer = exports.updateAiCfoAnswerCardPolicyWizardPlan = exports.deleteQuestion = exports.clearAiCfo = exports.addQuestionPayload = exports.upsertOrAddQuestionAnswerPayload = exports.upsertAnswerPayload = exports.setChatHistory = exports.setSessions = exports.clearSession = exports.setNewSession = exports.toAiCfoVisualization = exports.initialAiCfoState = void 0;
|
|
4
|
+
exports.clearSyntheticAiCfoAnswers = exports.removeSyntheticAiCfoAnswer = exports.updateSyntheticAiCfoAnswer = exports.appendSyntheticAiCfoAnswer = exports.updateAiCfoAnswerCardPolicyWizardPlan = exports.deleteQuestion = exports.clearAiCfo = exports.addQuestionPayload = exports.upsertOrAddQuestionAnswerPayload = exports.upsertAnswerPayload = exports.setChatHistory = exports.setSessions = exports.clearSession = exports.setNewSession = exports.toAiCfoExports = exports.toAiCfoVisualization = exports.initialAiCfoState = void 0;
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
6
|
const rootActions_1 = require("../../rootActions");
|
|
7
7
|
const zeniDayJS_1 = require("../../zeniDayJS");
|
|
@@ -121,6 +121,7 @@ function chatHistoryToQA(history) {
|
|
|
121
121
|
artifact: parsedAgentMessage.artifact ?? undefined,
|
|
122
122
|
artifactTitle: parsedAgentMessage.artifact_title ?? undefined,
|
|
123
123
|
artifactHostUrl: parsedAgentMessage.artifact_host_url ?? undefined,
|
|
124
|
+
exports: (0, exports.toAiCfoExports)(parsedAgentMessage.exports),
|
|
124
125
|
},
|
|
125
126
|
createdAt: (0, zeniDayJS_1.date)(agentMessage.created_at),
|
|
126
127
|
};
|
|
@@ -311,6 +312,27 @@ const toCardPolicyInitialData = (payload) => {
|
|
|
311
312
|
wizardPlan: toCardPolicyWizardPlan(payload.wizard_plan),
|
|
312
313
|
};
|
|
313
314
|
};
|
|
315
|
+
// Drops entries missing id or name (broken download path); returns undefined, not [], so the field stays absent.
|
|
316
|
+
const toAiCfoExports = (payload) => {
|
|
317
|
+
if (!Array.isArray(payload)) {
|
|
318
|
+
return undefined;
|
|
319
|
+
}
|
|
320
|
+
const mapped = payload.flatMap((entry) => {
|
|
321
|
+
// Falsy, not `== null`: an empty string would reach the UI as a blank, failing button.
|
|
322
|
+
if (!entry?.export_id || !entry?.name) {
|
|
323
|
+
return [];
|
|
324
|
+
}
|
|
325
|
+
return [
|
|
326
|
+
{
|
|
327
|
+
exportId: entry.export_id,
|
|
328
|
+
name: entry.name,
|
|
329
|
+
sizeBytes: entry.size_bytes ?? undefined,
|
|
330
|
+
},
|
|
331
|
+
];
|
|
332
|
+
});
|
|
333
|
+
return mapped.length > 0 ? mapped : undefined;
|
|
334
|
+
};
|
|
335
|
+
exports.toAiCfoExports = toAiCfoExports;
|
|
314
336
|
const toAiCfoVisualizationData = (data) => {
|
|
315
337
|
if ('x' in data && 'y' in data) {
|
|
316
338
|
// Normalize y to always be an array
|
|
@@ -353,7 +375,7 @@ const toAiCfoVisualizationData = (data) => {
|
|
|
353
375
|
};
|
|
354
376
|
};
|
|
355
377
|
const toResponseBlockType = (answer, userId) => {
|
|
356
|
-
const { metadata, state, type, text, visualization, table, follow_up_questions, suggested_reply, assumptions, insights, summarized_title, artifact, artifact_title, artifact_host_url, } = answer;
|
|
378
|
+
const { metadata, state, type, text, visualization, table, follow_up_questions, suggested_reply, assumptions, insights, summarized_title, artifact, artifact_title, artifact_host_url, exports, } = answer;
|
|
357
379
|
const { chat_session_id, message_id, timestamp, chain_of_thought_action_steps: chainOfThoughtActionSteps = [], } = metadata;
|
|
358
380
|
return {
|
|
359
381
|
messageId: message_id,
|
|
@@ -375,6 +397,7 @@ const toResponseBlockType = (answer, userId) => {
|
|
|
375
397
|
artifact: artifact ?? undefined,
|
|
376
398
|
artifactTitle: artifact_title ?? undefined,
|
|
377
399
|
artifactHostUrl: artifact_host_url ?? undefined,
|
|
400
|
+
exports: (0, exports.toAiCfoExports)(exports),
|
|
378
401
|
},
|
|
379
402
|
createdAt: (0, zeniDayJS_1.date)(timestamp),
|
|
380
403
|
};
|
|
@@ -154,6 +154,12 @@ export interface ResponseBlockBase {
|
|
|
154
154
|
state: AiCfoAnswerStateType;
|
|
155
155
|
userId: ID;
|
|
156
156
|
}
|
|
157
|
+
/** A downloadable spreadsheet attached to one answer. See AiCfoExportPayload. */
|
|
158
|
+
export interface AiCfoExport {
|
|
159
|
+
exportId: ID;
|
|
160
|
+
name: string;
|
|
161
|
+
sizeBytes?: number;
|
|
162
|
+
}
|
|
157
163
|
export interface AnswerContentBlockBase {
|
|
158
164
|
assumptions: string;
|
|
159
165
|
chainOfThoughtActionSteps: string[];
|
|
@@ -163,6 +169,7 @@ export interface AnswerContentBlockBase {
|
|
|
163
169
|
artifact?: string;
|
|
164
170
|
artifactHostUrl?: string;
|
|
165
171
|
artifactTitle?: string;
|
|
172
|
+
exports?: AiCfoExport[];
|
|
166
173
|
suggestedReply?: string;
|
|
167
174
|
summarizedTitle?: string;
|
|
168
175
|
table?: AiCfoVisualization;
|
|
@@ -96,7 +96,6 @@ interface TenantPayload {
|
|
|
96
96
|
capitalization_onboarding_shown_for_fixed_asset?: boolean;
|
|
97
97
|
capitalization_onboarding_shown_for_prepaid?: boolean;
|
|
98
98
|
master_tos_info?: MasterTOSInfoPayload;
|
|
99
|
-
receipts_email?: string | null;
|
|
100
99
|
reimbursement_info?: UserReimbursementInfoDataPayload;
|
|
101
100
|
zeni_book_close_date?: string;
|
|
102
101
|
zeni_book_close_month_and_year?: string;
|
|
@@ -1025,7 +1025,6 @@ function mapTenantPayloadToTenant(payload, userTenantPayload) {
|
|
|
1025
1025
|
masterTOSInfo: payload.master_tos_info != null
|
|
1026
1026
|
? (0, userRolePayload_1.toMasterTOSInfo)(payload.master_tos_info)
|
|
1027
1027
|
: undefined,
|
|
1028
|
-
receiptsEmail: payload.receipts_email ?? undefined,
|
|
1029
1028
|
rewardsLastViewedTime: userTenantPayload?.rewards_feature_last_viewed_time != null
|
|
1030
1029
|
? (0, zeniDayJS_1.date)(userTenantPayload.rewards_feature_last_viewed_time)
|
|
1031
1030
|
: undefined,
|
|
@@ -92,5 +92,4 @@ export declare const getIsAccountingProjectsEnabled: (state: RootState) => boole
|
|
|
92
92
|
export declare const isTenantBookkeepingEnabled: (tenant: Tenant | undefined) => boolean;
|
|
93
93
|
export declare const isOtherProductsEnabledForTenant: (tenant: Tenant | undefined) => boolean;
|
|
94
94
|
export declare const isTenantTreasuryEnabled: (tenant: Tenant | undefined) => boolean;
|
|
95
|
-
export declare function getReceiptsEmail(tenantState: TenantState, tenantId: ID | undefined): string;
|
|
96
95
|
export {};
|
|
@@ -7,7 +7,6 @@ exports.isTenantTreasuryEnabled = exports.isOtherProductsEnabledForTenant = expo
|
|
|
7
7
|
exports.getTenant = getTenant;
|
|
8
8
|
exports.getTenantIdByCompanyId = getTenantIdByCompanyId;
|
|
9
9
|
exports.getOnboardingTenantByTenantId = getOnboardingTenantByTenantId;
|
|
10
|
-
exports.getReceiptsEmail = getReceiptsEmail;
|
|
11
10
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
12
11
|
const orderBy_1 = __importDefault(require("lodash/orderBy"));
|
|
13
12
|
const companySelector_1 = require("../company/companySelector");
|
|
@@ -331,14 +330,3 @@ const isTenantTreasuryEnabled = (tenant) => {
|
|
|
331
330
|
: false;
|
|
332
331
|
};
|
|
333
332
|
exports.isTenantTreasuryEnabled = isTenantTreasuryEnabled;
|
|
334
|
-
const DEFAULT_RECEIPTS_EMAIL = 'receipts@zeni.ai';
|
|
335
|
-
function getReceiptsEmail(tenantState, tenantId) {
|
|
336
|
-
if (tenantId == null) {
|
|
337
|
-
return DEFAULT_RECEIPTS_EMAIL;
|
|
338
|
-
}
|
|
339
|
-
const tenant = tenantState.tenantsById[tenantId];
|
|
340
|
-
if (tenant?.receiptsEmail != null && tenant.receiptsEmail !== '') {
|
|
341
|
-
return tenant.receiptsEmail;
|
|
342
|
-
}
|
|
343
|
-
return DEFAULT_RECEIPTS_EMAIL;
|
|
344
|
-
}
|
|
@@ -111,7 +111,6 @@ export interface Tenant {
|
|
|
111
111
|
bookCloseDate?: ZeniDate;
|
|
112
112
|
hubSpotId?: ID;
|
|
113
113
|
masterTOSInfo?: MasterTOSInfo;
|
|
114
|
-
receiptsEmail?: string;
|
|
115
114
|
rewardsLastViewedTime?: ZeniDate;
|
|
116
115
|
userReimbursementInfo?: UserReimbursementInfo;
|
|
117
116
|
zeniBookCloseDate?: ZeniDate;
|
|
@@ -117,6 +117,7 @@ function chatHistoryToQA(history) {
|
|
|
117
117
|
artifact: parsedAgentMessage.artifact ?? undefined,
|
|
118
118
|
artifactTitle: parsedAgentMessage.artifact_title ?? undefined,
|
|
119
119
|
artifactHostUrl: parsedAgentMessage.artifact_host_url ?? undefined,
|
|
120
|
+
exports: toAiCfoExports(parsedAgentMessage.exports),
|
|
120
121
|
},
|
|
121
122
|
createdAt: zeniDate(agentMessage.created_at),
|
|
122
123
|
};
|
|
@@ -306,6 +307,26 @@ const toCardPolicyInitialData = (payload) => {
|
|
|
306
307
|
wizardPlan: toCardPolicyWizardPlan(payload.wizard_plan),
|
|
307
308
|
};
|
|
308
309
|
};
|
|
310
|
+
// Drops entries missing id or name (broken download path); returns undefined, not [], so the field stays absent.
|
|
311
|
+
export const toAiCfoExports = (payload) => {
|
|
312
|
+
if (!Array.isArray(payload)) {
|
|
313
|
+
return undefined;
|
|
314
|
+
}
|
|
315
|
+
const mapped = payload.flatMap((entry) => {
|
|
316
|
+
// Falsy, not `== null`: an empty string would reach the UI as a blank, failing button.
|
|
317
|
+
if (!entry?.export_id || !entry?.name) {
|
|
318
|
+
return [];
|
|
319
|
+
}
|
|
320
|
+
return [
|
|
321
|
+
{
|
|
322
|
+
exportId: entry.export_id,
|
|
323
|
+
name: entry.name,
|
|
324
|
+
sizeBytes: entry.size_bytes ?? undefined,
|
|
325
|
+
},
|
|
326
|
+
];
|
|
327
|
+
});
|
|
328
|
+
return mapped.length > 0 ? mapped : undefined;
|
|
329
|
+
};
|
|
309
330
|
const toAiCfoVisualizationData = (data) => {
|
|
310
331
|
if ('x' in data && 'y' in data) {
|
|
311
332
|
// Normalize y to always be an array
|
|
@@ -348,7 +369,7 @@ const toAiCfoVisualizationData = (data) => {
|
|
|
348
369
|
};
|
|
349
370
|
};
|
|
350
371
|
const toResponseBlockType = (answer, userId) => {
|
|
351
|
-
const { metadata, state, type, text, visualization, table, follow_up_questions, suggested_reply, assumptions, insights, summarized_title, artifact, artifact_title, artifact_host_url, } = answer;
|
|
372
|
+
const { metadata, state, type, text, visualization, table, follow_up_questions, suggested_reply, assumptions, insights, summarized_title, artifact, artifact_title, artifact_host_url, exports, } = answer;
|
|
352
373
|
const { chat_session_id, message_id, timestamp, chain_of_thought_action_steps: chainOfThoughtActionSteps = [], } = metadata;
|
|
353
374
|
return {
|
|
354
375
|
messageId: message_id,
|
|
@@ -370,6 +391,7 @@ const toResponseBlockType = (answer, userId) => {
|
|
|
370
391
|
artifact: artifact ?? undefined,
|
|
371
392
|
artifactTitle: artifact_title ?? undefined,
|
|
372
393
|
artifactHostUrl: artifact_host_url ?? undefined,
|
|
394
|
+
exports: toAiCfoExports(exports),
|
|
373
395
|
},
|
|
374
396
|
createdAt: zeniDate(timestamp),
|
|
375
397
|
};
|
|
@@ -1013,7 +1013,6 @@ function mapTenantPayloadToTenant(payload, userTenantPayload) {
|
|
|
1013
1013
|
masterTOSInfo: payload.master_tos_info != null
|
|
1014
1014
|
? toMasterTOSInfo(payload.master_tos_info)
|
|
1015
1015
|
: undefined,
|
|
1016
|
-
receiptsEmail: payload.receipts_email ?? undefined,
|
|
1017
1016
|
rewardsLastViewedTime: userTenantPayload?.rewards_feature_last_viewed_time != null
|
|
1018
1017
|
? date(userTenantPayload.rewards_feature_last_viewed_time)
|
|
1019
1018
|
: undefined,
|
|
@@ -308,14 +308,3 @@ export const isTenantTreasuryEnabled = (tenant) => {
|
|
|
308
308
|
? tenant.productSettings.isTreasuryEnabled === true
|
|
309
309
|
: false;
|
|
310
310
|
};
|
|
311
|
-
const DEFAULT_RECEIPTS_EMAIL = 'receipts@zeni.ai';
|
|
312
|
-
export function getReceiptsEmail(tenantState, tenantId) {
|
|
313
|
-
if (tenantId == null) {
|
|
314
|
-
return DEFAULT_RECEIPTS_EMAIL;
|
|
315
|
-
}
|
|
316
|
-
const tenant = tenantState.tenantsById[tenantId];
|
|
317
|
-
if (tenant?.receiptsEmail != null && tenant.receiptsEmail !== '') {
|
|
318
|
-
return tenant.receiptsEmail;
|
|
319
|
-
}
|
|
320
|
-
return DEFAULT_RECEIPTS_EMAIL;
|
|
321
|
-
}
|
package/lib/esm/index.js
CHANGED
|
@@ -71,7 +71,7 @@ import { getSnackbar } from './entity/snackbar/snackbarSelector';
|
|
|
71
71
|
import { ALL_WEEK_DAYS, toDayOfWeek, toPriorityCodeType, toTaskStatusCodeType, } from './entity/task/taskState';
|
|
72
72
|
import { getTaskGroupById } from './entity/taskGroup/taskGroupSelector';
|
|
73
73
|
import { deleteConnection, doMagicLinkSignIn, doSignIn, doSignOut, fetchActiveTenant, fetchAllTenants, fetchExcludedResources as fetchExcludedResourcesForTenant, fetchExternalConnections as fetchExternalConnectionsForTenant, fetchSubscriptionSummaryForTenant, initEmailConnectOAuth, resendVerifyDeviceOTP, resetSignInState, saveAPIKeyConnection, saveConnectorCredentials, saveExternalConnection as saveExternalConnectionForTenant, saveOAuthConnection, sendEmailMagicLinkToUser, sendSessionHeartbeat, toExternalIntegrationType, toExternalSupportedTool, updateCurrentTenant, updateSignInState, verifyDeviceWithTwoFA, } from './entity/tenant/tenantReducer';
|
|
74
|
-
import { getCurrentTenant, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled,
|
|
74
|
+
import { getCurrentTenant, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getTenantBaseById, getTenantBaseViewForTenantId, getTenantBaseViewForTenantView, getTenantsBaseByCheckInDateSelector, getTenantsByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, isOtherProductsEnabledForTenant, isTenantBankingOnly, isTenantBookkeepingEnabled, isTenantCardsOnly, isTenantUsingZeniCOA, isZeniDomainTenant, toTenantCoreDetailsView, } from './entity/tenant/tenantSelector';
|
|
75
75
|
import { pushToastNotification } from './entity/toastNotification/toastNotificationReducer';
|
|
76
76
|
import { getLastNotificationTime, getNotifications, } from './entity/toastNotification/toastNotificationSelector';
|
|
77
77
|
import { mapFileEntityToAttachment, toContentType, toContentTypeStrict, } from './entity/transaction/stateTypes/attachment';
|
|
@@ -481,7 +481,7 @@ export { toTimeframeTick, mapTimePeriodtoTimeframeTick, toTimePeriod, toAbsolute
|
|
|
481
481
|
export { toVendorSpendTrendFilterTabsTypeStrict, } from './entity/vendorExpense/vendorExpenseSelector';
|
|
482
482
|
export { getNumberOfPeriods };
|
|
483
483
|
export { SCHEDULE_DAYS_OF_MONTH, toScheduleDaysOfMonth, toMonth, toMonthStrict, toQuarter, toQuarterStrict, };
|
|
484
|
-
export { getTenantBaseById, getCurrentTenant, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getTenantsByCheckInDateSelector, getTenantsBaseByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, toTenantCoreDetailsView, getTenantBaseViewForTenantView, getTenantBaseViewForTenantId, isZeniDomainTenant, isTenantUsingZeniCOA, fetchActiveTenant, fetchAllTenants, updateCurrentTenant, clearAll, doMagicLinkSignIn, verifyDeviceWithTwoFA, resendVerifyDeviceOTP, sendEmailMagicLinkToUser, doSignIn, updateSignInState, doSignOut, sendSessionHeartbeat, resetSignInState, fetchExcludedResourcesForTenant, fetchExternalConnectionsForTenant, saveExternalConnectionForTenant, deleteConnection, saveAPIKeyConnection, saveConnectorCredentials, saveOAuthConnection, initEmailConnectOAuth, toExternalIntegrationType, toExternalSupportedTool, fetchSubscriptionSummaryForTenant, isTenantBankingOnly, isTenantCardsOnly, isTenantBookkeepingEnabled, isOtherProductsEnabledForTenant,
|
|
484
|
+
export { getTenantBaseById, getCurrentTenant, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getTenantsByCheckInDateSelector, getTenantsBaseByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, toTenantCoreDetailsView, getTenantBaseViewForTenantView, getTenantBaseViewForTenantId, isZeniDomainTenant, isTenantUsingZeniCOA, fetchActiveTenant, fetchAllTenants, updateCurrentTenant, clearAll, doMagicLinkSignIn, verifyDeviceWithTwoFA, resendVerifyDeviceOTP, sendEmailMagicLinkToUser, doSignIn, updateSignInState, doSignOut, sendSessionHeartbeat, resetSignInState, fetchExcludedResourcesForTenant, fetchExternalConnectionsForTenant, saveExternalConnectionForTenant, deleteConnection, saveAPIKeyConnection, saveConnectorCredentials, saveOAuthConnection, initEmailConnectOAuth, toExternalIntegrationType, toExternalSupportedTool, fetchSubscriptionSummaryForTenant, isTenantBankingOnly, isTenantCardsOnly, isTenantBookkeepingEnabled, isOtherProductsEnabledForTenant, };
|
|
485
485
|
export { toAccountType, toAccountGroupType, getAccountGroupKey, getAllAccounts, getTransactionFilterAccountOptions, };
|
|
486
486
|
export { getAllClasses, getClassById, getClassFilterOptions, } from './entity/class/classSelector';
|
|
487
487
|
export { getForecast };
|
|
@@ -674,7 +674,7 @@ export { cancelAiAccountantOnboarding, clearAiAccountantView, fetchAiAccountantC
|
|
|
674
674
|
export { getAiAccountantCockpitView, } from './view/aiAccountantView/aiAccountantViewSelector';
|
|
675
675
|
export { fetchChatSessionsForUser, createSession, submitQuestion, updateAiCfoViewScrollPosition, updateCurrentInput, updateCotCollapsedState, clearInput, setSession, clearAiCfoView, clearCurrentSessionId, clearDeleteChatSessionStatus, clearLastContextMessage, createSessionAndSubmit, stopSubmit, stopSubmitQuestion, fetchChatHistory, acceptMasterTOS, deleteChatSession, submitFeedback, updateResponseState, fetchSuggestedQuestions, fetchSuggestedQuestionsSuccess, fetchSuggestedQuestionsFailure, fetchSkills, fetchSkillsSuccess, fetchSkillsFailure, applyAiCfoSidePanelHostPageTransition, clearAiCfoSidePanelHostPageContext, } from './view/aiCfoView/aiCfoViewReducer';
|
|
676
676
|
export { getAiCfoView, getSuggestedQuestionsForPageContext, getSkills, } from './view/aiCfoView/aiCfoViewSelector';
|
|
677
|
-
export { setNewSession, setSessions, updateAiCfoAnswerCardPolicyWizardPlan, upsertAnswerPayload, upsertOrAddQuestionAnswerPayload, addQuestionPayload, clearSession, clearAiCfo, toAiCfoVisualization, appendSyntheticAiCfoAnswer, updateSyntheticAiCfoAnswer, removeSyntheticAiCfoAnswer, clearSyntheticAiCfoAnswers, } from './entity/aiCfo/aiCfoReducer';
|
|
677
|
+
export { setNewSession, setSessions, updateAiCfoAnswerCardPolicyWizardPlan, upsertAnswerPayload, upsertOrAddQuestionAnswerPayload, addQuestionPayload, clearSession, clearAiCfo, toAiCfoExports, toAiCfoVisualization, appendSyntheticAiCfoAnswer, updateSyntheticAiCfoAnswer, removeSyntheticAiCfoAnswer, clearSyntheticAiCfoAnswers, } from './entity/aiCfo/aiCfoReducer';
|
|
678
678
|
export { getAllQuestionAnswersForChatSession, getQuestionAnswerByIdForChatSession, getAllQuestionsForChatSession, getAiCfoSelectorView, getSyntheticAiCfoAnswersForChatSession, getSyntheticAiCfoAnswerByQuestionAnswerId, } from './entity/aiCfo/aiCfoSelector';
|
|
679
679
|
export { ALL_AI_CFO_CHARTS_TYPES, ALL_AI_CFO_VISUALIZATION_TYPES, ALL_AI_CFO_ANSWER_STATE_TYPES, ALL_AI_CFO_ANSWER_RESPONSE_TYPES, ALL_INTERACTIVE_FORM_TYPES, toAiCfoVisualizationType, toAiCfoVisualizationTypeStrict, toAiCfoChartType, toAiCfoChartTypeStrict, toAiCfoAnswerStateType, toAiCfoAnswerStateTypeStrict, toAiCfoAnswerResponseType, toAiCfoAnswerResponseTypeStrict, toInteractiveFormType, toInteractiveFormTypeStrict, ALL_SYNTHETIC_AI_CFO_ANSWER_KINDS, toMessageSender, toMessageType, } from './entity/aiCfo/aiCfoState';
|
|
680
680
|
// ── Card Policy (shared between manual + AI-driven flows) ────────────
|
package/lib/index.d.ts
CHANGED
|
@@ -137,7 +137,7 @@ import { getTaskGroupById } from './entity/taskGroup/taskGroupSelector';
|
|
|
137
137
|
import { TaskGroupState } from './entity/taskGroup/taskGroupState';
|
|
138
138
|
import { TaskGroupTemplate } from './entity/taskGroupTemplate/taskGroupTemplateState';
|
|
139
139
|
import { DoSignInPayload, deleteConnection, doMagicLinkSignIn, doSignIn, doSignOut, fetchActiveTenant, fetchAllTenants, fetchExcludedResources as fetchExcludedResourcesForTenant, fetchExternalConnections as fetchExternalConnectionsForTenant, fetchSubscriptionSummaryForTenant, initEmailConnectOAuth, resendVerifyDeviceOTP, resetSignInState, saveAPIKeyConnection, saveConnectorCredentials, saveExternalConnection as saveExternalConnectionForTenant, saveOAuthConnection, sendEmailMagicLinkToUser, sendSessionHeartbeat, toExternalIntegrationType, toExternalSupportedTool, updateCurrentTenant, updateSignInState, verifyDeviceWithTwoFA } from './entity/tenant/tenantReducer';
|
|
140
|
-
import { CurrentTenant, TenantBaseView, TenantCoreDetailsView, TenantView, TenantsBaseOrdered, TenantsOrdered, getCurrentTenant, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled,
|
|
140
|
+
import { CurrentTenant, TenantBaseView, TenantCoreDetailsView, TenantView, TenantsBaseOrdered, TenantsOrdered, getCurrentTenant, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getTenantBaseById, getTenantBaseViewForTenantId, getTenantBaseViewForTenantView, getTenantsBaseByCheckInDateSelector, getTenantsByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, isOtherProductsEnabledForTenant, isTenantBankingOnly, isTenantBookkeepingEnabled, isTenantCardsOnly, isTenantUsingZeniCOA, isZeniDomainTenant, toTenantCoreDetailsView } from './entity/tenant/tenantSelector';
|
|
141
141
|
import { CapitalizableAccount, CapitalizableAccounts, CapitalizableClassificationType, CapitalizableMatchPattern, Connection, LoggedInUser, RoleResource, Tenant, TenantProductSettings } from './entity/tenant/tenantState';
|
|
142
142
|
import { ToastNotificationPayload } from './entity/toastNotification/toastNotificationPayload';
|
|
143
143
|
import { pushToastNotification } from './entity/toastNotification/toastNotificationReducer';
|
|
@@ -703,7 +703,7 @@ export { TimeframeTick, TimeframeTickWithMetaData, toTimeframeTick, mapTimePerio
|
|
|
703
703
|
export { VendorSpendTrendFilterTabType, toVendorSpendTrendFilterTabsTypeStrict, } from './entity/vendorExpense/vendorExpenseSelector';
|
|
704
704
|
export { getNumberOfPeriods };
|
|
705
705
|
export { SCHEDULE_DAYS_OF_MONTH, ScheduleDaysOfMonth, toScheduleDaysOfMonth, Day, Month, toMonth, toMonthStrict, Quarter, toQuarter, toQuarterStrict, AbsoluteDay, TimePeriod, };
|
|
706
|
-
export { CapitalizableAccount, CapitalizableAccounts, CapitalizableClassificationType, CapitalizableMatchPattern, Tenant, TenantView, LoggedInUser, TenantBaseView, CurrentTenant, TenantProductSettings, getTenantBaseById, getCurrentTenant, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getTenantsByCheckInDateSelector, getTenantsBaseByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, toTenantCoreDetailsView, getTenantBaseViewForTenantView, getTenantBaseViewForTenantId, isZeniDomainTenant, isTenantUsingZeniCOA, TenantsBaseOrdered, TenantsOrdered, TenantCoreDetailsView, fetchActiveTenant, fetchAllTenants, updateCurrentTenant, clearAll, doMagicLinkSignIn, verifyDeviceWithTwoFA, resendVerifyDeviceOTP, sendEmailMagicLinkToUser, doSignIn, updateSignInState, DoSignInPayload, doSignOut, sendSessionHeartbeat, resetSignInState, RoleResource, Connection, fetchExcludedResourcesForTenant, fetchExternalConnectionsForTenant, saveExternalConnectionForTenant, deleteConnection, saveAPIKeyConnection, saveConnectorCredentials, saveOAuthConnection, initEmailConnectOAuth, toExternalIntegrationType, toExternalSupportedTool, fetchSubscriptionSummaryForTenant, isTenantBankingOnly, isTenantCardsOnly, isTenantBookkeepingEnabled, isOtherProductsEnabledForTenant,
|
|
706
|
+
export { CapitalizableAccount, CapitalizableAccounts, CapitalizableClassificationType, CapitalizableMatchPattern, Tenant, TenantView, LoggedInUser, TenantBaseView, CurrentTenant, TenantProductSettings, getTenantBaseById, getCurrentTenant, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getTenantsByCheckInDateSelector, getTenantsBaseByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, toTenantCoreDetailsView, getTenantBaseViewForTenantView, getTenantBaseViewForTenantId, isZeniDomainTenant, isTenantUsingZeniCOA, TenantsBaseOrdered, TenantsOrdered, TenantCoreDetailsView, fetchActiveTenant, fetchAllTenants, updateCurrentTenant, clearAll, doMagicLinkSignIn, verifyDeviceWithTwoFA, resendVerifyDeviceOTP, sendEmailMagicLinkToUser, doSignIn, updateSignInState, DoSignInPayload, doSignOut, sendSessionHeartbeat, resetSignInState, RoleResource, Connection, fetchExcludedResourcesForTenant, fetchExternalConnectionsForTenant, saveExternalConnectionForTenant, deleteConnection, saveAPIKeyConnection, saveConnectorCredentials, saveOAuthConnection, initEmailConnectOAuth, toExternalIntegrationType, toExternalSupportedTool, fetchSubscriptionSummaryForTenant, isTenantBankingOnly, isTenantCardsOnly, isTenantBookkeepingEnabled, isOtherProductsEnabledForTenant, };
|
|
707
707
|
export { Account, AccountType, AccountBase, StatementCloseDay, toAccountType, AccountReport, NestedAccountReport, AccountWithBalanceReport, AccountGroup, AccountGroupReportV2, AccountGroupType, toAccountGroupType, AccountGroupReport, getAccountGroupKey, AccountGroupKey, RecommendedAccountBase, AccountFilterOption, getAllAccounts, getTransactionFilterAccountOptions, };
|
|
708
708
|
export { Class, ClassBase, RecommendedClassBase, } from './entity/class/classState';
|
|
709
709
|
export { ClassFilterOption, getAllClasses, getClassById, getClassFilterOptions, } from './entity/class/classSelector';
|
|
@@ -950,9 +950,9 @@ export type { FeedbackType, SubmitFeedbackPayload, } from './view/aiCfoView/aiCf
|
|
|
950
950
|
export type { AiCfoSuggestedQuestionsPageContext } from './common/aiCfo/aiCfoSuggestedQuestionsPageContext';
|
|
951
951
|
export { AiCfoViewSelector, getAiCfoView, getSuggestedQuestionsForPageContext, getSkills, } from './view/aiCfoView/aiCfoViewSelector';
|
|
952
952
|
export { MessagePayload, ChatSessionPayload, AiCfoAnswerPayload, } from './entity/aiCfo/aiCfoPayload';
|
|
953
|
-
export { setNewSession, setSessions, updateAiCfoAnswerCardPolicyWizardPlan, upsertAnswerPayload, upsertOrAddQuestionAnswerPayload, addQuestionPayload, clearSession, clearAiCfo, toAiCfoVisualization, appendSyntheticAiCfoAnswer, updateSyntheticAiCfoAnswer, removeSyntheticAiCfoAnswer, clearSyntheticAiCfoAnswers, } from './entity/aiCfo/aiCfoReducer';
|
|
953
|
+
export { setNewSession, setSessions, updateAiCfoAnswerCardPolicyWizardPlan, upsertAnswerPayload, upsertOrAddQuestionAnswerPayload, addQuestionPayload, clearSession, clearAiCfo, toAiCfoExports, toAiCfoVisualization, appendSyntheticAiCfoAnswer, updateSyntheticAiCfoAnswer, removeSyntheticAiCfoAnswer, clearSyntheticAiCfoAnswers, } from './entity/aiCfo/aiCfoReducer';
|
|
954
954
|
export { AiCfoSelectorView, getAllQuestionAnswersForChatSession, getQuestionAnswerByIdForChatSession, getAllQuestionsForChatSession, getAiCfoSelectorView, getSyntheticAiCfoAnswersForChatSession, getSyntheticAiCfoAnswerByQuestionAnswerId, ChatSessionWithOrderedQuestionAnswers, } from './entity/aiCfo/aiCfoSelector';
|
|
955
|
-
export { AiCfoQuestionWithAnswer, AiCfoAnswerParagraph, AiCfoAnswerStateType, AiCfoChartType, AiCfoAnswerResponseType, TableVisualization, ChartVisualization, CardNameOption, CardsCardKind, CardsCreationInitialData, CardPolicyDraftPolicy, CardPolicyDraftPolicyEntity, CardPolicyInitialData, CardPolicySpendLimits, CardPolicyStep5Review, CardPolicyUploadSource, CardPolicyWizardPlan, InteractiveFormType, InteractiveFormVisualization, AiCfoVisualization, AiCfoVisualizationType, AiCfoState, ChatSession, ALL_AI_CFO_CHARTS_TYPES, ALL_AI_CFO_VISUALIZATION_TYPES, ALL_AI_CFO_ANSWER_STATE_TYPES, ALL_AI_CFO_ANSWER_RESPONSE_TYPES, ALL_INTERACTIVE_FORM_TYPES, toAiCfoVisualizationType, toAiCfoVisualizationTypeStrict, toAiCfoChartType, toAiCfoChartTypeStrict, toAiCfoAnswerStateType, toAiCfoAnswerStateTypeStrict, toAiCfoAnswerResponseType, toAiCfoAnswerResponseTypeStrict, toInteractiveFormType, toInteractiveFormTypeStrict, ChatSessionWithMessages, ResponseBlockBase, AnswerContentBlockBase, FileAttachmentMetadata, QuestionContentBlockBase, ResponseBlockType, SyntheticAiCfoAnswer, SyntheticAiCfoAnswerKind, ALL_SYNTHETIC_AI_CFO_ANSWER_KINDS, toMessageSender, toMessageType, MessageSender, MessageType, } from './entity/aiCfo/aiCfoState';
|
|
955
|
+
export { AiCfoQuestionWithAnswer, AiCfoAnswerParagraph, AiCfoAnswerStateType, AiCfoChartType, AiCfoAnswerResponseType, TableVisualization, ChartVisualization, CardNameOption, CardsCardKind, CardsCreationInitialData, CardPolicyDraftPolicy, CardPolicyDraftPolicyEntity, CardPolicyInitialData, CardPolicySpendLimits, CardPolicyStep5Review, CardPolicyUploadSource, CardPolicyWizardPlan, InteractiveFormType, InteractiveFormVisualization, AiCfoExport, AiCfoVisualization, AiCfoVisualizationType, AiCfoState, ChatSession, ALL_AI_CFO_CHARTS_TYPES, ALL_AI_CFO_VISUALIZATION_TYPES, ALL_AI_CFO_ANSWER_STATE_TYPES, ALL_AI_CFO_ANSWER_RESPONSE_TYPES, ALL_INTERACTIVE_FORM_TYPES, toAiCfoVisualizationType, toAiCfoVisualizationTypeStrict, toAiCfoChartType, toAiCfoChartTypeStrict, toAiCfoAnswerStateType, toAiCfoAnswerStateTypeStrict, toAiCfoAnswerResponseType, toAiCfoAnswerResponseTypeStrict, toInteractiveFormType, toInteractiveFormTypeStrict, ChatSessionWithMessages, ResponseBlockBase, AnswerContentBlockBase, FileAttachmentMetadata, QuestionContentBlockBase, ResponseBlockType, SyntheticAiCfoAnswer, SyntheticAiCfoAnswerKind, ALL_SYNTHETIC_AI_CFO_ANSWER_KINDS, toMessageSender, toMessageType, MessageSender, MessageType, } from './entity/aiCfo/aiCfoState';
|
|
956
956
|
export { clearPolicyDocumentExtraction, extractPolicyDocument, fetchCardPolicyMccCategories, fetchCardPolicyRecommendationFromUpload, fetchCardPolicyVendorOptions, removeCardPolicyTemplate, updateCardPolicyMccCategories, updateCardPolicyMccCategoriesFailure, updateCardPolicyStats, updateCardPolicyTemplates, updateCardPolicyVendorOptions, updateCardPolicyVendorOptionsFailure, updateCreatedCardPolicyTemplate, updatePolicyDocumentExtractionFailure, updatePolicyDocumentExtractionSuccess, updatePolicyRecommendationFromUploadFailure, updatePolicyRecommendationFromUploadSuccess, clearCardPolicy, } from './entity/cardPolicy/cardPolicyReducer';
|
|
957
957
|
export { getAllCardPolicyTemplates, getCardPolicyMccCategories, getCardPolicyMccCategoriesError, getCardPolicyMccCategoriesFetchState, getCardPolicyStats, getCardPolicySuggestedAllowCategories, getCardPolicySuggestedAllowMerchants, getCardPolicySuggestedBlockCategories, getCardPolicySuggestedBlockMerchants, getCardPolicyTemplateById, getCardPolicyTemplatesByIds, getCardPolicyVendorSearchFetchState, getCardPolicyVendorSearchOptions, getCardPolicyVendorSearchString, getExtractedCardPolicyRules, getPolicyDocumentExtractionError, getPolicyDocumentExtractionFetchState, getPolicyRecommendationFromUploadAnswerId, getPolicyRecommendationFromUploadChatSessionId, getPolicyRecommendationFromUploadError, getPolicyRecommendationFromUploadFetchState, getUploadedPolicyDocumentFileName, } from './entity/cardPolicy/cardPolicySelector';
|
|
958
958
|
export { ALL_CARD_POLICY_TEMPLATE_MODES, ALL_CARD_POLICY_TEMPLATE_STATUSES, CardPolicyState, CardPolicyStats, CardPolicyTemplate, CardPolicyTemplateEntityList, CardPolicyTemplateMode, CardPolicyTemplateSpendLimits, CardPolicyTemplateStatus, CardPolicyVendorSearchEntry, CardPolicyVendorSearchState, ExtractedCardPolicyRules, MccCategory, PolicyDocumentExtractionState, PolicyRecommendationFromUploadState, toCardPolicyTemplateMode, toCardPolicyTemplateStatus, } from './entity/cardPolicy/cardPolicyState';
|