@mastra/react 0.5.3-alpha.3 → 0.6.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"accumulator.d.ts","sourceRoot":"","sources":["../../../src/lib/mastra-db/accumulator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,iBAAiB,EAIlB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAkB,SAAS,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,KAAK,EAAE,oBAAoB,EAAc,MAAM,wBAAwB,CAAC;AAE/E,OAAO,KAAK,EAEV,uBAAuB,EAIxB,MAAM,SAAS,CAAC;AAiBjB,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;CAC5B,CAAC;AA6DF,QAAA,MAAM,oBAAoB,GAAI,MAAM,iBAAiB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SACP,CAAC;AAE5E;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,GAAI,cAAc,eAAe,EAAE,KAAG,eAAe,EAehG,CAAC;AAqFF;;;GAGG;AACH,eAAO,MAAM,mCAAmC,GAC9C,MAAM,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC9C,OAAO,WAAW,KACjB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAoFzC,CAAC;AA2GF,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,mCAAmC,mBAAmB,KAAG,eAAe,EAi+BvG,CAAC;AAuJF,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,gBAAgB,CAAC;IACxB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAwZD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,GAAI,oCAIpC,0BAA0B,KAAG,eAAe,EAuE9C,CAAC;AAGF,OAAO,EAAE,oBAAoB,IAAI,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"accumulator.d.ts","sourceRoot":"","sources":["../../../src/lib/mastra-db/accumulator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,iBAAiB,EAIlB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAkB,SAAS,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,KAAK,EAAE,oBAAoB,EAAc,MAAM,wBAAwB,CAAC;AAG/E,OAAO,KAAK,EAEV,uBAAuB,EAIxB,MAAM,SAAS,CAAC;AAiBjB,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;CAC5B,CAAC;AA+EF,QAAA,MAAM,oBAAoB,GAAI,MAAM,iBAAiB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SACP,CAAC;AAE5E;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,GAAI,cAAc,eAAe,EAAE,KAAG,eAAe,EAgBhG,CAAC;AAqFF;;;GAGG;AACH,eAAO,MAAM,mCAAmC,GAC9C,MAAM,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC9C,OAAO,WAAW,KACjB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAoFzC,CAAC;AA2GF,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,mCAAmC,mBAAmB,KAAG,eAAe,EAggCvG,CAAC;AAuJF,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,gBAAgB,CAAC;IACxB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAwZD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,GAAI,oCAIpC,0BAA0B,KAAG,eAAe,EAuE9C,CAAC;AAGF,OAAO,EAAE,oBAAoB,IAAI,sBAAsB,EAAE,CAAC"}
@@ -1,11 +1,14 @@
1
1
  import type { MastraDBMessage } from '@mastra/core/agent/message-list';
2
2
  import type { CoreUserMessage } from '@mastra/core/llm';
3
+ export declare const fromCoreUserMessageToMastraDBMessage: (coreUserMessage: CoreUserMessage) => MastraDBMessage;
3
4
  /**
4
- * Convert a CoreUserMessage into a canonical `MastraDBMessage` (`format: 2`).
5
+ * Merge multiple `CoreUserMessage`s into a single canonical `MastraDBMessage`.
5
6
  *
6
- * Handles all CoreUserMessage content types:
7
- * - String content single text part
8
- * - Array content with text/image/file parts corresponding `MastraMessagePart`s
7
+ * A user turn that carries attachments arrives as several `CoreUserMessage`s
8
+ * (one for the text, one per attachment). Memory/reload persists and resolves
9
+ * that whole turn as a single multi-part user message, so the optimistic
10
+ * streaming display must do the same — flatten every message's parts into one
11
+ * `parts` array — to render identically (one bubble, not one per message).
9
12
  */
10
- export declare const fromCoreUserMessageToMastraDBMessage: (coreUserMessage: CoreUserMessage) => MastraDBMessage;
13
+ export declare const fromCoreUserMessagesToMastraDBMessage: (coreUserMessages: CoreUserMessage[]) => MastraDBMessage;
11
14
  //# sourceMappingURL=fromCoreUserMessage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fromCoreUserMessage.d.ts","sourceRoot":"","sources":["../../../src/lib/mastra-db/fromCoreUserMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,iCAAiC,CAAC;AAC1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD;;;;;;GAMG;AACH,eAAO,MAAM,oCAAoC,GAAI,iBAAiB,eAAe,KAAG,eA8CvF,CAAC"}
1
+ {"version":3,"file":"fromCoreUserMessage.d.ts","sourceRoot":"","sources":["../../../src/lib/mastra-db/fromCoreUserMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,iCAAiC,CAAC;AAC1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAyDxD,eAAO,MAAM,oCAAoC,GAAI,iBAAiB,eAAe,KAAG,eAC/B,CAAC;AAE1D;;;;;;;;GAQG;AACH,eAAO,MAAM,qCAAqC,GAAI,kBAAkB,eAAe,EAAE,KAAG,eAC1B,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export { accumulateChunk, accumulateNetworkChunk, finishStreamingAssistantMessage, mapWorkflowStreamChunkToWatchResult, } from './accumulator.js';
2
2
  export type { AccumulateChunkArgs, AccumulateNetworkChunkArgs } from './accumulator.js';
3
- export { fromCoreUserMessageToMastraDBMessage } from './fromCoreUserMessage.js';
3
+ export { fromCoreUserMessageToMastraDBMessage, fromCoreUserMessagesToMastraDBMessage } from './fromCoreUserMessage.js';
4
+ export { CLIENT_MESSAGE_ID_KEY } from './types.js';
4
5
  export type { AccumulatorPart, BackgroundTaskEntry, CompletionResult, MastraDBMessageMetadata, MastraReasoningPart, MastraTextPart, PendingToolApprovalEntry, RequireApprovalEntry, SuspendedToolEntry, TripwireMetadata, } from './types.js';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/mastra-db/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,+BAA+B,EAC/B,mCAAmC,GACpC,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,uBAAuB,CAAC;AAC7E,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/mastra-db/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,+BAA+B,EAC/B,mCAAmC,GACpC,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,qCAAqC,EAAE,MAAM,uBAAuB,CAAC;AACpH,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,SAAS,CAAC"}
@@ -43,11 +43,26 @@ export type CompletionResult = {
43
43
  * fields are all optional so a single record can carry the union without forcing
44
44
  * narrowing on the consumer side.
45
45
  */
46
+ /**
47
+ * Metadata key carrying a client-generated correlation id. The optimistic
48
+ * pending user bubble and the outgoing `sendMessage` request both stamp this
49
+ * id; the server echoes it back on the `data-user-message` data part so the
50
+ * accumulator can reconcile the pending bubble deterministically (decoupled
51
+ * from the server-assigned signal id). This is transient client state and is
52
+ * stripped once the echo is reconciled and on reload.
53
+ */
54
+ export declare const CLIENT_MESSAGE_ID_KEY = "clientMessageId";
46
55
  export type MastraDBMessageMetadata = {
47
56
  /** Which run mode produced this message. */
48
57
  mode?: 'generate' | 'stream' | 'network';
49
- /** Streaming/abort/error/tripwire surface status. */
50
- status?: 'warning' | 'error' | 'tripwire';
58
+ /** Client-generated correlation id (see {@link CLIENT_MESSAGE_ID_KEY}). */
59
+ clientMessageId?: string;
60
+ /**
61
+ * Streaming/abort/error/tripwire surface status. `'pending'` marks an
62
+ * optimistically-appended user message that is awaiting its server signal
63
+ * echo; it is cleared once the echo arrives and is stripped on reload.
64
+ */
65
+ status?: 'warning' | 'error' | 'tripwire' | 'pending';
51
66
  /** Reason recorded by the upstream stream when it finishes. */
52
67
  finishReason?: string;
53
68
  /** Tripwire metadata when status === 'tripwire'. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/mastra-db/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/mastra-db/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MessageFactory.d.ts","sourceRoot":"","sources":["../../../src/ui/MessageFactory/MessageFactory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAY,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,eAAe,EAA2B,MAAM,qBAAqB,CAAC;AACpF,OAAO,KAAK,EAEV,eAAe,EAEf,gBAAgB,EAEhB,oBAAoB,EACpB,sBAAsB,EAEvB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,sDAAsD;IACtD,OAAO,EAAE,eAAe,CAAC;IACzB,kDAAkD;IAClD,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,8EAA8E;IAC9E,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,KAAK,SAAS,CAAC;CACnE;AAyND;;;;;GAKG;AACH,eAAO,MAAM,cAAc,2FAxD0D,mBAAmB,6CAwD7C,CAAC"}
1
+ {"version":3,"file":"MessageFactory.d.ts","sourceRoot":"","sources":["../../../src/ui/MessageFactory/MessageFactory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAY,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,eAAe,EAA2B,MAAM,qBAAqB,CAAC;AACpF,OAAO,KAAK,EAEV,eAAe,EAEf,gBAAgB,EAEhB,oBAAoB,EACpB,sBAAsB,EAEvB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,sDAAsD;IACtD,OAAO,EAAE,eAAe,CAAC;IACzB,kDAAkD;IAClD,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,8EAA8E;IAC9E,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,KAAK,SAAS,CAAC;CACnE;AAgOD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,2FA/D0D,mBAAmB,6CA+D7C,CAAC"}
@@ -1,3 +1,3 @@
1
1
  export * from './MessageFactory.js';
2
- export type { MessageRenderers, MessageRoleRenderers, MessageRoleRendererProps, MessageStatusRenderers, TripwireRendererProps, WarningRendererProps, ErrorRendererProps, TaskRendererProps, DynamicToolPart, MessageFactoryPart, DataPart, PartByType, TextPart, ReasoningPart, FilePart, StepStartPart, ToolInvocationPart, SourceDocumentPart, SourceUrlPart, } from './types.js';
2
+ export type { MessageRenderers, MessageRoleRenderers, MessageRoleRendererProps, MessageStatusRenderers, TripwireRendererProps, WarningRendererProps, ErrorRendererProps, PendingRendererProps, TaskRendererProps, DynamicToolPart, MessageFactoryPart, DataPart, PartByType, TextPart, ReasoningPart, FilePart, StepStartPart, ToolInvocationPart, SourceDocumentPart, SourceUrlPart, } from './types.js';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/MessageFactory/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,YAAY,EACV,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,GACd,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/MessageFactory/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,YAAY,EACV,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,GACd,MAAM,SAAS,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { MastraDBMessage, AIV5Type } from '@mastra/core/agent/message-list';
2
2
  import type { IsTaskCompletePayload } from '@mastra/core/stream';
3
3
  import type { ReactNode } from 'react';
4
- import type { AccumulatorPart, TripwireMetadata } from '../../lib/mastra-db/index.js';
4
+ import type { AccumulatorPart, MastraReasoningPart, MastraTextPart, TripwireMetadata } from '../../lib/mastra-db/index.js';
5
5
  /**
6
6
  * Extract the concrete part shape for a given discriminant from the runtime
7
7
  * accumulator union. Deriving from the already-concrete `AccumulatorPart`
@@ -11,10 +11,12 @@ import type { AccumulatorPart, TripwireMetadata } from '../../lib/mastra-db/inde
11
11
  export type PartByType<T extends string> = Extract<AccumulatorPart, {
12
12
  type: T;
13
13
  }>;
14
+ type TextRuntimeExtensions = Partial<Pick<MastraTextPart, 'textId' | 'state' | 'providerMetadata' | 'createdAt'>>;
15
+ type ReasoningRuntimeExtensions = Partial<Pick<MastraReasoningPart, 'reasoningId' | 'state' | 'redacted' | 'providerMetadata' | 'createdAt'>>;
14
16
  /** Narrowed part shape passed to the `Text` renderer. */
15
- export type TextPart = PartByType<'text'>;
17
+ export type TextPart = Omit<PartByType<'text'>, keyof TextRuntimeExtensions> & TextRuntimeExtensions;
16
18
  /** Narrowed part shape passed to the `Reasoning` renderer. */
17
- export type ReasoningPart = PartByType<'reasoning'>;
19
+ export type ReasoningPart = Omit<PartByType<'reasoning'>, keyof ReasoningRuntimeExtensions> & ReasoningRuntimeExtensions;
18
20
  /** Narrowed part shape passed to the `File` renderer. */
19
21
  export type FilePart = PartByType<'file'>;
20
22
  /** Narrowed part shape passed to the `StepStart` renderer. */
@@ -68,11 +70,11 @@ export type MessageFactoryPart = AccumulatorPart | DynamicToolPart;
68
70
  * type-checked and only the renderer matching a part's `type` is ever invoked.
69
71
  */
70
72
  export type MessageRenderers = {
71
- Text?: (part: PartByType<'text'>) => ReactNode;
72
- Reasoning?: (part: PartByType<'reasoning'>) => ReactNode;
73
- File?: (part: PartByType<'file'>) => ReactNode;
74
- StepStart?: (part: PartByType<'step-start'>) => ReactNode;
75
- ToolInvocation?: (part: PartByType<'tool-invocation'>) => ReactNode;
73
+ Text?: (part: TextPart) => ReactNode;
74
+ Reasoning?: (part: ReasoningPart) => ReactNode;
75
+ File?: (part: FilePart) => ReactNode;
76
+ StepStart?: (part: StepStartPart) => ReactNode;
77
+ ToolInvocation?: (part: ToolInvocationPart) => ReactNode;
76
78
  /**
77
79
  * Receives the flat `source-url` citation shape ({@link AIV5Type.SourceUrlUIPart}).
78
80
  * Both the runtime `type: 'source-url'` part and the legacy persisted
@@ -80,7 +82,7 @@ export type MessageRenderers = {
80
82
  * are dispatched here, so the renderer always gets `sourceId`/`url`/`title`.
81
83
  */
82
84
  SourceUrl?: (part: SourceUrlPart) => ReactNode;
83
- SourceDocument?: (part: PartByType<'source-document'>) => ReactNode;
85
+ SourceDocument?: (part: SourceDocumentPart) => ReactNode;
84
86
  Data?: (part: DataPart) => ReactNode;
85
87
  /** Covers runtime-only `dynamic-tool` and AI SDK v5 `tool-${string}` parts. */
86
88
  DynamicTool?: (part: DynamicToolPart) => ReactNode;
@@ -143,11 +145,24 @@ export type TaskRendererProps = Pick<IsTaskCompletePayload, 'passed'> & Partial<
143
145
  text: string;
144
146
  message: MastraDBMessage;
145
147
  };
148
+ /**
149
+ * Props passed to the `Pending` status slot. Rendered *wrapping* the parts walk
150
+ * when `message.content.metadata.status === 'pending'`, so the optimistic user
151
+ * bubble still renders inline while the consumer applies a "sending" style.
152
+ */
153
+ export type PendingRendererProps = {
154
+ children: ReactNode;
155
+ text: string;
156
+ message: MastraDBMessage;
157
+ };
146
158
  /**
147
159
  * Optional message-level slots dispatched off `message.content.metadata`.
148
160
  *
149
161
  * - `Tripwire` / `Warning` / `Error` are *replacement* slots: when
150
162
  * `metadata.status` matches, the slot renders instead of the parts walk.
163
+ * - `Pending` is a *wrapping* slot: when `metadata.status === 'pending'` the
164
+ * slot wraps the parts walk so the optimistic bubble renders with a
165
+ * "sending" style.
151
166
  * - `Task` is an *adjacent* slot: when a completion verdict exists it renders
152
167
  * alongside the parts.
153
168
  *
@@ -159,6 +174,8 @@ export type MessageStatusRenderers = {
159
174
  Tripwire?: (props: TripwireRendererProps) => ReactNode;
160
175
  Warning?: (props: WarningRendererProps) => ReactNode;
161
176
  Error?: (props: ErrorRendererProps) => ReactNode;
177
+ Pending?: (props: PendingRendererProps) => ReactNode;
162
178
  Task?: (props: TaskRendererProps) => ReactNode;
163
179
  };
180
+ export {};
164
181
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ui/MessageFactory/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ui/MessageFactory/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { recordMicrophoneToFile } from './record-mic-to-file.js';
2
+ export { playStreamWithWebAudio } from './play-stream-with-web-audio.js';
3
+ export { useSpeechRecognition } from './use-speech-recognition.js';
4
+ export type { SpeechRecognitionState, UseSpeechRecognitionArgs } from './use-speech-recognition.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/voice/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function playStreamWithWebAudio(stream: ReadableStream, onEnded?: () => void): Promise<() => void>;
2
+ //# sourceMappingURL=play-stream-with-web-audio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"play-stream-with-web-audio.d.ts","sourceRoot":"","sources":["../../src/voice/play-stream-with-web-audio.ts"],"names":[],"mappings":"AAAA,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,MAAM,IAAI,uBA4CxF"}
@@ -0,0 +1,2 @@
1
+ export declare function recordMicrophoneToFile(onFinish: (file: File) => void): Promise<MediaRecorder>;
2
+ //# sourceMappingURL=record-mic-to-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-mic-to-file.d.ts","sourceRoot":"","sources":["../../src/voice/record-mic-to-file.ts"],"names":[],"mappings":"AAAA,wBAAsB,sBAAsB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,0BAsB1E"}
@@ -0,0 +1,20 @@
1
+ import type { MastraClient } from '@mastra/client-js';
2
+ type Agent = ReturnType<MastraClient['getAgent']>;
3
+ type VoiceRequestContext = Parameters<Agent['voice']['getSpeakers']>[0];
4
+ export interface SpeechRecognitionState {
5
+ isListening: boolean;
6
+ transcript: string;
7
+ error: string | null;
8
+ }
9
+ export interface UseSpeechRecognitionArgs {
10
+ language?: string;
11
+ agentId?: string;
12
+ requestContext?: VoiceRequestContext;
13
+ }
14
+ type SpeechRecognitionResult = SpeechRecognitionState & {
15
+ start: () => void;
16
+ stop: () => void;
17
+ };
18
+ export declare const useSpeechRecognition: ({ language, agentId, requestContext, }: UseSpeechRecognitionArgs) => SpeechRecognitionResult;
19
+ export {};
20
+ //# sourceMappingURL=use-speech-recognition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-speech-recognition.d.ts","sourceRoot":"","sources":["../../src/voice/use-speech-recognition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAKtD,KAAK,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;AAClD,KAAK,mBAAmB,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAExE,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;AAED,KAAK,uBAAuB,GAAG,sBAAsB,GAAG;IACtD,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,wCAIlC,wBAAwB,KAAG,uBA4C7B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mastra/react",
3
- "version": "0.5.3-alpha.3",
3
+ "version": "0.6.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/mastra-ai/mastra.git",
@@ -39,7 +39,7 @@
39
39
  "lucide-react": "^0.522.0",
40
40
  "shiki": "^1.29.2",
41
41
  "tailwind-merge": "^3.5.0",
42
- "@mastra/client-js": "1.24.0-alpha.3"
42
+ "@mastra/client-js": "1.24.0"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "@mastra/core": ">=1.8.0-0 <2.0.0-0",
@@ -69,9 +69,9 @@
69
69
  "vite": "^7.3.1",
70
70
  "vitest": "4.1.5",
71
71
  "zod": "^3.25.76",
72
- "@internal/lint": "0.0.103",
73
- "@internal/types-builder": "0.0.78",
74
- "@mastra/core": "1.42.0-alpha.3"
72
+ "@internal/lint": "0.0.104",
73
+ "@internal/types-builder": "0.0.79",
74
+ "@mastra/core": "1.42.0"
75
75
  },
76
76
  "eslintConfig": {
77
77
  "extends": [