@zeniai/client-epic-state 5.0.65-betaRR2 → 5.0.65-betaRR3

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.
@@ -2,13 +2,23 @@ import { of } from 'rxjs';
2
2
  import { catchError, filter, mergeMap } from 'rxjs/operators';
3
3
  import { createZeniAPIStatus, isSuccessResponse } from '../../../responsePayload';
4
4
  import { fetchSuggestedQuestions, fetchSuggestedQuestionsFailure, fetchSuggestedQuestionsSuccess, } from '../aiCfoViewReducer';
5
- /** GET {aiCfoMicroServiceBaseUrl}/1.0/suggested-questions?page_context=... */
5
+ /**
6
+ * GET {aiCfoMicroServiceBaseUrl}/1.0/suggested-questions?page_context=...
7
+ *
8
+ * Appends `&no_card_created=true` when the action payload sets
9
+ * `noCardCreated: true` (AI Card Creation flow on the cards list — the tenant
10
+ * has not yet created any card). Any other value omits the flag entirely so
11
+ * the existing call sites continue to issue the unchanged request.
12
+ */
6
13
  export const fetchSuggestedQuestionsEpic = (actions$, _state$, zeniAPI) => actions$.pipe(filter(fetchSuggestedQuestions.match),
7
14
  // mergeMap (not switchMap): each page_context is keyed separately in Redux; switchMap
8
15
  // would cancel in-flight HTTP for context A when B is requested, leaving A stuck In-Progress.
9
16
  mergeMap((action) => {
10
- const { pageContext } = action.payload;
17
+ const { pageContext, noCardCreated } = action.payload;
11
18
  const query = new URLSearchParams({ page_context: pageContext });
19
+ if (noCardCreated === true) {
20
+ query.set('no_card_created', 'true');
21
+ }
12
22
  const url = `${zeniAPI.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/suggested-questions?${query.toString()}`;
13
23
  return zeniAPI.getJSON(url).pipe(mergeMap((response) => {
14
24
  if (isSuccessResponse(response) && response.data != null) {
@@ -92,6 +92,13 @@ export declare const submitQuestion: import("@reduxjs/toolkit").ActionCreatorWit
92
92
  questionAnswerId: ID;
93
93
  }, "aiCfoView/updateCotCollapsedState">, fetchSuggestedQuestions: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
94
94
  pageContext: AiCfoSuggestedQuestionsPageContext;
95
+ /**
96
+ * AI Card Creation flow: when true, the epic appends `&no_card_created=true`
97
+ * so the backend tailors prompts for a tenant that has not yet created a
98
+ * card. The bucket key is unchanged (`pageContext`); see
99
+ * `useFetchSuggestedQuestionsWhenReady` for the refetch-on-flag-flip rule.
100
+ */
101
+ noCardCreated?: boolean;
95
102
  }, "aiCfoView/fetchSuggestedQuestions">, fetchSuggestedQuestionsSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
96
103
  generatedAt: string;
97
104
  pageContext: AiCfoSuggestedQuestionsPageContext;
@@ -4,5 +4,12 @@ import { RootState } from '../../../reducer';
4
4
  import { ZeniAPI } from '../../../zeniAPI';
5
5
  import { fetchSuggestedQuestions, fetchSuggestedQuestionsFailure, fetchSuggestedQuestionsSuccess } from '../aiCfoViewReducer';
6
6
  export type ActionType = ReturnType<typeof fetchSuggestedQuestions> | ReturnType<typeof fetchSuggestedQuestionsSuccess> | ReturnType<typeof fetchSuggestedQuestionsFailure>;
7
- /** GET {aiCfoMicroServiceBaseUrl}/1.0/suggested-questions?page_context=... */
7
+ /**
8
+ * GET {aiCfoMicroServiceBaseUrl}/1.0/suggested-questions?page_context=...
9
+ *
10
+ * Appends `&no_card_created=true` when the action payload sets
11
+ * `noCardCreated: true` (AI Card Creation flow on the cards list — the tenant
12
+ * has not yet created any card). Any other value omits the flag entirely so
13
+ * the existing call sites continue to issue the unchanged request.
14
+ */
8
15
  export declare const fetchSuggestedQuestionsEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -5,13 +5,23 @@ const rxjs_1 = require("rxjs");
5
5
  const operators_1 = require("rxjs/operators");
6
6
  const responsePayload_1 = require("../../../responsePayload");
7
7
  const aiCfoViewReducer_1 = require("../aiCfoViewReducer");
8
- /** GET {aiCfoMicroServiceBaseUrl}/1.0/suggested-questions?page_context=... */
8
+ /**
9
+ * GET {aiCfoMicroServiceBaseUrl}/1.0/suggested-questions?page_context=...
10
+ *
11
+ * Appends `&no_card_created=true` when the action payload sets
12
+ * `noCardCreated: true` (AI Card Creation flow on the cards list — the tenant
13
+ * has not yet created any card). Any other value omits the flag entirely so
14
+ * the existing call sites continue to issue the unchanged request.
15
+ */
9
16
  const fetchSuggestedQuestionsEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(aiCfoViewReducer_1.fetchSuggestedQuestions.match),
10
17
  // mergeMap (not switchMap): each page_context is keyed separately in Redux; switchMap
11
18
  // would cancel in-flight HTTP for context A when B is requested, leaving A stuck In-Progress.
12
19
  (0, operators_1.mergeMap)((action) => {
13
- const { pageContext } = action.payload;
20
+ const { pageContext, noCardCreated } = action.payload;
14
21
  const query = new URLSearchParams({ page_context: pageContext });
22
+ if (noCardCreated === true) {
23
+ query.set('no_card_created', 'true');
24
+ }
15
25
  const url = `${zeniAPI.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/suggested-questions?${query.toString()}`;
16
26
  return zeniAPI.getJSON(url).pipe((0, operators_1.mergeMap)((response) => {
17
27
  if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeniai/client-epic-state",
3
- "version": "5.0.65-betaRR2",
3
+ "version": "5.0.65-betaRR3",
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",