@mastra/react 0.2.18-alpha.5 → 0.2.18-alpha.7

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.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './mastra-react-provider.js';
2
2
  export * from './agent/hooks.js';
3
3
  export * from './agent/types.js';
4
+ export type { MastraClientCredentials, MastraClientProviderProps } from './mastra-client-context.js';
4
5
  export { useMastraClient } from './mastra-client-context.js';
5
6
  export * from './lib/ai-sdk/index.js';
6
7
  export * from './ui/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,cAAc,cAAc,CAAC;AAC7B,cAAc,MAAM,CAAC;AACrB,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,YAAY,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAClG,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,cAAc,cAAc,CAAC;AAC7B,cAAc,MAAM,CAAC;AACrB,cAAc,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -10,8 +10,14 @@ import { codeToHast } from 'shiki/bundle/web';
10
10
 
11
11
  // src/mastra-client-context.tsx
12
12
  var MastraClientContext = createContext({});
13
- var MastraClientProvider = ({ children, baseUrl, headers, apiPrefix }) => {
14
- const client = createMastraClient(baseUrl, headers, apiPrefix);
13
+ var MastraClientProvider = ({
14
+ children,
15
+ baseUrl,
16
+ headers,
17
+ apiPrefix,
18
+ credentials = "include"
19
+ }) => {
20
+ const client = createMastraClient(baseUrl, headers, apiPrefix, credentials);
15
21
  return /* @__PURE__ */ jsx(MastraClientContext.Provider, { value: client, children });
16
22
  };
17
23
  var useMastraClient = () => useContext(MastraClientContext);
@@ -30,15 +36,22 @@ var isLocalUrl = (url) => {
30
36
  return false;
31
37
  }
32
38
  };
33
- var createMastraClient = (baseUrl, mastraClientHeaders = {}, apiPrefix) => {
39
+ var createMastraClient = (baseUrl, mastraClientHeaders = {}, apiPrefix, credentials = "include") => {
34
40
  return new MastraClient({
35
41
  baseUrl: baseUrl || "",
36
42
  headers: isLocalUrl(baseUrl) ? { ...mastraClientHeaders, "x-mastra-dev-playground": "true" } : mastraClientHeaders,
37
- apiPrefix
43
+ apiPrefix,
44
+ credentials
38
45
  });
39
46
  };
40
- var MastraReactProvider = ({ children, baseUrl, headers, apiPrefix }) => {
41
- return /* @__PURE__ */ jsx(MastraClientProvider, { baseUrl, headers, apiPrefix, children });
47
+ var MastraReactProvider = ({
48
+ children,
49
+ baseUrl,
50
+ headers,
51
+ apiPrefix,
52
+ credentials
53
+ }) => {
54
+ return /* @__PURE__ */ jsx(MastraClientProvider, { baseUrl, headers, apiPrefix, credentials, children });
42
55
  };
43
56
 
44
57
  // src/lib/ai-sdk/utils/formatCompletionFeedback.ts
@@ -422,7 +435,11 @@ var toUIMessage = ({ chunk, conversation, metadata }) => {
422
435
  if (isWorkflow) {
423
436
  output = chunk.payload.result?.result;
424
437
  } else if (isAgent) {
425
- output = parts[toolPartIndex].output ?? chunk.payload.result;
438
+ const existingOutput = parts[toolPartIndex].output;
439
+ output = existingOutput ? {
440
+ ...chunk.payload.result,
441
+ childMessages: existingOutput.childMessages?.length ? existingOutput.childMessages : chunk.payload.result?.childMessages
442
+ } : chunk.payload.result;
426
443
  } else {
427
444
  output = chunk.payload.result;
428
445
  }
@@ -1018,12 +1035,23 @@ var resolveInitialMessages = (messages) => {
1018
1035
  const extendedMessage = message;
1019
1036
  const pendingToolApprovals = extendedMessage.metadata?.pendingToolApprovals;
1020
1037
  if (pendingToolApprovals && typeof pendingToolApprovals === "object") {
1038
+ const stillPending = Object.fromEntries(
1039
+ Object.entries(pendingToolApprovals).filter(([_, approval]) => {
1040
+ if (!approval || typeof approval !== "object" || !("toolCallId" in approval)) {
1041
+ return false;
1042
+ }
1043
+ const toolCallId = approval.toolCallId;
1044
+ return !message.parts.some(
1045
+ (part) => part.toolCallId === toolCallId && (part.state === "output-available" || part.output != null)
1046
+ );
1047
+ })
1048
+ );
1021
1049
  return {
1022
1050
  ...message,
1023
1051
  metadata: {
1024
1052
  ...message.metadata,
1025
1053
  mode: "stream",
1026
- requireApprovalMetadata: pendingToolApprovals
1054
+ ...Object.keys(stillPending).length > 0 ? { requireApprovalMetadata: stillPending } : {}
1027
1055
  }
1028
1056
  };
1029
1057
  }