@paymanai/payman-typescript-ask-sdk 2.0.0 → 2.0.1

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/dist/index.js CHANGED
@@ -147,13 +147,13 @@ function getEventMessage(event) {
147
147
  case "USER_ACTION_REQUIRED":
148
148
  return "Waiting for verification...";
149
149
  case "USER_ACTION_SUCCESS":
150
- return "Verification successful";
150
+ return "Verification approved";
151
151
  case "USER_ACTION_EXPIRED":
152
152
  return "Verification expired";
153
153
  case "USER_ACTION_INVALID":
154
- return "Invalid input, please try again";
154
+ return "Invalid code. Please try again.";
155
155
  case "USER_ACTION_REJECTED":
156
- return "Verification rejected";
156
+ return "Verification cancelled";
157
157
  case "USER_ACTION_RESENT":
158
158
  return "Verification code resent";
159
159
  case "USER_ACTION_FAILED":
@@ -168,6 +168,31 @@ function getEventMessage(event) {
168
168
  return eventType;
169
169
  }
170
170
  }
171
+ function isUserActionPrompt(text) {
172
+ return /\benter\b.+\b(code|otp)\b/i.test(text) || /\b(authorization|verification)\s+code\b/i.test(text) || /\bsent\s+to\s+your\b/i.test(text);
173
+ }
174
+ function getUserActionDisplayMessage(eventType, rawMessage) {
175
+ const raw = rawMessage?.trim();
176
+ const safeRaw = raw && !isUserActionPrompt(raw) ? raw : "";
177
+ switch (eventType) {
178
+ case "USER_ACTION_REQUIRED":
179
+ return raw || "Waiting for verification...";
180
+ case "USER_ACTION_SUCCESS":
181
+ return safeRaw || "Verification approved";
182
+ case "USER_ACTION_INVALID":
183
+ return safeRaw || "Invalid code. Please try again.";
184
+ case "USER_ACTION_REJECTED":
185
+ return safeRaw || "Verification cancelled";
186
+ case "USER_ACTION_EXPIRED":
187
+ return safeRaw || "Verification expired";
188
+ case "USER_ACTION_RESENT":
189
+ return safeRaw || "Verification code resent";
190
+ case "USER_ACTION_FAILED":
191
+ return safeRaw || "Verification failed";
192
+ default:
193
+ return safeRaw || raw || eventType;
194
+ }
195
+ }
171
196
  function workingPhaseDetailForDisplay(raw) {
172
197
  const t = raw.trim();
173
198
  if (!t) return "";
@@ -256,19 +281,27 @@ function buildFormattedThinking(steps, allThinkingText) {
256
281
  break;
257
282
  case "USER_ACTION_REQUIRED":
258
283
  parts.push("**Verification Required**");
259
- if (step.message) parts.push(step.message);
284
+ if (step.message) {
285
+ parts.push(getUserActionDisplayMessage(step.eventType, step.message));
286
+ }
260
287
  break;
261
288
  case "USER_ACTION_SUCCESS":
262
- parts.push(`\u2713 ${step.message || "Verification successful"}`);
289
+ parts.push(`\u2713 ${getUserActionDisplayMessage(step.eventType, step.message)}`);
263
290
  break;
264
291
  case "USER_ACTION_REJECTED":
265
- parts.push(`\u2717 ${step.message || "Verification rejected"}`);
292
+ parts.push(getUserActionDisplayMessage(step.eventType, step.message));
266
293
  break;
267
294
  case "USER_ACTION_EXPIRED":
268
- parts.push(`\u2717 ${step.message || "Verification expired"}`);
295
+ parts.push(`\u2717 ${getUserActionDisplayMessage(step.eventType, step.message)}`);
296
+ break;
297
+ case "USER_ACTION_INVALID":
298
+ parts.push(`\u2717 ${getUserActionDisplayMessage(step.eventType, step.message)}`);
299
+ break;
300
+ case "USER_ACTION_RESENT":
301
+ parts.push(getUserActionDisplayMessage(step.eventType, step.message));
269
302
  break;
270
303
  case "USER_ACTION_FAILED":
271
- parts.push(`\u2717 ${step.message || "Verification failed"}`);
304
+ parts.push(`\u2717 ${getUserActionDisplayMessage(step.eventType, step.message)}`);
272
305
  break;
273
306
  }
274
307
  }
@@ -711,14 +744,18 @@ function processStreamEventV2(event, state) {
711
744
  }
712
745
  state.userActionPending = true;
713
746
  const req = event.userActionRequest;
747
+ const displayMessage = getUserActionDisplayMessage(
748
+ eventType,
749
+ req?.message || message
750
+ );
714
751
  if (req) {
715
- addThinkingLine(state, "**Verification Required**", req.message || "Waiting for authorization...");
752
+ addThinkingLine(state, "**Verification Required**", displayMessage);
716
753
  }
717
754
  const stepId = `step-${state.stepCounter++}`;
718
755
  state.steps.push({
719
756
  id: stepId,
720
757
  eventType,
721
- message,
758
+ message: displayMessage,
722
759
  status: "in_progress",
723
760
  timestamp: Date.now(),
724
761
  elapsedMs: event.elapsedMs
@@ -728,7 +765,8 @@ function processStreamEventV2(event, state) {
728
765
  break;
729
766
  }
730
767
  case "USER_ACTION_SUCCESS": {
731
- appendThinkingText(state, "\n\u2713 " + (event.message || "Verification successful"));
768
+ const displayMessage = getUserActionDisplayMessage(eventType, event.message);
769
+ appendThinkingText(state, "\n\u2713 " + displayMessage);
732
770
  completeLastInProgressStep(state.steps);
733
771
  state.userActionRequest = void 0;
734
772
  state.userActionPending = false;
@@ -737,7 +775,7 @@ function processStreamEventV2(event, state) {
737
775
  state.steps.push({
738
776
  id: stepId,
739
777
  eventType,
740
- message,
778
+ message: displayMessage,
741
779
  status: "completed",
742
780
  timestamp: Date.now(),
743
781
  elapsedMs: event.elapsedMs
@@ -746,12 +784,14 @@ function processStreamEventV2(event, state) {
746
784
  break;
747
785
  }
748
786
  case "USER_ACTION_INVALID": {
787
+ const displayMessage = getUserActionDisplayMessage(eventType, event.message);
788
+ appendThinkingText(state, "\n\u2717 " + displayMessage);
749
789
  completeLastInProgressStep(state.steps);
750
790
  const errorStepId = `step-${state.stepCounter++}`;
751
791
  state.steps.push({
752
792
  id: errorStepId,
753
793
  eventType,
754
- message,
794
+ message: displayMessage,
755
795
  status: "error",
756
796
  timestamp: Date.now(),
757
797
  elapsedMs: event.elapsedMs
@@ -769,7 +809,8 @@ function processStreamEventV2(event, state) {
769
809
  break;
770
810
  }
771
811
  case "USER_ACTION_REJECTED": {
772
- appendThinkingText(state, "\n\u2717 " + (event.message || "Verification rejected"));
812
+ const displayMessage = getUserActionDisplayMessage(eventType, event.message);
813
+ appendThinkingText(state, "\n" + displayMessage);
773
814
  completeLastInProgressStep(state.steps);
774
815
  state.userActionRequest = void 0;
775
816
  state.userActionPending = false;
@@ -778,7 +819,7 @@ function processStreamEventV2(event, state) {
778
819
  state.steps.push({
779
820
  id: stepId,
780
821
  eventType,
781
- message,
822
+ message: displayMessage,
782
823
  status: "completed",
783
824
  timestamp: Date.now(),
784
825
  elapsedMs: event.elapsedMs
@@ -787,7 +828,8 @@ function processStreamEventV2(event, state) {
787
828
  break;
788
829
  }
789
830
  case "USER_ACTION_EXPIRED": {
790
- appendThinkingText(state, "\n\u2717 " + (event.message || "Verification expired"));
831
+ const displayMessage = getUserActionDisplayMessage(eventType, event.message);
832
+ appendThinkingText(state, "\n\u2717 " + displayMessage);
791
833
  completeLastInProgressStep(state.steps);
792
834
  state.userActionRequest = void 0;
793
835
  state.userActionPending = false;
@@ -795,7 +837,7 @@ function processStreamEventV2(event, state) {
795
837
  state.steps.push({
796
838
  id: stepId,
797
839
  eventType,
798
- message,
840
+ message: displayMessage,
799
841
  status: "error",
800
842
  timestamp: Date.now(),
801
843
  elapsedMs: event.elapsedMs
@@ -804,11 +846,13 @@ function processStreamEventV2(event, state) {
804
846
  break;
805
847
  }
806
848
  case "USER_ACTION_RESENT": {
849
+ const displayMessage = getUserActionDisplayMessage(eventType, event.message);
850
+ appendThinkingText(state, "\n" + displayMessage);
807
851
  const stepId = `step-${state.stepCounter++}`;
808
852
  state.steps.push({
809
853
  id: stepId,
810
854
  eventType,
811
- message,
855
+ message: displayMessage,
812
856
  status: "completed",
813
857
  timestamp: Date.now(),
814
858
  elapsedMs: event.elapsedMs
@@ -817,7 +861,11 @@ function processStreamEventV2(event, state) {
817
861
  break;
818
862
  }
819
863
  case "USER_ACTION_FAILED": {
820
- appendThinkingText(state, "\n\u2717 " + (event.message || "Verification failed"));
864
+ const displayMessage = getUserActionDisplayMessage(
865
+ eventType,
866
+ event.message || event.errorMessage
867
+ );
868
+ appendThinkingText(state, "\n\u2717 " + displayMessage);
821
869
  completeLastInProgressStep(state.steps);
822
870
  state.userActionRequest = void 0;
823
871
  state.userActionPending = false;
@@ -825,7 +873,7 @@ function processStreamEventV2(event, state) {
825
873
  state.steps.push({
826
874
  id: stepId,
827
875
  eventType,
828
- message,
876
+ message: displayMessage,
829
877
  status: "error",
830
878
  timestamp: Date.now(),
831
879
  elapsedMs: event.elapsedMs
@@ -947,7 +995,10 @@ function useStreamManagerV2(config, callbacks, setMessages, setIsWaitingForRespo
947
995
  if (eventType === "USER_ACTION_REQUIRED" && state.userActionRequest) {
948
996
  callbacksRef.current.onUserActionRequired?.(state.userActionRequest);
949
997
  } else if (eventType.startsWith("USER_ACTION_") && eventType !== "USER_ACTION_REQUIRED") {
950
- const msg = event.message?.trim() || event.errorMessage?.trim() || getEventMessage(event);
998
+ const msg = getUserActionDisplayMessage(
999
+ eventType,
1000
+ event.message?.trim() || event.errorMessage?.trim() || getEventMessage(event)
1001
+ );
951
1002
  callbacksRef.current.onUserActionEvent?.(eventType, msg);
952
1003
  }
953
1004
  const activeStep = state.steps.find((s) => s.id === state.currentExecutingStepId);