@tutti-os/agent-gui 0.0.106 → 0.0.107

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.
@@ -60,7 +60,7 @@ import {
60
60
  toLocalShortDateTime,
61
61
  updateAgentComposerDraft,
62
62
  useProjectedAgentConversation
63
- } from "./chunk-IR2CL2X2.js";
63
+ } from "./chunk-F7Q7QK42.js";
64
64
  import {
65
65
  agentRichTextContentToPromptText,
66
66
  createAgentRichTextInputExtensions,
@@ -12841,6 +12841,7 @@ var styles = {
12841
12841
  composerQueuedPromptActions: "agent-gui-node__composer-queued-prompt-actions",
12842
12842
  composerReferenceTrigger: "agent-gui-node__composer-reference-trigger",
12843
12843
  composerSendButton: "agent-gui-node__composer-send-button",
12844
+ composerStopButton: "agent-gui-node__composer-stop-button",
12844
12845
  composerSelect: "agent-gui-node__composer-select",
12845
12846
  composerTextarea: "agent-gui-node__composer-textarea",
12846
12847
  composerToggle: "agent-gui-node__composer-toggle",
@@ -13104,7 +13105,7 @@ function AgentProbeUsageFreshness({
13104
13105
  type: "button",
13105
13106
  "data-testid": testId,
13106
13107
  "data-state": isLoading ? "loading" : didFail ? "failed" : "idle",
13107
- className: `nodrag inline-flex shrink-0 cursor-pointer items-center gap-1 rounded-[5px] px-1 py-0.5 text-[11px] leading-4 transition-colors hover:bg-[var(--transparency-hover)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--border-focus)] disabled:cursor-default disabled:opacity-70 disabled:hover:bg-transparent [-webkit-app-region:no-drag] ${stateClassName}`,
13108
+ className: `nodrag inline-flex shrink-0 cursor-pointer items-center gap-1 rounded-[5px] px-1 py-0.5 text-[11px] leading-4 transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--border-focus)] disabled:cursor-default disabled:opacity-70 [-webkit-app-region:no-drag] ${stateClassName}`,
13108
13109
  onClick: handleClick,
13109
13110
  disabled: isLoading || disabled,
13110
13111
  "aria-label": labels.refreshAria,
@@ -13452,6 +13453,7 @@ function AgentGUIConfigMenu({
13452
13453
  slashStatusUsageCapturedAtUnixMs,
13453
13454
  slashStatusUsageDidFail,
13454
13455
  slashStatusUsageAttempted,
13456
+ provider,
13455
13457
  providerAuthAccountLabel,
13456
13458
  onAgentConfigMenuOpen,
13457
13459
  onAgentUsageRefresh,
@@ -13460,6 +13462,9 @@ function AgentGUIConfigMenu({
13460
13462
  onOpenAgentSettings
13461
13463
  }) {
13462
13464
  const [open, setOpen] = useState9(false);
13465
+ const providerFlatIconUrl = resolveAgentGuiSessionProviderFlatIconUrl(
13466
+ provider ?? void 0
13467
+ );
13463
13468
  return /* @__PURE__ */ jsxs8(
13464
13469
  Popover,
13465
13470
  {
@@ -13489,10 +13494,23 @@ function AgentGUIConfigMenu({
13489
13494
  align: "end",
13490
13495
  className: "w-[300px] max-w-[calc(100vw-32px)] gap-3 p-1 text-xs",
13491
13496
  "data-testid": "agent-gui-config-menu",
13492
- children: /* @__PURE__ */ jsxs8("div", { className: "flex min-w-0 flex-col gap-3", children: [
13497
+ children: /* @__PURE__ */ jsxs8("div", { className: "flex min-w-0 flex-col gap-1", children: [
13493
13498
  providerScopedActionsVisible && providerAuthAccountLabel ? /* @__PURE__ */ jsxs8(Fragment2, { children: [
13494
13499
  /* @__PURE__ */ jsxs8("div", { className: "flex min-w-0 flex-col gap-2 p-2", children: [
13495
- /* @__PURE__ */ jsx15("span", { className: "text-[13px] font-semibold leading-4", children: labels.slashStatusAccount }),
13500
+ /* @__PURE__ */ jsxs8("div", { className: "flex min-w-0 items-center gap-2", children: [
13501
+ providerFlatIconUrl ? /* @__PURE__ */ jsx15(
13502
+ "span",
13503
+ {
13504
+ "aria-hidden": "true",
13505
+ className: "size-4 shrink-0 bg-current",
13506
+ style: {
13507
+ mask: `url("${providerFlatIconUrl}") center / contain no-repeat`,
13508
+ WebkitMask: `url("${providerFlatIconUrl}") center / contain no-repeat`
13509
+ }
13510
+ }
13511
+ ) : null,
13512
+ /* @__PURE__ */ jsx15("span", { className: "text-[13px] font-semibold leading-4", children: labels.slashStatusAccount })
13513
+ ] }),
13496
13514
  /* @__PURE__ */ jsx15("span", { className: "text-[13px] leading-5 text-[var(--text-secondary)]", children: providerAuthAccountLabel })
13497
13515
  ] }),
13498
13516
  slashStatusLimits.length > 0 || slashStatusUsageAttempted || slashStatusLimitsLoading ? /* @__PURE__ */ jsx15("div", { className: "px-2", children: /* @__PURE__ */ jsx15("span", { className: "block h-px bg-[var(--border-1)]" }) }) : null
@@ -16482,6 +16500,20 @@ function useComposerLayout({
16482
16500
  isHeroLayout,
16483
16501
  paletteDraftPrompt
16484
16502
  ]);
16503
+ const composerStyle = useMemo20(
16504
+ () => isHeroLayout ? void 0 : {
16505
+ // The dock keeps only the collapsed 56px input row in flow; a
16506
+ // growing draft overhangs upward past the composer's top edge.
16507
+ // Floating panels anchored to that edge (queued prompts, the
16508
+ // interactive prompt) read this var to stay above the grown input
16509
+ // instead of being covered by it.
16510
+ "--agent-gui-composer-input-overflow": `${Math.max(
16511
+ 0,
16512
+ dockComposerInputHeight - DOCK_COMPOSER_INPUT_MIN_HEIGHT
16513
+ )}px`
16514
+ },
16515
+ [dockComposerInputHeight, isHeroLayout]
16516
+ );
16485
16517
  const inputShellStyle = useMemo20(
16486
16518
  () => showFileMentionPalette || showFloatingCommandMenu ? { zIndex: COMPOSER_PALETTE_Z_INDEX } : void 0,
16487
16519
  [showFileMentionPalette, showFloatingCommandMenu]
@@ -16507,6 +16539,7 @@ function useComposerLayout({
16507
16539
  return {
16508
16540
  activePromptTip,
16509
16541
  activePromptTipText,
16542
+ composerStyle,
16510
16543
  inputShellStyle,
16511
16544
  promptInputAreaStyle,
16512
16545
  promptTipStyle,
@@ -18792,7 +18825,7 @@ function useComposerPresentation(input) {
18792
18825
  "button",
18793
18826
  {
18794
18827
  type: "button",
18795
- className: "relative inline-flex size-7 shrink-0 items-center justify-center rounded-full border border-transparent bg-transparent p-0 text-[var(--text-primary)] transition-[color,opacity] duration-150 hover:bg-transparent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:color-mix(in_srgb,var(--text-primary)_34%,transparent)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--background-panel)] active:bg-transparent disabled:cursor-not-allowed disabled:opacity-45",
18828
+ className: `${AgentGUINode_styles_default.composerStopButton} relative inline-flex size-7 shrink-0 items-center justify-center rounded-full border border-transparent bg-transparent p-0 text-[var(--text-primary)] transition-[color,opacity] duration-150 hover:bg-transparent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:color-mix(in_srgb,var(--text-primary)_34%,transparent)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--background-panel)] active:bg-transparent disabled:cursor-not-allowed disabled:opacity-45`,
18796
18829
  disabled: isInterrupting,
18797
18830
  "aria-label": isInterrupting ? labels.stopping : labels.stop,
18798
18831
  title: isInterrupting ? labels.stopping : labels.stop,
@@ -19356,36 +19389,45 @@ function AgentQueuedPromptPanel({
19356
19389
  );
19357
19390
  }) }) : null
19358
19391
  ] }) }),
19359
- /* @__PURE__ */ jsxs17("div", { className: AgentGUINode_styles_default.composerQueuedPromptActions, children: [
19360
- /* @__PURE__ */ jsx24(
19361
- CanvasNodeGhostIconButton,
19362
- {
19363
- "aria-label": labels.sendQueuedPromptNext,
19364
- disabled: isDraining,
19365
- onClick: () => onSendQueuedPromptNext(queuedPrompt.id),
19366
- children: /* @__PURE__ */ jsx24(CanvasNodeGuideLinedIcon, { "aria-hidden": "true" })
19367
- }
19368
- ),
19369
- /* @__PURE__ */ jsx24(
19370
- CanvasNodeGhostIconButton,
19371
- {
19372
- "aria-label": labels.deleteQueuedPrompt,
19373
- disabled: isDraining,
19374
- onClick: () => onRemoveQueuedPrompt(queuedPrompt.id),
19375
- children: /* @__PURE__ */ jsx24(CanvasNodeTrashLinedIcon, { "aria-hidden": "true" })
19376
- }
19377
- ),
19378
- /* @__PURE__ */ jsxs17(DropdownMenu2, { children: [
19379
- /* @__PURE__ */ jsx24(DropdownMenuTrigger2, { asChild: true, children: /* @__PURE__ */ jsx24(
19392
+ /* @__PURE__ */ jsx24("div", { className: AgentGUINode_styles_default.composerQueuedPromptActions, children: /* @__PURE__ */ jsxs17(TooltipProvider, { delayDuration: 200, children: [
19393
+ /* @__PURE__ */ jsxs17(Tooltip, { children: [
19394
+ /* @__PURE__ */ jsx24(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx24(
19395
+ CanvasNodeGhostIconButton,
19396
+ {
19397
+ "aria-label": labels.sendQueuedPromptNext,
19398
+ disabled: isDraining,
19399
+ onClick: () => onSendQueuedPromptNext(queuedPrompt.id),
19400
+ children: /* @__PURE__ */ jsx24(CanvasNodeGuideLinedIcon, { "aria-hidden": "true" })
19401
+ }
19402
+ ) }),
19403
+ /* @__PURE__ */ jsx24(TooltipContent, { children: labels.sendQueuedPromptNext })
19404
+ ] }),
19405
+ /* @__PURE__ */ jsxs17(Tooltip, { children: [
19406
+ /* @__PURE__ */ jsx24(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx24(
19380
19407
  CanvasNodeGhostIconButton,
19381
19408
  {
19382
- "aria-label": labels.queuedPromptMoreActions,
19409
+ "aria-label": labels.deleteQueuedPrompt,
19383
19410
  disabled: isDraining,
19384
- stopsEventPropagation: false,
19385
- onClick: (event) => event.stopPropagation(),
19386
- children: /* @__PURE__ */ jsx24(CanvasNodeMoreLinedIcon, { "aria-hidden": "true" })
19411
+ onClick: () => onRemoveQueuedPrompt(queuedPrompt.id),
19412
+ children: /* @__PURE__ */ jsx24(CanvasNodeTrashLinedIcon, { "aria-hidden": "true" })
19387
19413
  }
19388
19414
  ) }),
19415
+ /* @__PURE__ */ jsx24(TooltipContent, { children: labels.deleteQueuedPrompt })
19416
+ ] }),
19417
+ /* @__PURE__ */ jsxs17(DropdownMenu2, { children: [
19418
+ /* @__PURE__ */ jsxs17(Tooltip, { children: [
19419
+ /* @__PURE__ */ jsx24(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx24(DropdownMenuTrigger2, { asChild: true, children: /* @__PURE__ */ jsx24(
19420
+ CanvasNodeGhostIconButton,
19421
+ {
19422
+ "aria-label": labels.queuedPromptMoreActions,
19423
+ disabled: isDraining,
19424
+ stopsEventPropagation: false,
19425
+ onClick: (event) => event.stopPropagation(),
19426
+ children: /* @__PURE__ */ jsx24(CanvasNodeMoreLinedIcon, { "aria-hidden": "true" })
19427
+ }
19428
+ ) }) }),
19429
+ /* @__PURE__ */ jsx24(TooltipContent, { children: labels.queuedPromptMoreActions })
19430
+ ] }),
19389
19431
  /* @__PURE__ */ jsx24(
19390
19432
  DropdownMenuContent2,
19391
19433
  {
@@ -19412,7 +19454,7 @@ function AgentQueuedPromptPanel({
19412
19454
  }
19413
19455
  )
19414
19456
  ] })
19415
- ] })
19457
+ ] }) })
19416
19458
  ]
19417
19459
  },
19418
19460
  queuedPrompt.id
@@ -23457,6 +23499,7 @@ function AgentComposerView(input) {
23457
23499
  const {
23458
23500
  activePromptTip,
23459
23501
  activePromptTipText,
23502
+ composerStyle,
23460
23503
  inputShellStyle,
23461
23504
  promptInputAreaStyle,
23462
23505
  showEdgeGlow,
@@ -23481,6 +23524,7 @@ function AgentComposerView(input) {
23481
23524
  ref: input.composerRef,
23482
23525
  className: composerClassName,
23483
23526
  "data-layout": layoutMode,
23527
+ style: composerStyle,
23484
23528
  onSubmit: submit,
23485
23529
  children: [
23486
23530
  fileDropOverlay,
@@ -32731,6 +32775,7 @@ function AgentGUINodeView({
32731
32775
  slashStatusUsageCapturedAtUnixMs,
32732
32776
  slashStatusUsageDidFail,
32733
32777
  slashStatusUsageAttempted,
32778
+ provider: effectiveRailConfigProvider,
32734
32779
  providerAuthAccountLabel: effectiveProviderAuthAccountLabel,
32735
32780
  onAgentConfigMenuOpen,
32736
32781
  onAgentUsageRefresh,
@@ -34726,4 +34771,4 @@ export {
34726
34771
  resolveAgentGUIAgentTarget,
34727
34772
  AgentGUI
34728
34773
  };
34729
- //# sourceMappingURL=chunk-4HSLSSPJ.js.map
34774
+ //# sourceMappingURL=chunk-ZWY32ZKZ.js.map