@ai-matrx/chat 0.5.0 → 0.5.3

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 (512) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/action-requests/components/ActionRequestAnswerForm.js +313 -209
  3. package/dist/action-requests/components/ActionRequestInlineAnswer.js +9 -2
  4. package/dist/action-requests/components/ParkedOnPersonCard.js +17 -4
  5. package/dist/action-requests/hooks/useToolAction.js +25 -15
  6. package/dist/agent-copy/AlchemySurfaceBridge.js +2 -1
  7. package/dist/agent-copy/RichCopySplit.js +20 -15
  8. package/dist/agents/coding-session-reply/CodingReplyNotice.js +39 -14
  9. package/dist/agents/components/AutoSubmitForm.js +2 -1
  10. package/dist/agents/components/agent-widgets/AgentChatBubble.js +44 -32
  11. package/dist/agents/components/agent-widgets/AgentChatHistorySidebar.js +46 -27
  12. package/dist/agents/components/agent-widgets/AgentCompactModal.js +16 -13
  13. package/dist/agents/components/agent-widgets/AgentFlexiblePanel.js +11 -10
  14. package/dist/agents/components/agent-widgets/AgentFloatingChat.js +6 -5
  15. package/dist/agents/components/agent-widgets/AgentFullModal.js +15 -12
  16. package/dist/agents/components/agent-widgets/AgentInlineOverlay.js +40 -32
  17. package/dist/agents/components/agent-widgets/AgentPanelOverlay.js +11 -10
  18. package/dist/agents/components/agent-widgets/AgentSidebarOverlay.js +11 -10
  19. package/dist/agents/components/agent-widgets/AgentToastOverlay.js +107 -86
  20. package/dist/agents/components/agent-widgets/ChatCollapsible.js +51 -42
  21. package/dist/agents/components/agent-widgets/chat-assistant/AgentChatAssistant.js +43 -30
  22. package/dist/agents/components/agent-widgets/chat-assistant/AssistantCardStack.js +49 -41
  23. package/dist/agents/components/agent-widgets/chat-assistant/AssistantControlBar.js +59 -45
  24. package/dist/agents/components/agent-widgets/chat-assistant/AssistantMessageCard.js +21 -14
  25. package/dist/agents/components/agent-widgets/chat-assistant/ChatAssistantVariableInputs.js +87 -67
  26. package/dist/agents/components/agent-widgets/chat-assistant/CompactAssistantInput.js +91 -73
  27. package/dist/agents/components/agent-widgets/chat-assistant/StatusCard.js +8 -1
  28. package/dist/agents/components/agent-widgets/chat-assistant/UserMessageCard.js +5 -1
  29. package/dist/agents/components/agent-widgets/execution-gates/AgentGateInput.js +36 -35
  30. package/dist/agents/components/agent-widgets/execution-gates/PreExecutionCard.js +39 -27
  31. package/dist/agents/components/ambient-assistant/ScrollAssistantLauncher.js +3 -2
  32. package/dist/agents/components/ambient-assistant/ScrollAssistantLauncherImpl.js +117 -105
  33. package/dist/agents/components/ambient-assistant/ScrollVoiceAssistantLauncherImpl.js +193 -155
  34. package/dist/agents/components/chat/ChatConversationRoom.js +8 -7
  35. package/dist/agents/components/chat/ChatConversationSurface.js +5 -4
  36. package/dist/agents/components/chat/ChatHistorySidebar.js +2 -2
  37. package/dist/agents/components/chat/ChatIncognitoHeaderButton.js +3 -2
  38. package/dist/agents/components/chat/ChatIncognitoProvider.js +2 -1
  39. package/dist/agents/components/chat/ChatNewClient.js +37 -22
  40. package/dist/agents/components/chat/ChatNewHeader.js +4 -3
  41. package/dist/agents/components/chat/ChatRoomClient.js +36 -33
  42. package/dist/agents/components/chat/ChatRoomSkeleton.js +49 -32
  43. package/dist/agents/components/chat/ChatRunHeader.js +26 -18
  44. package/dist/agents/components/chat/ChatSidebarMenu.js +204 -183
  45. package/dist/agents/components/chat/ConversationAttachmentsChip.js +53 -29
  46. package/dist/agents/components/chat/ConversationPageMenu.js +39 -35
  47. package/dist/agents/components/chat/ConversationRecordsChip.js +28 -19
  48. package/dist/agents/components/chat/ConversationRoomNotice.js +18 -14
  49. package/dist/agents/components/chat/NewChatGreeting.js +29 -23
  50. package/dist/agents/components/chat/PinnedAgentsSection.js +58 -49
  51. package/dist/agents/components/chat/SandboxPanel.js +203 -147
  52. package/dist/agents/components/chat/sandbox-insight/SandboxActivityFeed.js +70 -39
  53. package/dist/agents/components/chat/sandbox-insight/SandboxCanvasBody.js +87 -67
  54. package/dist/agents/components/coming-soon/AgentComingSoonContent.js +22 -9
  55. package/dist/agents/components/context-items/ContextItemViewer.js +43 -12
  56. package/dist/agents/components/context-items/bodies/BookmarkReferenceBody.js +6 -5
  57. package/dist/agents/components/context-items/bodies/ContextInputBody.js +15 -5
  58. package/dist/agents/components/context-items/bodies/ContextLayerBodies.js +100 -61
  59. package/dist/agents/components/context-items/bodies/DataBody.js +3 -2
  60. package/dist/agents/components/context-items/bodies/EntityReferenceBody.js +26 -19
  61. package/dist/agents/components/context-items/bodies/GenericBody.js +7 -6
  62. package/dist/agents/components/context-items/bodies/MediaBody.js +39 -32
  63. package/dist/agents/components/context-items/bodies/NoteBody.js +2 -1
  64. package/dist/agents/components/context-items/bodies/ProcessedDocumentBody.js +7 -3
  65. package/dist/agents/components/context-items/bodies/ProcessedDocumentTitle.js +2 -1
  66. package/dist/agents/components/context-items/bodies/RemarkBody.js +3 -2
  67. package/dist/agents/components/context-items/bodies/ResourceSnapshotView.js +10 -3
  68. package/dist/agents/components/context-items/bodies/TaskBody.js +2 -1
  69. package/dist/agents/components/context-items/bodies/UnregisteredBody.js +2 -1
  70. package/dist/agents/components/context-items/bodies/WebpageBody.js +38 -24
  71. package/dist/agents/components/context-items/bodies/WorkingDocumentBody.js +3 -2
  72. package/dist/agents/components/context-policies-display/ContextPolicyChip.js +2 -1
  73. package/dist/agents/components/context-policies-display/ContextPolicyChipStrip.js +23 -16
  74. package/dist/agents/components/context-policies-display/ContextPolicyDetail.js +54 -29
  75. package/dist/agents/components/context-policies-display/ContextPolicyItemsPopover.js +51 -41
  76. package/dist/agents/components/context-policies-display/ContextPolicyTile.js +13 -7
  77. package/dist/agents/components/context-policies-display/ContextRulesPanel.js +19 -12
  78. package/dist/agents/components/context-policies-display/ContextValueBody.js +20 -17
  79. package/dist/agents/components/context-policies-display/MessageContextReceipt.js +71 -30
  80. package/dist/agents/components/context-policies-display/ValueCountPill.js +6 -5
  81. package/dist/agents/components/context-policies-display/knownContextValues.js +20 -16
  82. package/dist/agents/components/context-preview/AttachedContextSection.js +169 -85
  83. package/dist/agents/components/context-preview/ContextCompareView.js +413 -196
  84. package/dist/agents/components/context-preview/ContextPreviewPanel.js +220 -105
  85. package/dist/agents/components/context-preview/SystemItemsLine.js +27 -13
  86. package/dist/agents/components/context-preview/inspector/ContextInspector.js +63 -31
  87. package/dist/agents/components/context-preview/inspector/ContextParityLastRun.js +48 -12
  88. package/dist/agents/components/conversation-actions/conversationActionRegistry.js +6 -1
  89. package/dist/agents/components/conversation-actions/rename/ConversationRenameDialogHost.js +2 -1
  90. package/dist/agents/components/conversation-actions/rename/ConversationRenameDialogHostImpl.js +4 -3
  91. package/dist/agents/components/conversation-history/ConversationHistorySidebar.js +450 -358
  92. package/dist/agents/components/conversation-history/ConversationLaneToggles.js +30 -28
  93. package/dist/agents/components/conversation-history/ConversationPickerWindow.js +20 -19
  94. package/dist/agents/components/conversation-history/ConversationSearchStatus.js +19 -5
  95. package/dist/agents/components/conversation-history/ConversationSourceFilterTree.js +242 -184
  96. package/dist/agents/components/conversation-history/ConversationTrashSection.js +53 -36
  97. package/dist/agents/components/custom-agent/CustomAgentWindow.js +97 -62
  98. package/dist/agents/components/debug/RoutingPanel.js +58 -15
  99. package/dist/agents/components/debug/SandboxFileViewer.js +56 -38
  100. package/dist/agents/components/debug/SandboxInsightPanel.js +27 -2
  101. package/dist/agents/components/debug/StreamDebugFloating.js +12 -12
  102. package/dist/agents/components/debug/StreamDebugPanel.js +1012 -597
  103. package/dist/agents/components/inputs/AgentVariablesInline.js +200 -177
  104. package/dist/agents/components/inputs/BoundVariableChips.js +117 -76
  105. package/dist/agents/components/inputs/DataBoundVariableChips.js +36 -23
  106. package/dist/agents/components/inputs/PreExecutionAgentInput.js +20 -9
  107. package/dist/agents/components/inputs/RowChoicesButton.js +27 -21
  108. package/dist/agents/components/inputs/input-components/AudioVariableInput.js +2 -1
  109. package/dist/agents/components/inputs/input-components/CheckboxGroupInput.js +72 -63
  110. package/dist/agents/components/inputs/input-components/CurrencyVariableInput.js +36 -30
  111. package/dist/agents/components/inputs/input-components/DocumentVariableInput.js +2 -1
  112. package/dist/agents/components/inputs/input-components/ImageVariableInput.js +2 -1
  113. package/dist/agents/components/inputs/input-components/MediaVariableInput.js +177 -126
  114. package/dist/agents/components/inputs/input-components/NumberInput.js +52 -47
  115. package/dist/agents/components/inputs/input-components/PicklistVariableInput.js +11 -11
  116. package/dist/agents/components/inputs/input-components/PillToggleInput.js +2 -2
  117. package/dist/agents/components/inputs/input-components/RadioGroupInput.js +53 -43
  118. package/dist/agents/components/inputs/input-components/ScalarVariableInput.js +46 -39
  119. package/dist/agents/components/inputs/input-components/SelectInput.js +91 -74
  120. package/dist/agents/components/inputs/input-components/SliderInput.js +37 -30
  121. package/dist/agents/components/inputs/input-components/TableVariableInput.js +29 -23
  122. package/dist/agents/components/inputs/input-components/TextareaInput.js +3 -2
  123. package/dist/agents/components/inputs/input-components/ToggleInput.js +24 -22
  124. package/dist/agents/components/inputs/input-components/VariableInputComponent.js +53 -40
  125. package/dist/agents/components/inputs/input-components/VideoVariableInput.js +2 -1
  126. package/dist/agents/components/inputs/input-components/YoutubeVariableInput.js +29 -17
  127. package/dist/agents/components/inputs/resources/AttachedDocumentChip.js +83 -57
  128. package/dist/agents/components/inputs/resources/AttachedDocumentChips.js +68 -62
  129. package/dist/agents/components/inputs/resources/ResourceFamilyPolicyEditor.js +214 -144
  130. package/dist/agents/components/inputs/resources/SmartAgentResourceChips.js +70 -69
  131. package/dist/agents/components/inputs/resources/SmartAgentResourcePickerButton.js +22 -18
  132. package/dist/agents/components/inputs/smart-input/AgentMicrophoneButton.js +3 -2
  133. package/dist/agents/components/inputs/smart-input/AgentTextarea.js +70 -58
  134. package/dist/agents/components/inputs/smart-input/ChatConnectionsStrip.js +172 -142
  135. package/dist/agents/components/inputs/smart-input/ComposerChip.js +30 -22
  136. package/dist/agents/components/inputs/smart-input/ComposerDraftNotice.js +15 -2
  137. package/dist/agents/components/inputs/smart-input/ComposerToolsNotice.js +12 -7
  138. package/dist/agents/components/inputs/smart-input/ComputeLensBar.js +141 -106
  139. package/dist/agents/components/inputs/smart-input/ContextDocsMenu.js +139 -91
  140. package/dist/agents/components/inputs/smart-input/ConversationContextChip.js +9 -6
  141. package/dist/agents/components/inputs/smart-input/ConversationContextRail.js +106 -80
  142. package/dist/agents/components/inputs/smart-input/DesktopPresenceIndicator.js +58 -37
  143. package/dist/agents/components/inputs/smart-input/InboxQueueStrip.js +227 -190
  144. package/dist/agents/components/inputs/smart-input/InputActionButtons.js +80 -36
  145. package/dist/agents/components/inputs/smart-input/PlusAttachMenu.js +163 -118
  146. package/dist/agents/components/inputs/smart-input/QuicksetPanel.js +147 -110
  147. package/dist/agents/components/inputs/smart-input/RunControlsMenu.js +105 -90
  148. package/dist/agents/components/inputs/smart-input/RunControlsTabPanel.js +86 -62
  149. package/dist/agents/components/inputs/smart-input/RunPicksSurface.js +157 -110
  150. package/dist/agents/components/inputs/smart-input/RunSkillPicker.js +12 -11
  151. package/dist/agents/components/inputs/smart-input/RunToolPicker.js +42 -38
  152. package/dist/agents/components/inputs/smart-input/ShapeChipsRow.js +20 -16
  153. package/dist/agents/components/inputs/smart-input/SmartAgentInput.js +40 -33
  154. package/dist/agents/components/inputs/smart-input/SmartAgentInputStacked.js +203 -177
  155. package/dist/agents/components/inputs/smart-input/SmartInputFileDropTarget.js +30 -21
  156. package/dist/agents/components/inputs/smart-input/UninitializedShell.js +22 -19
  157. package/dist/agents/components/inputs/smart-input/ViewOnlyComposerBar.js +8 -5
  158. package/dist/agents/components/inputs/smart-input/composer/ComposerAgentPeek.js +3 -2
  159. package/dist/agents/components/inputs/smart-input/composer/ComposerAgentPill.js +129 -99
  160. package/dist/agents/components/inputs/smart-input/composer/ComposerChipsRow.js +53 -47
  161. package/dist/agents/components/inputs/smart-input/composer/ComposerConnectPromo.js +25 -21
  162. package/dist/agents/components/inputs/smart-input/composer/ComposerConnectorsPanel.js +91 -55
  163. package/dist/agents/components/inputs/smart-input/composer/ComposerEffortPill.js +51 -42
  164. package/dist/agents/components/inputs/smart-input/composer/ComposerMenu.js +143 -115
  165. package/dist/agents/components/inputs/smart-input/composer/ComposerMenuSheet.js +26 -23
  166. package/dist/agents/components/inputs/smart-input/composer/ComposerMetaRow.js +41 -30
  167. package/dist/agents/components/inputs/smart-input/composer/ComposerModeSwitch.js +38 -26
  168. package/dist/agents/components/inputs/smart-input/composer/ComposerOutput.js +150 -101
  169. package/dist/agents/components/inputs/smart-input/composer/ComposerPlusMenu.js +264 -198
  170. package/dist/agents/components/inputs/smart-input/composer/ComposerSplash.js +54 -38
  171. package/dist/agents/components/inputs/variable-input-variations/AgentVariableCards.js +144 -127
  172. package/dist/agents/components/inputs/variable-input-variations/AgentVariableForm.js +247 -165
  173. package/dist/agents/components/inputs/variable-input-variations/AgentVariablesGuided.js +323 -244
  174. package/dist/agents/components/inputs/variable-input-variations/AgentVariablesStacked.js +32 -28
  175. package/dist/agents/components/inputs/variable-input-variations/AgentVariablesWizard.js +43 -16
  176. package/dist/agents/components/inputs/variable-input-variations/SmartAgentVariables.js +7 -6
  177. package/dist/agents/components/live-run/LiveRunDisplay.js +81 -53
  178. package/dist/agents/components/live-run/LiveRunProgress.js +72 -48
  179. package/dist/agents/components/live-run/RunSetDisplay.js +20 -17
  180. package/dist/agents/components/memory/components/AgentMemoryAllView.js +45 -27
  181. package/dist/agents/components/memory/components/AgentMemoryBody.js +4 -3
  182. package/dist/agents/components/memory/components/AgentMemoryEditor.js +52 -36
  183. package/dist/agents/components/memory/components/AgentMemoryFooter.js +66 -44
  184. package/dist/agents/components/memory/components/AgentMemoryInlinePanel.js +10 -2
  185. package/dist/agents/components/memory/components/AgentMemorySidebar.js +125 -89
  186. package/dist/agents/components/messages-display/AgentConversationDisplay.js +130 -119
  187. package/dist/agents/components/messages-display/MessageAttachmentStrip.js +8 -7
  188. package/dist/agents/components/messages-display/MessageTimestamp.js +8 -5
  189. package/dist/agents/components/messages-display/TranscriptIntegrityCopyButton.js +4 -3
  190. package/dist/agents/components/messages-display/assistant/AgentAssistantMessage.js +135 -108
  191. package/dist/agents/components/messages-display/assistant/AgentEmptyMessageDisplay.js +20 -9
  192. package/dist/agents/components/messages-display/assistant/AssistantMessageFooter.js +76 -65
  193. package/dist/agents/components/messages-display/assistant/AssistantNoAnswer.js +28 -17
  194. package/dist/agents/components/messages-display/assistant/AssistantTurnGroup.js +65 -62
  195. package/dist/agents/components/messages-display/assistant/BreathingOrb.js +70 -57
  196. package/dist/agents/components/messages-display/assistant/InPlaceAnswerEditor.js +7 -3
  197. package/dist/agents/components/messages-display/assistant/ProviderRetryCard.js +61 -36
  198. package/dist/agents/components/messages-display/citations/MessageCitationsContext.js +2 -1
  199. package/dist/agents/components/messages-display/citations/MessageSourcesRow.js +25 -21
  200. package/dist/agents/components/messages-display/conversation-tools/ConversationFindBar.js +46 -43
  201. package/dist/agents/components/messages-display/conversation-tools/FollowUpSuggestions.js +2 -2
  202. package/dist/agents/components/messages-display/message-options/DeleteMessageDialog.js +61 -40
  203. package/dist/agents/components/messages-display/message-options/EditHistoryDialog.js +91 -56
  204. package/dist/agents/components/messages-display/message-options/shareMessageAsWebpage.js +1 -1
  205. package/dist/agents/components/messages-display/user/AgentUserMessage.js +180 -144
  206. package/dist/agents/components/messages-display/user/CollabNoteMessage.js +16 -6
  207. package/dist/agents/components/messages-display/user/FirstTurnVariables.js +51 -40
  208. package/dist/agents/components/messages-display/user/PendingSendMessage.js +60 -37
  209. package/dist/agents/components/messages-display/user/RemarksTranscriptView.js +22 -5
  210. package/dist/agents/components/messages-display/user/ResourceAttachmentTile.js +187 -147
  211. package/dist/agents/components/messages-display/user/ResourceEditableToggleSamples.js +17 -1
  212. package/dist/agents/components/messages-display/user/UserActionBar.js +77 -62
  213. package/dist/agents/components/messages-display/user/UserMessageAttachmentStyleComparison.js +82 -39
  214. package/dist/agents/components/messages-display/user/UserMessageChipsDemo.js +189 -105
  215. package/dist/agents/components/messages-display/user/UserMessageHybridTileSamples.js +212 -130
  216. package/dist/agents/components/model/AgentModelPanel.js +2 -1
  217. package/dist/agents/components/model-tiers/ModelTierIdentityList.js +18 -15
  218. package/dist/agents/components/notifications/ImageArrivalPeek.js +45 -34
  219. package/dist/agents/components/notifications/ImageArrivalPeekHost.js +14 -13
  220. package/dist/agents/components/observational-memory/ObservationalMemoryCore.js +46 -31
  221. package/dist/agents/components/observational-memory/components/MemoryControls.js +84 -48
  222. package/dist/agents/components/observational-memory/components/MemoryCostCard.js +136 -84
  223. package/dist/agents/components/observational-memory/components/MemoryEventTimeline.js +127 -78
  224. package/dist/agents/components/observational-memory/components/MemoryOverviewCard.js +113 -72
  225. package/dist/agents/components/observational-memory/components/MemoryStateInspector.js +384 -216
  226. package/dist/agents/components/run/AgentRunHeader.js +44 -27
  227. package/dist/agents/components/run/AgentRunnerPage.js +47 -31
  228. package/dist/agents/components/run/AgentStatusIndicator.js +2 -1
  229. package/dist/agents/components/run/AssistantError.js +61 -27
  230. package/dist/agents/components/run/AssistantWarning.js +18 -2
  231. package/dist/agents/components/run/GenerationJobCard.js +19 -6
  232. package/dist/agents/components/run/IncompleteNote.js +11 -1
  233. package/dist/agents/components/run/RunJobWorkingLine.js +14 -11
  234. package/dist/agents/components/run/run-sidebar/SidebarHeader.js +25 -18
  235. package/dist/agents/components/run-controls/AdvancedRunSettings/AdvancedRunSettings.js +72 -56
  236. package/dist/agents/components/run-controls/AdvancedRunSettings/ComplexityBadge.js +10 -8
  237. package/dist/agents/components/run-controls/AdvancedRunSettings/primitives.js +84 -66
  238. package/dist/agents/components/run-controls/ContextPoliciesTab.js +194 -130
  239. package/dist/agents/components/run-controls/RunConfigOverrides.js +245 -179
  240. package/dist/agents/components/run-controls/RunInputCapabilities.js +24 -20
  241. package/dist/agents/components/run-controls/RunModelPicker.js +35 -25
  242. package/dist/agents/components/run-controls/RunSettingsEditor.js +356 -267
  243. package/dist/agents/components/run-controls/RunSettingsModal.js +8 -1
  244. package/dist/agents/components/run-controls/SimpleRunSettings/CapabilityGrid.js +25 -20
  245. package/dist/agents/components/run-controls/SimpleRunSettings/ReasoningLevelSelector.js +14 -11
  246. package/dist/agents/components/run-controls/SimpleRunSettings/SimpleRunSettings.js +32 -21
  247. package/dist/agents/components/run-controls/SimpleRunSettings/SimpleRunSettingsButton.js +41 -35
  248. package/dist/agents/components/run-controls/StoredModelOverridesField.js +38 -27
  249. package/dist/agents/components/run-controls/SurfaceSimulatorSelect.js +117 -69
  250. package/dist/agents/components/run-controls/panels/BackendTargetPanel.js +81 -35
  251. package/dist/agents/components/run-controls/panels/ClientMetricsPanel.js +65 -33
  252. package/dist/agents/components/run-controls/panels/ModelContextPanel.js +94 -46
  253. package/dist/agents/components/run-controls/panels/RequestStatsPanel.js +82 -53
  254. package/dist/agents/components/run-controls/panels/SessionStatsPanel.js +33 -9
  255. package/dist/agents/components/run-controls/panels/shared.js +10 -4
  256. package/dist/agents/components/send-to-agent/SendToAgentWindow.js +89 -57
  257. package/dist/agents/components/shared/AgentConversationColumn.js +135 -123
  258. package/dist/agents/components/shared/AgentHeader.js +47 -29
  259. package/dist/agents/components/shared/AgentHeaderMobile.js +173 -133
  260. package/dist/agents/components/shared/AgentModeController.js +58 -43
  261. package/dist/agents/components/shared/AgentNewRunButton.js +2 -1
  262. package/dist/agents/components/shared/AgentPlanningIndicator.js +2 -1
  263. package/dist/agents/components/shared/AgentReferenceCopyButton.js +2 -1
  264. package/dist/agents/components/shared/AgentSelectorIsland.js +26 -18
  265. package/dist/agents/components/shared/AutoInjectionSwitch.js +66 -55
  266. package/dist/agents/components/shared/DesktopFilterPanel.js +183 -140
  267. package/dist/agents/components/shared/OlderMessagesSentinel.js +2 -1
  268. package/dist/agents/components/shared/StreamProfilerOverlay.js +64 -5
  269. package/dist/agents/components/shared/transcript-audience.js +2 -1
  270. package/dist/agents/components/shell/AgentBuildSidebarExtras.js +14 -3
  271. package/dist/agents/components/shell/AgentRunSidebarMenu.js +82 -58
  272. package/dist/agents/components/smart/AgentRunWrapper.js +2 -1
  273. package/dist/agents/components/smart/AgentRunner.js +45 -40
  274. package/dist/agents/components/smart/CreateWithAiTabs.js +88 -73
  275. package/dist/agents/components/working-document/DocumentLinkPicker.js +74 -47
  276. package/dist/agents/components/working-document/ScratchpadQuickPanel.js +3 -2
  277. package/dist/agents/components/working-document/ScratchpadSwitcherMenu.js +58 -35
  278. package/dist/agents/components/working-document/WorkingDocumentAgentDiff.js +8 -4
  279. package/dist/agents/components/working-document/WorkingDocumentEditor.js +35 -34
  280. package/dist/agents/components/working-document/WorkingDocumentLatestVersionDiff.js +15 -5
  281. package/dist/agents/components/working-document/WorkingDocumentPanel.js +250 -174
  282. package/dist/agents/components/working-document/WorkingDocumentVersionHistory.js +82 -46
  283. package/dist/agents/components/working-document/WorkingDocumentViewControls.js +64 -52
  284. package/dist/agents/components/working-document/documents-workspace/DocumentsListRail.js +127 -106
  285. package/dist/agents/components/working-document/documents-workspace/DocumentsWorkspace.js +116 -103
  286. package/dist/agents/decision-answers/DecisionAnswers.js +164 -107
  287. package/dist/agents/image-roles/ImageRoleSelector.js +60 -50
  288. package/dist/agents/image-roles/ReferenceRoleCaption.js +5 -4
  289. package/dist/agents/message-flags/ExampleTurnsGroup.js +8 -1
  290. package/dist/agents/message-flags/MessageFlagToggles.js +72 -56
  291. package/dist/agents/message-flags/MessageFlagsPreview.js +35 -10
  292. package/dist/agents/message-flags/PrefillNote.js +5 -4
  293. package/dist/agents/message-flags/StoppedNote.js +8 -5
  294. package/dist/agents/prompt-preview/PromptPreviewContent.js +72 -34
  295. package/dist/agents/redux/execution-system/host-conversations/conversation-abilities.js +2 -1
  296. package/dist/agents/redux/execution-system/inbox/inbox.thunks.js +19 -10
  297. package/dist/agents/redux/execution-system/instance-ui-state/components/InstanceUIStateCore.js +430 -313
  298. package/dist/agents/redux/execution-system/instance-ui-state/components/InstanceUIStateList.js +120 -104
  299. package/dist/agents/redux/execution-system/instance-variable-values/instance-variable-values.persistence.d.ts +6 -0
  300. package/dist/agents/redux/execution-system/instance-variable-values/instance-variable-values.persistence.js +4 -2
  301. package/dist/agents/redux/execution-system/thunks/execute-instance.thunk.js +24 -8
  302. package/dist/agents/resources/ResourceChips.js +37 -34
  303. package/dist/agents/resources/ResourceDisplay.js +51 -32
  304. package/dist/agents/route/AgentHydratorServer.js +2 -1
  305. package/dist/agents/routing/ConfidentialToggle.js +8 -6
  306. package/dist/agents/runtime-reconnect/ServerOperationBanner.js +33 -28
  307. package/dist/agents/speech-script/SpeechScriptTranscriptView.js +20 -1
  308. package/dist/agents/ui-first-tools/ui/AgentCardShell.js +78 -67
  309. package/dist/agents/ui-first-tools/ui/ApprovalCard.js +136 -102
  310. package/dist/agents/ui-first-tools/ui/AskCard.js +383 -293
  311. package/dist/agents/ui-first-tools/ui/AskCardCountdown.js +10 -9
  312. package/dist/agents/ui-first-tools/ui/AskWizard.js +91 -70
  313. package/dist/agents/ui-first-tools/ui/BatchAskCard.js +2 -1
  314. package/dist/agents/ui-first-tools/ui/CredentialCaptureCard.js +54 -33
  315. package/dist/agents/ui-first-tools/ui/PendingAsksZone.js +66 -55
  316. package/dist/agents/ui-first-tools/ui/QuestionsAskForm.js +2 -1
  317. package/dist/agents/ui-first-tools/ui/lists/ListsHubView.js +112 -63
  318. package/dist/agents/ui-first-tools/ui/lists/TaskPanel.js +209 -140
  319. package/dist/agents/ui-first-tools/ui/lists/TaskPanelChip.js +7 -6
  320. package/dist/canvas/workspace/CanvasChatColumn.js +28 -17
  321. package/dist/canvas/workspace/CanvasPropertiesPanel.js +38 -32
  322. package/dist/canvas/workspace/ChatCanvasWorkspace.js +87 -53
  323. package/dist/canvas/workspace/ChatPanelTitleMenu.js +56 -44
  324. package/dist/canvas/workspace/ShellChatDock.js +71 -54
  325. package/dist/context-menu/types.d.ts +12 -6
  326. package/dist/cx-chat/components/ChatConversationSkeleton.js +35 -2
  327. package/dist/cx-chat/components/ChatHeaderControls.js +35 -23
  328. package/dist/cx-chat/components/ChatInstanceManager.js +3 -2
  329. package/dist/cx-chat/components/ChatMobileAdminToggles.js +16 -11
  330. package/dist/cx-chat/components/ChatMobileAgentName.js +13 -9
  331. package/dist/cx-chat/components/ChatMobileHeaderBar.js +25 -22
  332. package/dist/cx-chat/components/ChatPanelBackButton.js +2 -1
  333. package/dist/cx-chat/components/ChatSidebarClient.js +164 -135
  334. package/dist/cx-chat/components/ChatWelcomeClient.js +27 -17
  335. package/dist/cx-chat/components/ChatWelcomeServer.js +3 -2
  336. package/dist/cx-chat/components/ContextGaugeWidget.js +22 -13
  337. package/dist/cx-chat/components/SsrSidebarAgents.js +4 -3
  338. package/dist/cx-chat/components/SsrSidebarChats.js +159 -105
  339. package/dist/cx-chat/components/agent/AgentPickerSheet.js +16 -3
  340. package/dist/cx-chat/components/core/ChatConversationClient.js +47 -32
  341. package/dist/cx-chat/components/messages/MessageErrorBoundary.js +8 -1
  342. package/dist/cx-chat/components/messages/UserMessage.js +142 -116
  343. package/dist/cx-chat/components/sidebar/SidebarActions.js +24 -16
  344. package/dist/cx-chat/components/sidebar/SidebarUserFooter.js +43 -30
  345. package/dist/cx-chat/components/user-input/ConversationInput.js +157 -136
  346. package/dist/cx-chat/components/user-input/InpuControlButtons.js +18 -17
  347. package/dist/cx-chat/components/user-input/InputActionButtons.js +33 -28
  348. package/dist/cx-chat/components/user-input/StackedVariableInputs.js +79 -65
  349. package/dist/cx-chat/components/variable-inputs/CheckboxGroupInput.js +90 -63
  350. package/dist/cx-chat/components/variable-inputs/NumberInput.js +41 -30
  351. package/dist/cx-chat/components/variable-inputs/RadioGroupInput.js +64 -46
  352. package/dist/cx-chat/components/variable-inputs/SelectInput.js +32 -15
  353. package/dist/cx-chat/components/variable-inputs/TextareaInput.js +3 -2
  354. package/dist/cx-chat/components/variable-inputs/ToggleInput.js +28 -8
  355. package/dist/host/bare-host-chrome.js +2 -1
  356. package/dist/host/chrome.js +10 -9
  357. package/dist/host/configure.js +7 -1
  358. package/dist/host/conversation-hooks-react.d.ts +7 -0
  359. package/dist/host/conversation-hooks-react.js +15 -2
  360. package/dist/host/conversation-hooks.d.ts +10 -0
  361. package/dist/host/conversation-hooks.js +7 -0
  362. package/dist/host/defaults/memory-navigation.js +5 -4
  363. package/dist/host/defaults/resource-picker-menu.js +30 -25
  364. package/dist/host/defaults/setting-control-input.js +13 -10
  365. package/dist/host/defaults/window-panel.js +38 -17
  366. package/dist/host/defaults/workspace-gate.js +31 -20
  367. package/dist/host/navigation.js +2 -1
  368. package/dist/host/react.js +3 -2
  369. package/dist/host/ui-slots.d.ts +3 -2
  370. package/dist/mandates/RunFailureCard.js +27 -16
  371. package/dist/public-chat/components/AgentSelector.js +26 -26
  372. package/dist/public-chat/components/GuidedVariableInputs.js +282 -216
  373. package/dist/public-chat/components/PublicMessageOptionsMenu.js +36 -31
  374. package/dist/public-chat/components/PublicVariableInputs.js +79 -65
  375. package/dist/quick-actions/components/QuickChatSheet.js +83 -59
  376. package/dist/surfaces/components/chrome/PageIntelligenceSection.js +36 -22
  377. package/dist/surfaces/components/chrome/SurfaceAgentsHeaderButton.js +31 -21
  378. package/dist/surfaces/components/chrome/SurfaceAgentsPanelImpl.js +109 -64
  379. package/dist/surfaces/components/chrome/SurfaceConversationsSection.js +87 -41
  380. package/dist/surfaces/components/chrome/SurfaceMandatesSection.js +118 -75
  381. package/dist/surfaces/components/chrome/SurfaceRoleAgentButton.js +8 -5
  382. package/dist/surfaces/runtime/StaticSurfaceRuntimeProvider.js +2 -1
  383. package/dist/surfaces/runtime/SurfaceRuntimeContext.js +8 -7
  384. package/dist/surfaces/runtime/intelligence.js +2 -1
  385. package/dist/testing/chat-host-test-provider.js +2 -1
  386. package/dist/testing/render-hook.js +2 -2
  387. package/dist/tool-call-visualization/components/AgentWorkGroup.js +15 -11
  388. package/dist/tool-call-visualization/components/ArtifactResultBar.js +78 -51
  389. package/dist/tool-call-visualization/components/ChatResultColumn.js +2 -2
  390. package/dist/tool-call-visualization/components/LiveToolCallCard.js +2 -1
  391. package/dist/tool-call-visualization/components/ToolCallBatch.js +35 -29
  392. package/dist/tool-call-visualization/components/ToolCallVisualization.js +217 -200
  393. package/dist/tool-call-visualization/components/ToolConversationContext.js +3 -2
  394. package/dist/tool-call-visualization/components/ToolTabBodies.js +122 -70
  395. package/dist/tool-call-visualization/components/ToolUpdatesOverlay.js +68 -50
  396. package/dist/tool-call-visualization/components/agentWorkTurn.js +8 -8
  397. package/dist/tool-call-visualization/db-renderer/DbToolRenderer.js +2 -2
  398. package/dist/tool-call-visualization/db-renderer/DbToolRendererImpl.js +7 -6
  399. package/dist/tool-call-visualization/grouping/foldAgentWork.js +10 -3
  400. package/dist/tool-call-visualization/registry/GenericRenderer.js +68 -51
  401. package/dist/tool-call-visualization/registry/registry.js +62 -10
  402. package/dist/tool-call-visualization/renderers/_shared-entity/EmptyResultCard.js +9 -4
  403. package/dist/tool-call-visualization/renderers/_shared-entity/EntityCard.js +116 -85
  404. package/dist/tool-call-visualization/renderers/_shared-entity/EntityOpenActions.js +16 -9
  405. package/dist/tool-call-visualization/renderers/_shared-entity/PartPeekPopover.js +24 -18
  406. package/dist/tool-call-visualization/renderers/_shared-entity/ToolGlyph.js +2 -1
  407. package/dist/tool-call-visualization/renderers/_shared-entity/ToolResultCard.js +89 -65
  408. package/dist/tool-call-visualization/renderers/agent-call/AgentCallInline.js +71 -54
  409. package/dist/tool-call-visualization/renderers/agent-call/CollabCallCard.js +90 -54
  410. package/dist/tool-call-visualization/renderers/agent-call/ImageGenerationResult.js +39 -31
  411. package/dist/tool-call-visualization/renderers/ask/AskInline.js +20 -15
  412. package/dist/tool-call-visualization/renderers/ask-person/AskPersonInline.js +17 -8
  413. package/dist/tool-call-visualization/renderers/cloud-browser/CloudBrowserRunCard.js +89 -55
  414. package/dist/tool-call-visualization/renderers/ctx/ContextActionInline.js +4 -4
  415. package/dist/tool-call-visualization/renderers/ctx/CtxBatchInline.js +50 -18
  416. package/dist/tool-call-visualization/renderers/ctx/CtxGetInline.js +13 -5
  417. package/dist/tool-call-visualization/renderers/ctx/CtxItemCard.js +22 -13
  418. package/dist/tool-call-visualization/renderers/ctx/CtxPatchInline.js +25 -6
  419. package/dist/tool-call-visualization/renderers/dictionary/DictEntryList.js +37 -5
  420. package/dist/tool-call-visualization/renderers/dictionary/DictionaryInline.js +5 -4
  421. package/dist/tool-call-visualization/renderers/dictionary/DictionaryOverlay.js +18 -2
  422. package/dist/tool-call-visualization/renderers/fs/FsInline.js +73 -55
  423. package/dist/tool-call-visualization/renderers/news-api/NewsInline.js +90 -41
  424. package/dist/tool-call-visualization/renderers/news-api/NewsOverlay.js +152 -84
  425. package/dist/tool-call-visualization/renderers/random-wheel/RandomWheelInline.js +297 -180
  426. package/dist/tool-call-visualization/renderers/records/RecordsInline.js +7 -2
  427. package/dist/tool-call-visualization/renderers/research/ResearchInline.js +88 -45
  428. package/dist/tool-call-visualization/renderers/research/ResearchOverlay.js +102 -54
  429. package/dist/tool-call-visualization/renderers/research/SubagentReportBlock.js +95 -65
  430. package/dist/tool-call-visualization/renderers/scrape/ScrapeInline.js +170 -100
  431. package/dist/tool-call-visualization/renderers/scrape/ScrapeOverlay.js +109 -55
  432. package/dist/tool-call-visualization/renderers/search/SearchInline.js +297 -186
  433. package/dist/tool-call-visualization/renderers/search/SearchOverlay.js +240 -105
  434. package/dist/tool-call-visualization/renderers/shell/ShellInline.js +52 -33
  435. package/dist/tool-call-visualization/renderers/skill/SkillInline.js +44 -36
  436. package/dist/tool-call-visualization/renderers/sql/DbSchemaInline.js +33 -7
  437. package/dist/tool-call-visualization/renderers/sql/SqlInline.js +46 -14
  438. package/dist/tool-call-visualization/renderers/web/WebInline.js +4 -4
  439. package/dist/tool-call-visualization/renderers/web/WebOverlay.js +4 -4
  440. package/dist/tool-call-visualization/renderers/workbook/WorkbookGrid.js +25 -15
  441. package/dist/tool-call-visualization/renderers/workbook/WorkbookInline.js +24 -15
  442. package/dist/tool-call-visualization/renderers/workbook/WorkbookOverlay.js +25 -11
  443. package/dist/tool-call-visualization/renderers/working-document/PatchDiffInline.js +11 -10
  444. package/dist/tool-call-visualization/result-fields/EmptyResult.js +8 -6
  445. package/dist/tool-call-visualization/result-fields/KeyValueGrid.js +121 -78
  446. package/dist/tool-call-visualization/result-fields/KindValueNode.js +4 -3
  447. package/dist/tool-call-visualization/result-fields/ResultFile.js +28 -19
  448. package/dist/tool-call-visualization/result-fields/ResultJson.js +2 -2
  449. package/dist/tool-call-visualization/result-fields/ResultMarkdown.js +31 -24
  450. package/dist/tool-call-visualization/result-fields/ResultMedia.js +23 -19
  451. package/dist/tool-call-visualization/result-fields/ResultRecordRef.js +3 -2
  452. package/dist/tool-call-visualization/result-fields/ResultScalar.js +4 -4
  453. package/dist/tool-call-visualization/result-fields/ResultTable.js +144 -107
  454. package/dist/tool-call-visualization/result-fields/ResultValue.js +78 -61
  455. package/dist/tool-call-visualization/result-fields/ShortId.js +21 -13
  456. package/dist/tool-call-visualization/result-fields/ToolErrorCard.js +22 -17
  457. package/dist/tool-call-visualization/result-fields/ToolResultValue.js +3 -3
  458. package/dist/tool-call-visualization/result-fields/UrlChips.js +13 -11
  459. package/dist/tool-call-visualization/result-fields/document-presentation.js +3 -2
  460. package/dist/tool-call-visualization/surface-write/SurfaceWriteDiff.js +69 -55
  461. package/dist/tool-call-visualization/surface-write/SurfaceWriteStress.js +8 -1
  462. package/dist/tool-call-visualization/surface-write/withSurfaceWriteDiff.js +3 -2
  463. package/dist/tool-call-visualization/window-panel/ToolCallWindowPanel.js +140 -120
  464. package/dist/ui/AudioOutputBlockSkeleton.js +61 -21
  465. package/dist/ui/chat-panel/ChatPanel.js +61 -45
  466. package/dist/ui/checkbox.js +2 -1
  467. package/dist/ui/html-preview/HtmlPreviewBridge.js +3 -2
  468. package/dist/ui/lazy/SurfaceAgentsPanelImpl.js +5 -1
  469. package/dist/ui/markdown-stream/EnhancedChatMarkdown.js +141 -131
  470. package/dist/ui/markdown-stream/MarkdownStreamImpl.js +42 -42
  471. package/dist/ui/markdown-stream/StreamAwareChatMarkdown.js +19 -18
  472. package/dist/ui/markdown-stream/internal-handlers/AgentCallChildTrace.js +59 -56
  473. package/dist/ui/markdown-stream/internal-handlers/InlineAssistantError.js +2 -1
  474. package/dist/ui/markdown-stream/internal-handlers/InlineThinkingSlot.js +3 -3
  475. package/dist/ui/markdown-stream/internal-handlers/ToolHandlers.js +34 -31
  476. package/dist/ui/scroll-fade.js +5 -4
  477. package/dist/ui/tabs.js +2 -1
  478. package/dist/ui/usages/DriftSeverityBadge.js +9 -6
  479. package/dist/utils/connectors/marks.js +122 -59
  480. package/dist/utils/resource-picker/ResourcePickerSubViewHeader.js +66 -40
  481. package/dist/voice-agent/components/GoogleLiveSurface.js +127 -90
  482. package/dist/voice-agent/components/LiveVoiceDoor.js +10 -7
  483. package/dist/voice-agent/components/VoiceAgentSurface.js +114 -92
  484. package/dist/voice-agent/components/VoiceControlCluster.js +5 -1
  485. package/dist/voice-agent/components/VoiceDebugPanel.js +212 -107
  486. package/dist/voice-agent/components/VoiceEdgeRibbon.js +63 -60
  487. package/dist/voice-agent/components/VoiceErrorBanner.js +20 -17
  488. package/dist/voice-agent/components/VoiceMicButton.js +5 -4
  489. package/dist/voice-agent/components/VoiceMuteButton.js +5 -4
  490. package/dist/voice-agent/components/VoiceOrb.js +84 -81
  491. package/dist/voice-agent/components/VoiceStatusPill.js +12 -11
  492. package/dist/voice-agent/components/VoiceTranscriptStream.js +8 -5
  493. package/dist/voice-agent/components/VoiceTranscriptTurn.js +20 -17
  494. package/dist/voice-agent/components/playground/InstructionsEditor.js +34 -27
  495. package/dist/voice-agent/components/playground/PlaygroundSettingsSheet.js +27 -15
  496. package/dist/voice-agent/components/playground/ToolToggleList.js +34 -25
  497. package/dist/voice-agent/components/playground/VoicePicker.js +17 -10
  498. package/dist/voice-agent/relay/VoiceChatClient.js +3 -2
  499. package/dist/voice-agent/relay/VoiceRelayBar.js +60 -53
  500. package/dist/voice-agent/relay/VoiceRelayDock.js +26 -14
  501. package/dist/voice-agent/relay/VoiceRelayPanel.js +21 -10
  502. package/dist/window-panels/windows/agents/AgentAssistantMarkdownDebugWindow.js +74 -59
  503. package/dist/window-panels/windows/agents/AgentMemoryWindow.js +24 -20
  504. package/dist/window-panels/windows/agents/AgentPickerFrame.js +14 -13
  505. package/dist/window-panels/windows/agents/AgentRunHistoryWindow.js +151 -112
  506. package/dist/window-panels/windows/agents/AgentRunWindow.js +118 -78
  507. package/dist/window-panels/windows/agents/ChatHistoryWindow.js +49 -38
  508. package/dist/window-panels/windows/agents/LiveRunWindow.js +34 -31
  509. package/dist/window-panels/windows/agents/MessageAnalysisWindow.js +39 -34
  510. package/dist/window-panels/windows/agents/ObservationalMemoryWindow.js +189 -137
  511. package/dist/window-panels/windows/agents/RunControlsWindow.js +50 -49
  512. package/package.json +9 -9
@@ -1,4 +1,5 @@
1
1
  "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
2
3
  import { Badge } from "@ai-matrx/design-system/controls";
3
4
  import { createElement } from "react";
4
5
  import {
@@ -94,7 +95,7 @@ function TileIcon({
94
95
  function HybridTileStacked({ spec }) {
95
96
  const theme = tileTheme(spec);
96
97
  const isImage = spec.id === "image-legacy";
97
- return /* @__PURE__ */ React.createElement(
98
+ return /* @__PURE__ */ jsxs(
98
99
  "button",
99
100
  {
100
101
  type: "button",
@@ -103,15 +104,17 @@ function HybridTileStacked({ spec }) {
103
104
  TILE_SHELL,
104
105
  "w-[4.5rem] h-[4.5rem] flex flex-col",
105
106
  theme.bg
106
- )
107
- },
108
- /* @__PURE__ */ React.createElement("div", { className: "flex-1 flex items-center justify-center min-h-0 p-1.5" }, isImage ? /* @__PURE__ */ React.createElement("div", { className: "h-full w-full rounded-md bg-gradient-to-br from-blue-200/80 to-indigo-300/60 dark:from-blue-800/50 dark:to-indigo-900/40 flex items-center justify-center" }, /* @__PURE__ */ React.createElement(ImageIcon, { className: cn("h-5 w-5", theme.icon) })) : /* @__PURE__ */ React.createElement(TileIcon, { spec, className: "h-5 w-5" })),
109
- /* @__PURE__ */ React.createElement("div", { className: "px-1.5 py-1 border-t border-border/40 bg-background/30 dark:bg-black/10" }, /* @__PURE__ */ React.createElement("span", { className: "block text-[10px] leading-tight font-medium text-foreground text-center truncate" }, truncateLabel(spec.title, 12)))
107
+ ),
108
+ children: [
109
+ /* @__PURE__ */ jsx("div", { className: "flex-1 flex items-center justify-center min-h-0 p-1.5", children: isImage ? /* @__PURE__ */ jsx("div", { className: "h-full w-full rounded-md bg-gradient-to-br from-blue-200/80 to-indigo-300/60 dark:from-blue-800/50 dark:to-indigo-900/40 flex items-center justify-center", children: /* @__PURE__ */ jsx(ImageIcon, { className: cn("h-5 w-5", theme.icon) }) }) : /* @__PURE__ */ jsx(TileIcon, { spec, className: "h-5 w-5" }) }),
110
+ /* @__PURE__ */ jsx("div", { className: "px-1.5 py-1 border-t border-border/40 bg-background/30 dark:bg-black/10", children: /* @__PURE__ */ jsx("span", { className: "block text-[10px] leading-tight font-medium text-foreground text-center truncate", children: truncateLabel(spec.title, 12) }) })
111
+ ]
112
+ }
110
113
  );
111
114
  }
112
115
  function HybridTileHorizontal({ spec }) {
113
116
  const theme = tileTheme(spec);
114
- return /* @__PURE__ */ React.createElement(
117
+ return /* @__PURE__ */ jsxs(
115
118
  "button",
116
119
  {
117
120
  type: "button",
@@ -120,10 +123,15 @@ function HybridTileHorizontal({ spec }) {
120
123
  TILE_SHELL,
121
124
  "w-[7rem] h-11 flex items-center gap-2 px-2",
122
125
  theme.bg
123
- )
124
- },
125
- /* @__PURE__ */ React.createElement("span", { className: "flex h-7 w-7 shrink-0 items-center justify-center rounded-md bg-background/40 dark:bg-black/15" }, /* @__PURE__ */ React.createElement(TileIcon, { spec, className: "h-3.5 w-3.5" })),
126
- /* @__PURE__ */ React.createElement("span", { className: "min-w-0 flex-1 text-left" }, /* @__PURE__ */ React.createElement("span", { className: "block text-[9px] uppercase tracking-wide text-muted-foreground leading-none mb-0.5" }, spec.label), /* @__PURE__ */ React.createElement("span", { className: "block text-[10px] font-medium text-foreground leading-tight truncate" }, truncateLabel(spec.title, 16)))
126
+ ),
127
+ children: [
128
+ /* @__PURE__ */ jsx("span", { className: "flex h-7 w-7 shrink-0 items-center justify-center rounded-md bg-background/40 dark:bg-black/15", children: /* @__PURE__ */ jsx(TileIcon, { spec, className: "h-3.5 w-3.5" }) }),
129
+ /* @__PURE__ */ jsxs("span", { className: "min-w-0 flex-1 text-left", children: [
130
+ /* @__PURE__ */ jsx("span", { className: "block text-[9px] uppercase tracking-wide text-muted-foreground leading-none mb-0.5", children: spec.label }),
131
+ /* @__PURE__ */ jsx("span", { className: "block text-[10px] font-medium text-foreground leading-tight truncate", children: truncateLabel(spec.title, 16) })
132
+ ] })
133
+ ]
134
+ }
127
135
  );
128
136
  }
129
137
  function StackedRowsIcon({
@@ -131,7 +139,7 @@ function StackedRowsIcon({
131
139
  iconSlot,
132
140
  iconSize
133
141
  }) {
134
- return /* @__PURE__ */ React.createElement("span", { className: cn(iconSlot, "shrink-0 flex items-center justify-center") }, /* @__PURE__ */ React.createElement(TileIcon, { spec, className: iconSize }));
142
+ return /* @__PURE__ */ jsx("span", { className: cn(iconSlot, "shrink-0 flex items-center justify-center"), children: /* @__PURE__ */ jsx(TileIcon, { spec, className: iconSize }) });
135
143
  }
136
144
  function HybridTileStackedRowsBase({
137
145
  spec,
@@ -140,7 +148,7 @@ function HybridTileStackedRowsBase({
140
148
  surfaceClassName
141
149
  }) {
142
150
  const theme = tileTheme(spec);
143
- return /* @__PURE__ */ React.createElement(
151
+ return /* @__PURE__ */ jsxs(
144
152
  "button",
145
153
  {
146
154
  type: "button",
@@ -152,36 +160,41 @@ function HybridTileStackedRowsBase({
152
160
  config.body,
153
161
  config.rowGap,
154
162
  surfaceClassName ?? theme.bg
155
- )
156
- },
157
- /* @__PURE__ */ React.createElement("span", { className: "flex items-center gap-1 min-w-0 w-full" }, /* @__PURE__ */ React.createElement(
158
- StackedRowsIcon,
159
- {
160
- spec,
161
- iconSlot: config.iconSlot,
162
- iconSize: config.iconSize,
163
- iconInset: config.iconInset
164
- }
165
- ), /* @__PURE__ */ React.createElement(
166
- "span",
167
- {
168
- className: cn(
169
- config.typeClass,
170
- "min-w-0 flex-1 truncate whitespace-nowrap text-muted-foreground uppercase tracking-wide"
163
+ ),
164
+ children: [
165
+ /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1 min-w-0 w-full", children: [
166
+ /* @__PURE__ */ jsx(
167
+ StackedRowsIcon,
168
+ {
169
+ spec,
170
+ iconSlot: config.iconSlot,
171
+ iconSize: config.iconSize,
172
+ iconInset: config.iconInset
173
+ }
174
+ ),
175
+ /* @__PURE__ */ jsx(
176
+ "span",
177
+ {
178
+ className: cn(
179
+ config.typeClass,
180
+ "min-w-0 flex-1 truncate whitespace-nowrap text-muted-foreground uppercase tracking-wide"
181
+ ),
182
+ children: spec.label
183
+ }
184
+ )
185
+ ] }),
186
+ /* @__PURE__ */ jsx(
187
+ "span",
188
+ {
189
+ className: cn(
190
+ config.titleClass,
191
+ "block w-full min-w-0 truncate whitespace-nowrap text-foreground font-medium"
192
+ ),
193
+ children: spec.title
194
+ }
171
195
  )
172
- },
173
- spec.label
174
- )),
175
- /* @__PURE__ */ React.createElement(
176
- "span",
177
- {
178
- className: cn(
179
- config.titleClass,
180
- "block w-full min-w-0 truncate whitespace-nowrap text-foreground font-medium"
181
- )
182
- },
183
- spec.title
184
- )
196
+ ]
197
+ }
185
198
  );
186
199
  }
187
200
  const STACKED_ROWS_E = {
@@ -208,14 +221,14 @@ const STACKED_ROWS_E3 = {
208
221
  iconSize: "h-3.5 w-3.5"
209
222
  };
210
223
  function HybridTileStackedRows({ spec }) {
211
- return /* @__PURE__ */ React.createElement(HybridTileStackedRowsBase, { spec, config: STACKED_ROWS_E });
224
+ return /* @__PURE__ */ jsx(HybridTileStackedRowsBase, { spec, config: STACKED_ROWS_E });
212
225
  }
213
226
  function HybridTileStackedRowsTight({ spec }) {
214
- return /* @__PURE__ */ React.createElement(HybridTileStackedRowsBase, { spec, config: STACKED_ROWS_E2 });
227
+ return /* @__PURE__ */ jsx(HybridTileStackedRowsBase, { spec, config: STACKED_ROWS_E2 });
215
228
  }
216
229
  function HybridTileStackedRowsInset({ spec }) {
217
230
  const theme = resolveResourceAttachmentTileTheme(spec.id);
218
- return /* @__PURE__ */ React.createElement(
231
+ return /* @__PURE__ */ jsx(
219
232
  HybridTileStackedRowsBase,
220
233
  {
221
234
  spec,
@@ -227,7 +240,7 @@ function HybridTileStackedRowsInset({ spec }) {
227
240
  }
228
241
  function DemoResourceAttachmentTile({ spec }) {
229
242
  const Icon = TILE_ICONS[spec.id] ?? FileText;
230
- return /* @__PURE__ */ React.createElement(
243
+ return /* @__PURE__ */ jsx(
231
244
  ResourceAttachmentTile,
232
245
  {
233
246
  typeLabel: spec.label,
@@ -242,7 +255,7 @@ function E3StyleTile({
242
255
  shellClassName,
243
256
  surfaceMode = "flat"
244
257
  }) {
245
- return /* @__PURE__ */ React.createElement(
258
+ return /* @__PURE__ */ jsx(
246
259
  HybridTileStackedRowsBase,
247
260
  {
248
261
  spec,
@@ -341,7 +354,7 @@ const E3_STYLE_VARIANTS = [
341
354
  ];
342
355
  function HybridTileWide({ spec }) {
343
356
  const theme = tileTheme(spec);
344
- return /* @__PURE__ */ React.createElement(
357
+ return /* @__PURE__ */ jsxs(
345
358
  "button",
346
359
  {
347
360
  type: "button",
@@ -350,28 +363,36 @@ function HybridTileWide({ spec }) {
350
363
  TILE_SHELL,
351
364
  "w-[8.5rem] h-12 flex items-start gap-2 p-2 text-left",
352
365
  theme.bg
353
- )
354
- },
355
- /* @__PURE__ */ React.createElement(TileIcon, { spec, className: "h-4 w-4 mt-0.5" }),
356
- /* @__PURE__ */ React.createElement("span", { className: "min-w-0 flex-1" }, /* @__PURE__ */ React.createElement("span", { className: "block text-[9px] font-medium text-muted-foreground leading-none" }, spec.label), /* @__PURE__ */ React.createElement("span", { className: "block text-[11px] font-medium text-foreground leading-snug line-clamp-2 mt-1" }, truncateLabel(spec.title, 22)))
366
+ ),
367
+ children: [
368
+ /* @__PURE__ */ jsx(TileIcon, { spec, className: "h-4 w-4 mt-0.5" }),
369
+ /* @__PURE__ */ jsxs("span", { className: "min-w-0 flex-1", children: [
370
+ /* @__PURE__ */ jsx("span", { className: "block text-[9px] font-medium text-muted-foreground leading-none", children: spec.label }),
371
+ /* @__PURE__ */ jsx("span", { className: "block text-[11px] font-medium text-foreground leading-snug line-clamp-2 mt-1", children: truncateLabel(spec.title, 22) })
372
+ ] })
373
+ ]
374
+ }
357
375
  );
358
376
  }
359
377
  function HybridTileCaption({ spec }) {
360
378
  const theme = tileTheme(spec);
361
379
  const isImage = spec.id === "image-legacy";
362
- return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-center gap-1 w-[4rem] shrink-0" }, /* @__PURE__ */ React.createElement(
363
- "button",
364
- {
365
- type: "button",
366
- title: spec.title,
367
- className: cn(
368
- TILE_SHELL,
369
- "w-16 h-16 flex items-center justify-center p-1.5",
370
- theme.bg
371
- )
372
- },
373
- isImage ? /* @__PURE__ */ React.createElement("div", { className: "h-full w-full rounded-md bg-gradient-to-br from-blue-200/80 to-indigo-300/60 dark:from-blue-800/50 dark:to-indigo-900/40 flex items-center justify-center" }, /* @__PURE__ */ React.createElement(ImageIcon, { className: cn("h-6 w-6", theme.icon) })) : /* @__PURE__ */ React.createElement(TileIcon, { spec, className: "h-6 w-6" })
374
- ), /* @__PURE__ */ React.createElement("span", { className: "w-full text-[10px] text-foreground font-medium text-center leading-tight line-clamp-2 px-0.5" }, truncateLabel(spec.title, 18)));
380
+ return /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center gap-1 w-[4rem] shrink-0", children: [
381
+ /* @__PURE__ */ jsx(
382
+ "button",
383
+ {
384
+ type: "button",
385
+ title: spec.title,
386
+ className: cn(
387
+ TILE_SHELL,
388
+ "w-16 h-16 flex items-center justify-center p-1.5",
389
+ theme.bg
390
+ ),
391
+ children: isImage ? /* @__PURE__ */ jsx("div", { className: "h-full w-full rounded-md bg-gradient-to-br from-blue-200/80 to-indigo-300/60 dark:from-blue-800/50 dark:to-indigo-900/40 flex items-center justify-center", children: /* @__PURE__ */ jsx(ImageIcon, { className: cn("h-6 w-6", theme.icon) }) }) : /* @__PURE__ */ jsx(TileIcon, { spec, className: "h-6 w-6" })
392
+ }
393
+ ),
394
+ /* @__PURE__ */ jsx("span", { className: "w-full text-[10px] text-foreground font-medium text-center leading-tight line-clamp-2 px-0.5", children: truncateLabel(spec.title, 18) })
395
+ ] });
375
396
  }
376
397
  const HYBRID_VARIANTS = [
377
398
  {
@@ -415,78 +436,139 @@ function SampleBubble({
415
436
  description,
416
437
  children
417
438
  }) {
418
- return /* @__PURE__ */ React.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("h3", { className: "text-sm font-semibold text-foreground" }, title), /* @__PURE__ */ React.createElement("p", { className: "text-xs text-muted-foreground mt-0.5" }, description)), /* @__PURE__ */ React.createElement("div", { className: "bg-muted border border-border rounded-lg px-2 py-2" }, /* @__PURE__ */ React.createElement("div", { className: "space-y-1.5" }, children, /* @__PURE__ */ React.createElement("p", { className: "text-xs text-foreground whitespace-pre-wrap pt-1" }, "Can you review these attachments and summarize next steps?"))));
439
+ return /* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
440
+ /* @__PURE__ */ jsxs("div", { children: [
441
+ /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: title }),
442
+ /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: description })
443
+ ] }),
444
+ /* @__PURE__ */ jsx("div", { className: "bg-muted border border-border rounded-lg px-2 py-2", children: /* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
445
+ children,
446
+ /* @__PURE__ */ jsx("p", { className: "text-xs text-foreground whitespace-pre-wrap pt-1", children: "Can you review these attachments and summarize next steps?" })
447
+ ] }) })
448
+ ] });
419
449
  }
420
450
  function UserMessageHybridTileSamples({
421
451
  specs
422
452
  }) {
423
- return /* @__PURE__ */ React.createElement("section", { className: "space-y-4" }, /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("h2", { className: "text-base font-semibold text-foreground border-b border-border pb-2" }, "Hybrid tile samples"), /* @__PURE__ */ React.createElement("p", { className: "text-xs text-muted-foreground mt-2 max-w-3xl" }, "Input-bar tints + old-chat", " ", /* @__PURE__ */ React.createElement("code", { className: "text-[10px]" }, "rounded-lg"), " shape. Every variant uses the same border, radius, and shadow shell \u2014 only layout differs. Slightly larger than legacy 40px tiles, with room for a short label.")), /* @__PURE__ */ React.createElement("div", { className: "space-y-3" }, /* @__PURE__ */ React.createElement("div", { className: "flex flex-wrap items-center gap-2" }, /* @__PURE__ */ React.createElement("h3", { className: "text-sm font-semibold text-foreground" }, "S8 \xB7 Adaptive \u2014 ship candidate"), /* @__PURE__ */ React.createElement(Badge, { tone: "primary" }, "Light 3D + dark glass")), /* @__PURE__ */ React.createElement("p", { className: "text-xs text-muted-foreground max-w-3xl" }, "Combines S5 (3D raised) in light mode and S7 (glass ring + gradient) in dark mode. Icons sit directly on the tile \u2014 no inset plate. Wired into ", /* @__PURE__ */ React.createElement("code", { className: "text-[10px]" }, "AgentUserMessage"), " via", " ", /* @__PURE__ */ React.createElement("code", { className: "text-[10px]" }, "ResourceAttachmentTile"), "."), /* @__PURE__ */ React.createElement(
424
- SampleBubble,
425
- {
426
- title: "Production tile",
427
- description: "Same component used in live user messages."
428
- },
429
- /* @__PURE__ */ React.createElement("div", { className: "flex flex-wrap gap-1.5" }, specs.map((spec) => /* @__PURE__ */ React.createElement(DemoResourceAttachmentTile, { key: `s8-${spec.id}`, spec })))
430
- )), /* @__PURE__ */ React.createElement("div", { className: "space-y-3" }, /* @__PURE__ */ React.createElement("div", { className: "flex flex-wrap items-center gap-2" }, /* @__PURE__ */ React.createElement("h3", { className: "text-sm font-semibold text-foreground" }, "E3 \xB7 Style polish (exploration)")), /* @__PURE__ */ React.createElement("p", { className: "text-xs text-muted-foreground max-w-3xl" }, "Historical S0\u2013S7 chrome on the E3 layout. Ship candidate is S8 above (adaptive shell + transparent icons)."), /* @__PURE__ */ React.createElement("div", { className: "grid gap-4 md:grid-cols-2 xl:grid-cols-2" }, E3_STYLE_VARIANTS.map((variant) => /* @__PURE__ */ React.createElement(
431
- SampleBubble,
432
- {
433
- key: variant.id,
434
- title: variant.title,
435
- description: variant.description
436
- },
437
- /* @__PURE__ */ React.createElement("div", { className: "flex flex-wrap gap-1.5" }, specs.map((spec) => {
438
- const theme = tileTheme(spec);
439
- const shell = "tintedBorder" in variant && variant.tintedBorder ? cn(variant.shellClassName, theme.borderTint) : variant.shellClassName;
440
- return /* @__PURE__ */ React.createElement(
441
- E3StyleTile,
453
+ return /* @__PURE__ */ jsxs("section", { className: "space-y-4", children: [
454
+ /* @__PURE__ */ jsxs("div", { children: [
455
+ /* @__PURE__ */ jsx("h2", { className: "text-base font-semibold text-foreground border-b border-border pb-2", children: "Hybrid tile samples" }),
456
+ /* @__PURE__ */ jsxs("p", { className: "text-xs text-muted-foreground mt-2 max-w-3xl", children: [
457
+ "Input-bar tints + old-chat",
458
+ " ",
459
+ /* @__PURE__ */ jsx("code", { className: "text-[10px]", children: "rounded-lg" }),
460
+ " shape. Every variant uses the same border, radius, and shadow shell \u2014 only layout differs. Slightly larger than legacy 40px tiles, with room for a short label."
461
+ ] })
462
+ ] }),
463
+ /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
464
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
465
+ /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: "S8 \xB7 Adaptive \u2014 ship candidate" }),
466
+ /* @__PURE__ */ jsx(Badge, { tone: "primary", children: "Light 3D + dark glass" })
467
+ ] }),
468
+ /* @__PURE__ */ jsxs("p", { className: "text-xs text-muted-foreground max-w-3xl", children: [
469
+ "Combines S5 (3D raised) in light mode and S7 (glass ring + gradient) in dark mode. Icons sit directly on the tile \u2014 no inset plate. Wired into ",
470
+ /* @__PURE__ */ jsx("code", { className: "text-[10px]", children: "AgentUserMessage" }),
471
+ " via",
472
+ " ",
473
+ /* @__PURE__ */ jsx("code", { className: "text-[10px]", children: "ResourceAttachmentTile" }),
474
+ "."
475
+ ] }),
476
+ /* @__PURE__ */ jsx(
477
+ SampleBubble,
442
478
  {
443
- key: `${variant.id}-${spec.id}`,
444
- spec,
445
- shellClassName: shell,
446
- surfaceMode: variant.surfaceMode
479
+ title: "Production tile",
480
+ description: "Same component used in live user messages.",
481
+ children: /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1.5", children: specs.map((spec) => /* @__PURE__ */ jsx(DemoResourceAttachmentTile, { spec }, `s8-${spec.id}`)) })
447
482
  }
448
- );
449
- }))
450
- )))), /* @__PURE__ */ React.createElement("div", { className: "space-y-3" }, /* @__PURE__ */ React.createElement("h3", { className: "text-sm font-semibold text-foreground" }, "E refinements \u2014 layout pick (done)"), /* @__PURE__ */ React.createElement("p", { className: "text-xs text-muted-foreground max-w-3xl" }, "Same layout: icon + type, then title. No wrap \u2014 truncate only. Title left edge aligns with icon left edge."), /* @__PURE__ */ React.createElement("div", { className: "grid gap-4 lg:grid-cols-3" }, /* @__PURE__ */ React.createElement(
451
- SampleBubble,
452
- {
453
- title: "E \xB7 Default",
454
- description: "px-1.5 py-1, bare icon h-3.5 in h-4 slot."
455
- },
456
- /* @__PURE__ */ React.createElement("div", { className: "flex flex-wrap gap-1.5" }, specs.map((spec) => /* @__PURE__ */ React.createElement(
457
- HybridTileStackedRows,
458
- {
459
- key: `e-default-${spec.id}`,
460
- spec
461
- }
462
- )))
463
- ), /* @__PURE__ */ React.createElement(
464
- SampleBubble,
465
- {
466
- title: "E2 \xB7 Tighter",
467
- description: "Less padding, icon bumped to h-4, minimal gap."
468
- },
469
- /* @__PURE__ */ React.createElement("div", { className: "flex flex-wrap gap-1.5" }, specs.map((spec) => /* @__PURE__ */ React.createElement(
470
- HybridTileStackedRowsTight,
471
- {
472
- key: `e-tight-${spec.id}`,
473
- spec
474
- }
475
- )))
476
- ), /* @__PURE__ */ React.createElement(
477
- SampleBubble,
478
- {
479
- title: "E3 \xB7 Adaptive inset layout",
480
- description: "Same as S8 \u2014 adaptive chrome, transparent icon, truncate-only rows."
481
- },
482
- /* @__PURE__ */ React.createElement("div", { className: "flex flex-wrap gap-1.5" }, specs.map((spec) => /* @__PURE__ */ React.createElement(
483
- HybridTileStackedRowsInset,
484
- {
485
- key: `e-inset-${spec.id}`,
486
- spec
487
- }
488
- )))
489
- ))), /* @__PURE__ */ React.createElement("div", { className: "grid gap-6 md:grid-cols-2" }, HYBRID_VARIANTS.map(({ id, title, description, Tile, gap }) => /* @__PURE__ */ React.createElement(SampleBubble, { key: id, title, description }, /* @__PURE__ */ React.createElement("div", { className: cn("flex flex-wrap items-start", gap) }, specs.map((spec) => /* @__PURE__ */ React.createElement(Tile, { key: `${id}-${spec.id}`, spec })))))), /* @__PURE__ */ React.createElement("div", { className: "rounded-lg border border-dashed border-border bg-card/50 px-3 py-2" }, /* @__PURE__ */ React.createElement("p", { className: "text-[11px] text-muted-foreground" }, /* @__PURE__ */ React.createElement("span", { className: "font-medium text-foreground" }, "Shared rules:"), " ", /* @__PURE__ */ React.createElement("code", { className: "text-[10px]" }, "rounded-lg"), ",", " ", /* @__PURE__ */ React.createElement("code", { className: "text-[10px]" }, "border-border/60"), ", input-bar", " ", /* @__PURE__ */ React.createElement("code", { className: "text-[10px]" }, "bg-*-100"), " tints, no rainbow borders. Images use an inner thumb area; other types use the type icon at the same tile size.")));
483
+ )
484
+ ] }),
485
+ /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
486
+ /* @__PURE__ */ jsx("div", { className: "flex flex-wrap items-center gap-2", children: /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: "E3 \xB7 Style polish (exploration)" }) }),
487
+ /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground max-w-3xl", children: "Historical S0\u2013S7 chrome on the E3 layout. Ship candidate is S8 above (adaptive shell + transparent icons)." }),
488
+ /* @__PURE__ */ jsx("div", { className: "grid gap-4 md:grid-cols-2 xl:grid-cols-2", children: E3_STYLE_VARIANTS.map((variant) => /* @__PURE__ */ jsx(
489
+ SampleBubble,
490
+ {
491
+ title: variant.title,
492
+ description: variant.description,
493
+ children: /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1.5", children: specs.map((spec) => {
494
+ const theme = tileTheme(spec);
495
+ const shell = "tintedBorder" in variant && variant.tintedBorder ? cn(variant.shellClassName, theme.borderTint) : variant.shellClassName;
496
+ return /* @__PURE__ */ jsx(
497
+ E3StyleTile,
498
+ {
499
+ spec,
500
+ shellClassName: shell,
501
+ surfaceMode: variant.surfaceMode
502
+ },
503
+ `${variant.id}-${spec.id}`
504
+ );
505
+ }) })
506
+ },
507
+ variant.id
508
+ )) })
509
+ ] }),
510
+ /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
511
+ /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: "E refinements \u2014 layout pick (done)" }),
512
+ /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground max-w-3xl", children: "Same layout: icon + type, then title. No wrap \u2014 truncate only. Title left edge aligns with icon left edge." }),
513
+ /* @__PURE__ */ jsxs("div", { className: "grid gap-4 lg:grid-cols-3", children: [
514
+ /* @__PURE__ */ jsx(
515
+ SampleBubble,
516
+ {
517
+ title: "E \xB7 Default",
518
+ description: "px-1.5 py-1, bare icon h-3.5 in h-4 slot.",
519
+ children: /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1.5", children: specs.map((spec) => /* @__PURE__ */ jsx(
520
+ HybridTileStackedRows,
521
+ {
522
+ spec
523
+ },
524
+ `e-default-${spec.id}`
525
+ )) })
526
+ }
527
+ ),
528
+ /* @__PURE__ */ jsx(
529
+ SampleBubble,
530
+ {
531
+ title: "E2 \xB7 Tighter",
532
+ description: "Less padding, icon bumped to h-4, minimal gap.",
533
+ children: /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1.5", children: specs.map((spec) => /* @__PURE__ */ jsx(
534
+ HybridTileStackedRowsTight,
535
+ {
536
+ spec
537
+ },
538
+ `e-tight-${spec.id}`
539
+ )) })
540
+ }
541
+ ),
542
+ /* @__PURE__ */ jsx(
543
+ SampleBubble,
544
+ {
545
+ title: "E3 \xB7 Adaptive inset layout",
546
+ description: "Same as S8 \u2014 adaptive chrome, transparent icon, truncate-only rows.",
547
+ children: /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1.5", children: specs.map((spec) => /* @__PURE__ */ jsx(
548
+ HybridTileStackedRowsInset,
549
+ {
550
+ spec
551
+ },
552
+ `e-inset-${spec.id}`
553
+ )) })
554
+ }
555
+ )
556
+ ] })
557
+ ] }),
558
+ /* @__PURE__ */ jsx("div", { className: "grid gap-6 md:grid-cols-2", children: HYBRID_VARIANTS.map(({ id, title, description, Tile, gap }) => /* @__PURE__ */ jsx(SampleBubble, { title, description, children: /* @__PURE__ */ jsx("div", { className: cn("flex flex-wrap items-start", gap), children: specs.map((spec) => /* @__PURE__ */ jsx(Tile, { spec }, `${id}-${spec.id}`)) }) }, id)) }),
559
+ /* @__PURE__ */ jsx("div", { className: "rounded-lg border border-dashed border-border bg-card/50 px-3 py-2", children: /* @__PURE__ */ jsxs("p", { className: "text-[11px] text-muted-foreground", children: [
560
+ /* @__PURE__ */ jsx("span", { className: "font-medium text-foreground", children: "Shared rules:" }),
561
+ " ",
562
+ /* @__PURE__ */ jsx("code", { className: "text-[10px]", children: "rounded-lg" }),
563
+ ",",
564
+ " ",
565
+ /* @__PURE__ */ jsx("code", { className: "text-[10px]", children: "border-border/60" }),
566
+ ", input-bar",
567
+ " ",
568
+ /* @__PURE__ */ jsx("code", { className: "text-[10px]", children: "bg-*-100" }),
569
+ " tints, no rainbow borders. Images use an inner thumb area; other types use the type icon at the same tile size."
570
+ ] }) })
571
+ ] });
490
572
  }
491
573
  export {
492
574
  UserMessageHybridTileSamples
@@ -1,7 +1,8 @@
1
1
  "use client";
2
+ import { jsx } from "react/jsx-runtime";
2
3
  import { AgentSettingsCore } from "../../../host/ui-slots.js";
3
4
  function AgentModelPanel({ agentId }) {
4
- return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col h-full min-h-0" }, /* @__PURE__ */ React.createElement("div", { className: "flex-1 min-h-0 overflow-hidden px-4" }, /* @__PURE__ */ React.createElement(AgentSettingsCore, { agentId })));
5
+ return /* @__PURE__ */ jsx("div", { className: "flex flex-col h-full min-h-0", children: /* @__PURE__ */ jsx("div", { className: "flex-1 min-h-0 overflow-hidden px-4", children: /* @__PURE__ */ jsx(AgentSettingsCore, { agentId }) }) });
5
6
  }
6
7
  export {
7
8
  AgentModelPanel
@@ -1,4 +1,5 @@
1
1
  "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
2
3
  import { AiModelRef } from "../../../host/ui-slots.js";
3
4
  import { cn } from "@ai-matrx/design-system";
4
5
  function isRecord(value) {
@@ -35,25 +36,27 @@ function ModelTierIdentityList({
35
36
  }) {
36
37
  const identities = readModelTierIdentities(value);
37
38
  if (identities.length === 0) {
38
- return /* @__PURE__ */ React.createElement("span", { className: "text-muted-foreground" }, "No model tiers");
39
+ return /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: "No model tiers" });
39
40
  }
40
- return /* @__PURE__ */ React.createElement("span", { className: cn("flex flex-col gap-1.5", className) }, identities.map((identity) => /* @__PURE__ */ React.createElement(
41
+ return /* @__PURE__ */ jsx("span", { className: cn("flex flex-col gap-1.5", className), children: identities.map((identity) => /* @__PURE__ */ jsxs(
41
42
  "span",
42
43
  {
43
- key: identity.key,
44
- className: "grid min-w-0 grid-cols-[5rem_minmax(0,1fr)] items-start gap-2"
44
+ className: "grid min-w-0 grid-cols-[5rem_minmax(0,1fr)] items-start gap-2",
45
+ children: [
46
+ /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: identity.role }),
47
+ /* @__PURE__ */ jsx(
48
+ AiModelRef,
49
+ {
50
+ modelId: identity.modelId,
51
+ showId,
52
+ showIcon: false,
53
+ disableNavigation
54
+ }
55
+ )
56
+ ]
45
57
  },
46
- /* @__PURE__ */ React.createElement("span", { className: "text-muted-foreground" }, identity.role),
47
- /* @__PURE__ */ React.createElement(
48
- AiModelRef,
49
- {
50
- modelId: identity.modelId,
51
- showId,
52
- showIcon: false,
53
- disableNavigation
54
- }
55
- )
56
- )));
58
+ identity.key
59
+ )) });
57
60
  }
58
61
  export {
59
62
  ModelTierIdentityList,
@@ -1,4 +1,5 @@
1
1
  "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
2
3
  import { useCallback, useEffect, useRef, useState } from "react";
3
4
  import { motion, AnimatePresence } from "motion/react";
4
5
  import { X, ImageIcon } from "lucide-react";
@@ -43,59 +44,69 @@ function ImageArrivalPeek({
43
44
  };
44
45
  }, [autoHideMs, startTimer]);
45
46
  const mimeLabel = block.mimeType?.split("/")[1] ?? null;
46
- return /* @__PURE__ */ React.createElement(AnimatePresence, { onExitComplete: () => onDismiss(peekId) }, visible && /* @__PURE__ */ React.createElement(
47
+ return /* @__PURE__ */ jsx(AnimatePresence, { onExitComplete: () => onDismiss(peekId), children: visible && /* @__PURE__ */ jsxs(
47
48
  motion.div,
48
49
  {
49
- key: peekId,
50
50
  initial: { opacity: 0, x: 40, scale: 0.96 },
51
51
  animate: { opacity: 1, x: 0, scale: 1 },
52
52
  exit: { opacity: 0, x: 40, scale: 0.94 },
53
53
  transition: { type: "spring", stiffness: 340, damping: 30 },
54
54
  className: "relative w-56 rounded-xl border bg-card shadow-lg overflow-hidden",
55
55
  onMouseEnter: pauseTimer,
56
- onMouseLeave: resumeTimer
57
- },
58
- /* @__PURE__ */ React.createElement(ProgressBar, { durationMs: autoHideMs, paused: false }),
59
- /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-1.5 px-2.5 pt-2 pb-1" }, /* @__PURE__ */ React.createElement(ImageIcon, { className: "w-3.5 h-3.5 text-primary flex-shrink-0" }), /* @__PURE__ */ React.createElement("span", { className: "text-xs font-medium text-foreground flex-1 leading-none" }, "New image"), mimeLabel && /* @__PURE__ */ React.createElement("span", { className: "text-[10px] font-mono text-muted-foreground" }, mimeLabel), /* @__PURE__ */ React.createElement(Button, { variant: "quiet", icon: /* @__PURE__ */ React.createElement(X, null), onClick: dismiss, "aria-label": "Dismiss", className: "ml-auto" })),
60
- /* @__PURE__ */ React.createElement(
61
- "div",
62
- {
63
- className: "relative mx-2 mb-2 rounded-lg overflow-hidden bg-muted/40",
64
- style: { height: 110 }
65
- },
66
- /* @__PURE__ */ React.createElement(
67
- UnifiedImageBlockRenderer,
68
- {
69
- block,
70
- variant: "compact",
71
- onCompactClick: (src) => {
72
- dismiss();
73
- onImageClick(src);
56
+ onMouseLeave: resumeTimer,
57
+ children: [
58
+ /* @__PURE__ */ jsx(ProgressBar, { durationMs: autoHideMs, paused: false }),
59
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 px-2.5 pt-2 pb-1", children: [
60
+ /* @__PURE__ */ jsx(ImageIcon, { className: "w-3.5 h-3.5 text-primary flex-shrink-0" }),
61
+ /* @__PURE__ */ jsx("span", { className: "text-xs font-medium text-foreground flex-1 leading-none", children: "New image" }),
62
+ mimeLabel && /* @__PURE__ */ jsx("span", { className: "text-[10px] font-mono text-muted-foreground", children: mimeLabel }),
63
+ /* @__PURE__ */ jsx(Button, { variant: "quiet", icon: /* @__PURE__ */ jsx(X, {}), onClick: dismiss, "aria-label": "Dismiss", className: "ml-auto" })
64
+ ] }),
65
+ /* @__PURE__ */ jsx(
66
+ "div",
67
+ {
68
+ className: "relative mx-2 mb-2 rounded-lg overflow-hidden bg-muted/40",
69
+ style: { height: 110 },
70
+ children: /* @__PURE__ */ jsx(
71
+ UnifiedImageBlockRenderer,
72
+ {
73
+ block,
74
+ variant: "compact",
75
+ onCompactClick: (src) => {
76
+ dismiss();
77
+ onImageClick(src);
78
+ }
79
+ }
80
+ )
74
81
  }
75
- }
76
- )
77
- )
78
- ));
82
+ )
83
+ ]
84
+ },
85
+ peekId
86
+ ) });
79
87
  }
80
88
  function ProgressBar({
81
89
  durationMs,
82
90
  paused
83
91
  }) {
84
- return /* @__PURE__ */ React.createElement("div", { className: "absolute top-0 left-0 right-0 h-0.5 bg-muted overflow-hidden" }, /* @__PURE__ */ React.createElement(
85
- "div",
86
- {
87
- className: "h-full bg-primary origin-left",
88
- style: {
89
- animation: `shrink ${durationMs}ms linear forwards`,
90
- animationPlayState: paused ? "paused" : "running"
92
+ return /* @__PURE__ */ jsxs("div", { className: "absolute top-0 left-0 right-0 h-0.5 bg-muted overflow-hidden", children: [
93
+ /* @__PURE__ */ jsx(
94
+ "div",
95
+ {
96
+ className: "h-full bg-primary origin-left",
97
+ style: {
98
+ animation: `shrink ${durationMs}ms linear forwards`,
99
+ animationPlayState: paused ? "paused" : "running"
100
+ }
91
101
  }
92
- }
93
- ), /* @__PURE__ */ React.createElement("style", null, `
102
+ ),
103
+ /* @__PURE__ */ jsx("style", { children: `
94
104
  @keyframes shrink {
95
105
  from { transform: scaleX(1); }
96
106
  to { transform: scaleX(0); }
97
107
  }
98
- `));
108
+ ` })
109
+ ] });
99
110
  }
100
111
  export {
101
112
  ImageArrivalPeek