@runtypelabs/persona 4.10.1 → 4.11.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.
Files changed (56) hide show
  1. package/dist/animations/glyph-cycle.d.cts +1 -1
  2. package/dist/animations/glyph-cycle.d.ts +1 -1
  3. package/dist/animations/{types-Bx_rvjff.d.cts → types-DveIaNx6.d.cts} +2 -0
  4. package/dist/animations/{types-Bx_rvjff.d.ts → types-DveIaNx6.d.ts} +2 -0
  5. package/dist/animations/wipe.d.cts +1 -1
  6. package/dist/animations/wipe.d.ts +1 -1
  7. package/dist/chunk-MMUPR2JW.js +1 -0
  8. package/dist/codegen.cjs +1 -1
  9. package/dist/codegen.js +1 -1
  10. package/dist/{context-mentions-7S5KVUTG.js → context-mentions-ONG7A7M6.js} +1 -1
  11. package/dist/context-mentions.d.cts +26 -0
  12. package/dist/context-mentions.d.ts +26 -0
  13. package/dist/index.cjs +67 -67
  14. package/dist/index.cjs.map +1 -1
  15. package/dist/index.d.cts +27 -1
  16. package/dist/index.d.ts +27 -1
  17. package/dist/index.global.js +55 -55
  18. package/dist/index.global.js.map +1 -1
  19. package/dist/index.js +78 -78
  20. package/dist/index.js.map +1 -1
  21. package/dist/smart-dom-reader.d.cts +26 -0
  22. package/dist/smart-dom-reader.d.ts +26 -0
  23. package/dist/theme-editor-preview.cjs +66 -66
  24. package/dist/theme-editor-preview.d.cts +26 -0
  25. package/dist/theme-editor-preview.d.ts +26 -0
  26. package/dist/theme-editor-preview.js +55 -55
  27. package/dist/theme-editor.cjs +5 -5
  28. package/dist/theme-editor.d.cts +26 -0
  29. package/dist/theme-editor.d.ts +26 -0
  30. package/dist/theme-editor.js +9 -9
  31. package/dist/widget.css +1 -1
  32. package/package.json +1 -1
  33. package/src/components/approval-bubble.ts +0 -1
  34. package/src/components/composer-parts.ts +19 -19
  35. package/src/components/context-mention-button.test.ts +5 -1
  36. package/src/components/context-mention-button.ts +6 -4
  37. package/src/components/header-builder.test.ts +3 -3
  38. package/src/components/header-parts.ts +14 -108
  39. package/src/components/message-bubble.test.ts +49 -0
  40. package/src/components/message-bubble.ts +8 -7
  41. package/src/components/reasoning-bubble.ts +0 -2
  42. package/src/components/tool-bubble.ts +0 -2
  43. package/src/generated/runtype-openapi-contract.ts +2 -0
  44. package/src/index-core.ts +1 -0
  45. package/src/styles/widget.css +118 -58
  46. package/src/theme-editor/sections.test.ts +33 -0
  47. package/src/theme-editor/sections.ts +10 -1
  48. package/src/types.ts +25 -0
  49. package/src/ui.attachments-drop.test.ts +2 -1
  50. package/src/ui.message-width.test.ts +407 -0
  51. package/src/ui.ts +145 -238
  52. package/src/utils/table-scroll-fade.test.ts +123 -0
  53. package/src/utils/table-scroll-fade.ts +75 -0
  54. package/src/utils/tooltip.test.ts +226 -0
  55. package/src/utils/tooltip.ts +245 -0
  56. package/dist/chunk-IPVK3KOM.js +0 -1
@@ -864,6 +864,7 @@ type RuntypeExecutionStreamEvent = ({
864
864
  input: number;
865
865
  output: number;
866
866
  };
867
+ totalTokensUsed?: number;
867
868
  type: "execution_complete";
868
869
  }) | ({
869
870
  blockReason?: string;
@@ -1123,6 +1124,7 @@ type RuntypeExecutionStreamEvent = ({
1123
1124
  stepId?: string;
1124
1125
  success: boolean;
1125
1126
  toolCallId: string;
1127
+ toolCost?: number;
1126
1128
  toolName?: string;
1127
1129
  type: "tool_complete";
1128
1130
  } | {
@@ -4825,6 +4827,26 @@ type AgentWidgetTimestampConfig = {
4825
4827
  /** Custom formatter for timestamp display */
4826
4828
  format?: (date: Date) => string;
4827
4829
  };
4830
+ /**
4831
+ * Width configuration for one message role.
4832
+ *
4833
+ * `content` shrink-wraps the rendered message up to `maxWidth`; `full` fills
4834
+ * the available transcript track up to `maxWidth`. The track already accounts
4835
+ * for transcript padding and, when present, the avatar and its gap.
4836
+ */
4837
+ type AgentWidgetMessageRoleLayout = {
4838
+ /**
4839
+ * Message width behavior.
4840
+ * - content: size to the rendered content (the backward-compatible default)
4841
+ * - full: fill the available transcript track
4842
+ */
4843
+ width?: "content" | "full";
4844
+ /**
4845
+ * Optional CSS max-width (for example "80%", "42rem", or "72ch").
4846
+ * Defaults to "85%" for content width and "100%" for full width.
4847
+ */
4848
+ maxWidth?: string;
4849
+ };
4828
4850
  /**
4829
4851
  * Message layout configuration
4830
4852
  * Allows customization of how chat messages are displayed
@@ -4843,6 +4865,10 @@ type AgentWidgetMessageLayoutConfig = {
4843
4865
  timestamp?: AgentWidgetTimestampConfig;
4844
4866
  /** Group consecutive messages from the same role */
4845
4867
  groupConsecutive?: boolean;
4868
+ /** Width behavior for user-authored message rows */
4869
+ user?: AgentWidgetMessageRoleLayout;
4870
+ /** Width behavior for assistant-authored message rows and assistant UI variants */
4871
+ assistant?: AgentWidgetMessageRoleLayout;
4846
4872
  /**
4847
4873
  * Custom renderer for user messages
4848
4874
  * When provided, replaces the default user message rendering
@@ -864,6 +864,7 @@ type RuntypeExecutionStreamEvent = ({
864
864
  input: number;
865
865
  output: number;
866
866
  };
867
+ totalTokensUsed?: number;
867
868
  type: "execution_complete";
868
869
  }) | ({
869
870
  blockReason?: string;
@@ -1123,6 +1124,7 @@ type RuntypeExecutionStreamEvent = ({
1123
1124
  stepId?: string;
1124
1125
  success: boolean;
1125
1126
  toolCallId: string;
1127
+ toolCost?: number;
1126
1128
  toolName?: string;
1127
1129
  type: "tool_complete";
1128
1130
  } | {
@@ -4825,6 +4827,26 @@ type AgentWidgetTimestampConfig = {
4825
4827
  /** Custom formatter for timestamp display */
4826
4828
  format?: (date: Date) => string;
4827
4829
  };
4830
+ /**
4831
+ * Width configuration for one message role.
4832
+ *
4833
+ * `content` shrink-wraps the rendered message up to `maxWidth`; `full` fills
4834
+ * the available transcript track up to `maxWidth`. The track already accounts
4835
+ * for transcript padding and, when present, the avatar and its gap.
4836
+ */
4837
+ type AgentWidgetMessageRoleLayout = {
4838
+ /**
4839
+ * Message width behavior.
4840
+ * - content: size to the rendered content (the backward-compatible default)
4841
+ * - full: fill the available transcript track
4842
+ */
4843
+ width?: "content" | "full";
4844
+ /**
4845
+ * Optional CSS max-width (for example "80%", "42rem", or "72ch").
4846
+ * Defaults to "85%" for content width and "100%" for full width.
4847
+ */
4848
+ maxWidth?: string;
4849
+ };
4828
4850
  /**
4829
4851
  * Message layout configuration
4830
4852
  * Allows customization of how chat messages are displayed
@@ -4843,6 +4865,10 @@ type AgentWidgetMessageLayoutConfig = {
4843
4865
  timestamp?: AgentWidgetTimestampConfig;
4844
4866
  /** Group consecutive messages from the same role */
4845
4867
  groupConsecutive?: boolean;
4868
+ /** Width behavior for user-authored message rows */
4869
+ user?: AgentWidgetMessageRoleLayout;
4870
+ /** Width behavior for assistant-authored message rows and assistant UI variants */
4871
+ assistant?: AgentWidgetMessageRoleLayout;
4846
4872
  /**
4847
4873
  * Custom renderer for user messages
4848
4874
  * When provided, replaces the default user message rendering