@tutti-os/agent-gui 0.0.217 → 0.0.218

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 (65) hide show
  1. package/dist/{AgentRichTextReadonly-WZHUIARR.js → AgentRichTextReadonly-NBYQHR6U.js} +5 -5
  2. package/dist/agent-conversation/index.js +6 -6
  3. package/dist/agent-gui.js +13 -13
  4. package/dist/agent-message-center/index.js +5 -5
  5. package/dist/app/renderer/assets/icons/agent-vinyl-player-chassis.png +0 -0
  6. package/dist/app/renderer/assets/icons/agent-vinyl-tonearm.png +0 -0
  7. package/dist/app/renderer/assets/icons/agent-vinyls/claude-vinyl.png +0 -0
  8. package/dist/app/renderer/assets/icons/agent-vinyls/codex-vinyl.png +0 -0
  9. package/dist/app/renderer/assets/icons/agent-vinyls/cursor-vinyl.png +0 -0
  10. package/dist/app/renderer/assets/icons/agent-vinyls/openclaw-vinyl.png +0 -0
  11. package/dist/app/renderer/assets/icons/agent-vinyls/opencode-vinyl.png +0 -0
  12. package/dist/app/renderer/assets/icons/agent-vinyls/tutti-vinyl.png +0 -0
  13. package/dist/app/renderer/assets/icons/agents/agent-colorful.png +0 -0
  14. package/dist/app/renderer/assets/icons/agents/claude-rounded.png +0 -0
  15. package/dist/app/renderer/assets/icons/agents/codex-rounded.png +0 -0
  16. package/dist/app/renderer/assets/icons/agents/cursor-colorful.png +0 -0
  17. package/dist/app/renderer/assets/icons/agents/cursor-rounded.png +0 -0
  18. package/dist/app/renderer/assets/icons/agents/gemini-rounded.png +0 -0
  19. package/dist/app/renderer/assets/icons/agents/manage-agent-tutti.png +0 -0
  20. package/dist/app/renderer/assets/icons/agents/openclaw-rounded.png +0 -0
  21. package/dist/app/renderer/assets/icons/agents/opencode-rounded.png +0 -0
  22. package/dist/app/renderer/assets/icons/agents/provider-rail-claude-code-colorful.png +0 -0
  23. package/dist/app/renderer/assets/icons/agents/provider-rail-codex-colorful.png +0 -0
  24. package/dist/app/renderer/assets/icons/agents/provider-rail-opencode-colorful.png +0 -0
  25. package/dist/app/renderer/assets/icons/agents/provider-rail-tutti.png +0 -0
  26. package/dist/app/renderer/assets/icons/user-avatar-placeholder.png +0 -0
  27. package/dist/{chunk-M6HTOCQK.js → chunk-3X5VDG6T.js} +2 -2
  28. package/dist/{chunk-O4QFGCLU.js → chunk-7V5XYXKB.js} +4 -4
  29. package/dist/chunk-BCBB4HOV.js +56 -0
  30. package/dist/{chunk-NXQGAXIE.js → chunk-F6J3LJXK.js} +2 -2
  31. package/dist/{chunk-44OCOBJS.js → chunk-KRITI65C.js} +4 -4
  32. package/dist/{chunk-FS7EMOVD.js → chunk-KZIW5CCW.js} +2 -2
  33. package/dist/chunk-OB7GGK6S.js +44534 -0
  34. package/dist/{chunk-TKECUCUW.js.map → chunk-OB7GGK6S.js.map} +1 -1
  35. package/dist/{chunk-G7DS23D4.js → chunk-PPA2OB2H.js} +2 -2
  36. package/dist/{chunk-GDLM6FLK.js → chunk-PZWBLTYH.js} +156 -38
  37. package/dist/chunk-PZWBLTYH.js.map +1 -0
  38. package/dist/chunk-SEHJINGH.js +150 -0
  39. package/dist/{chunk-JQOQETPN.js → chunk-SWO67UWQ.js} +2 -2
  40. package/dist/{chunk-G2KRK7Z5.js → chunk-UC2QN7FK.js} +2 -2
  41. package/dist/{chunk-PPAV2TB4.js → chunk-Z35E22WS.js} +2 -2
  42. package/dist/context-mention-palette/index.js +6 -6
  43. package/dist/dock-icons.js +2 -2
  44. package/dist/index.js +13 -13
  45. package/dist/mention-search.js +4 -4
  46. package/dist/provider-icons.js +1 -1
  47. package/dist/workbench/contribution.js +3 -3
  48. package/dist/workbench/index.js +3 -3
  49. package/package.json +17 -17
  50. package/dist/chunk-GDLM6FLK.js.map +0 -1
  51. package/dist/chunk-N2M4B3G3.js +0 -56
  52. package/dist/chunk-QNE2ZPPV.js +0 -150
  53. package/dist/chunk-TKECUCUW.js +0 -44529
  54. /package/dist/{AgentRichTextReadonly-WZHUIARR.js.map → AgentRichTextReadonly-NBYQHR6U.js.map} +0 -0
  55. /package/dist/{chunk-M6HTOCQK.js.map → chunk-3X5VDG6T.js.map} +0 -0
  56. /package/dist/{chunk-O4QFGCLU.js.map → chunk-7V5XYXKB.js.map} +0 -0
  57. /package/dist/{chunk-N2M4B3G3.js.map → chunk-BCBB4HOV.js.map} +0 -0
  58. /package/dist/{chunk-NXQGAXIE.js.map → chunk-F6J3LJXK.js.map} +0 -0
  59. /package/dist/{chunk-44OCOBJS.js.map → chunk-KRITI65C.js.map} +0 -0
  60. /package/dist/{chunk-FS7EMOVD.js.map → chunk-KZIW5CCW.js.map} +0 -0
  61. /package/dist/{chunk-G7DS23D4.js.map → chunk-PPA2OB2H.js.map} +0 -0
  62. /package/dist/{chunk-QNE2ZPPV.js.map → chunk-SEHJINGH.js.map} +0 -0
  63. /package/dist/{chunk-JQOQETPN.js.map → chunk-SWO67UWQ.js.map} +0 -0
  64. /package/dist/{chunk-G2KRK7Z5.js.map → chunk-UC2QN7FK.js.map} +0 -0
  65. /package/dist/{chunk-PPAV2TB4.js.map → chunk-Z35E22WS.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createProviderIconUrlMap
3
- } from "./chunk-QNE2ZPPV.js";
3
+ } from "./chunk-SEHJINGH.js";
4
4
  import {
5
5
  migratedAgentGUIProviderIdentityCatalog
6
6
  } from "./chunk-O433KXLK.js";
@@ -20,4 +20,4 @@ export {
20
20
  agentGuiDockIconUrls,
21
21
  agentGuiDockIconUrl
22
22
  };
23
- //# sourceMappingURL=chunk-G7DS23D4.js.map
23
+ //# sourceMappingURL=chunk-PPA2OB2H.js.map
@@ -2,7 +2,7 @@ import {
2
2
  AgentRichTextReadonly,
3
3
  promptForProviderSkills,
4
4
  skillTriggerForPrefix
5
- } from "./chunk-NXQGAXIE.js";
5
+ } from "./chunk-F6J3LJXK.js";
6
6
  import {
7
7
  AgentGUIConversation_styles_default,
8
8
  AgentMessageMarkdown,
@@ -18,7 +18,7 @@ import {
18
18
  resolveWorkspaceFileLinkAction,
19
19
  resolveWorkspaceFilePathCandidate,
20
20
  resolveWorkspaceLinkAction
21
- } from "./chunk-PPAV2TB4.js";
21
+ } from "./chunk-Z35E22WS.js";
22
22
  import {
23
23
  cn
24
24
  } from "./chunk-LQMIEH4C.js";
@@ -37,7 +37,7 @@ import {
37
37
  agentPromptFileBlocks,
38
38
  agentPromptPastedTextBlocks,
39
39
  materializeAgentComposerFileMentions
40
- } from "./chunk-JQOQETPN.js";
40
+ } from "./chunk-SWO67UWQ.js";
41
41
  import {
42
42
  extractImageGenerationPreview,
43
43
  isImageGenerationToolCall,
@@ -8971,7 +8971,7 @@ function fileNameFromPath(path) {
8971
8971
  }
8972
8972
 
8973
8973
  // shared/agentConversation/components/tool-renderers/file-diff/AgentMonacoDiffViewer.tsx
8974
- import { lazy, Suspense } from "react";
8974
+ import { Component, createRef } from "react";
8975
8975
 
8976
8976
  // app/renderer/components/icons/AtomIcon.tsx
8977
8977
  import {
@@ -9136,12 +9136,13 @@ var AtomIcon = forwardRef4(
9136
9136
  );
9137
9137
  AtomIcon.displayName = "AtomIcon";
9138
9138
 
9139
+ // shared/agentConversation/components/tool-renderers/file-diff/loadMonaco.ts
9140
+ function loadMonaco() {
9141
+ return import("monaco-editor");
9142
+ }
9143
+
9139
9144
  // shared/agentConversation/components/tool-renderers/file-diff/AgentMonacoDiffViewer.tsx
9140
9145
  import { jsx as jsx20, jsxs as jsxs12 } from "react/jsx-runtime";
9141
- var MonacoDiffEditor = lazy(async () => {
9142
- const module = await import("@monaco-editor/react");
9143
- return { default: module.DiffEditor };
9144
- });
9145
9146
  function AgentMonacoDiffViewer({
9146
9147
  path,
9147
9148
  oldValue,
@@ -9171,42 +9172,159 @@ function AgentMonacoDiffViewer({
9171
9172
  }
9172
9173
  ) : null,
9173
9174
  /* @__PURE__ */ jsx20("div", { className: "h-[220px] bg-[var(--background-panel)]", children: /* @__PURE__ */ jsx20(
9174
- Suspense,
9175
+ MonacoDiffEditorSurface,
9175
9176
  {
9176
- fallback: /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-1.5 px-3 py-2.5 text-[11px] text-[var(--text-secondary)]", children: [
9177
- /* @__PURE__ */ jsx20(
9178
- AtomIcon,
9179
- {
9180
- size: 14,
9181
- active: true,
9182
- "aria-hidden": "true",
9183
- className: "shrink-0"
9184
- }
9185
- ),
9186
- /* @__PURE__ */ jsx20("span", { children: translate("agentHost.agentTool.details.loadingDiff") })
9187
- ] }),
9188
- children: /* @__PURE__ */ jsx20(
9189
- MonacoDiffEditor,
9190
- {
9191
- original: oldValue,
9192
- modified: newValue,
9193
- language: languageForPath2(path),
9194
- options: {
9195
- readOnly: true,
9196
- renderSideBySide: true,
9197
- minimap: { enabled: false },
9198
- scrollBeyondLastLine: false,
9199
- wordWrap: "on",
9200
- automaticLayout: true
9201
- }
9202
- }
9203
- )
9177
+ oldValue,
9178
+ newValue,
9179
+ language: languageForPath2(path)
9204
9180
  }
9205
9181
  ) })
9206
9182
  ]
9207
9183
  }
9208
9184
  );
9209
9185
  }
9186
+ var MonacoDiffEditorSurface = class extends Component {
9187
+ containerRef = createRef();
9188
+ resources = null;
9189
+ loadGeneration = 0;
9190
+ state = {
9191
+ loadError: null,
9192
+ loading: true
9193
+ };
9194
+ componentDidMount() {
9195
+ const loadGeneration = ++this.loadGeneration;
9196
+ void loadMonaco().then((monaco) => {
9197
+ const container = this.containerRef.current;
9198
+ if (loadGeneration !== this.loadGeneration || !container) {
9199
+ return;
9200
+ }
9201
+ this.resources = createMonacoDiffResources(
9202
+ monaco,
9203
+ container,
9204
+ this.props
9205
+ );
9206
+ this.setState({ loading: false });
9207
+ }).catch((error) => {
9208
+ if (loadGeneration === this.loadGeneration) {
9209
+ this.setState({
9210
+ loadError: error instanceof Error ? error : new Error(String(error))
9211
+ });
9212
+ }
9213
+ });
9214
+ }
9215
+ componentDidUpdate() {
9216
+ if (this.resources) {
9217
+ updateMonacoDiffResources(this.resources, this.props);
9218
+ }
9219
+ }
9220
+ componentWillUnmount() {
9221
+ this.loadGeneration += 1;
9222
+ const resources = this.resources;
9223
+ this.resources = null;
9224
+ if (resources) {
9225
+ disposeMonacoDiffResources(resources);
9226
+ }
9227
+ }
9228
+ render() {
9229
+ if (this.state.loadError) {
9230
+ throw this.state.loadError;
9231
+ }
9232
+ return /* @__PURE__ */ jsxs12("div", { className: "relative h-full w-full", children: [
9233
+ /* @__PURE__ */ jsx20("div", { ref: this.containerRef, className: "h-full w-full" }),
9234
+ this.state.loading ? /* @__PURE__ */ jsxs12("div", { className: "absolute inset-0 flex items-start gap-1.5 px-3 py-2.5 text-[11px] text-[var(--text-secondary)]", children: [
9235
+ /* @__PURE__ */ jsx20(
9236
+ AtomIcon,
9237
+ {
9238
+ size: 14,
9239
+ active: true,
9240
+ "aria-hidden": "true",
9241
+ className: "shrink-0"
9242
+ }
9243
+ ),
9244
+ /* @__PURE__ */ jsx20("span", { children: translate("agentHost.agentTool.details.loadingDiff") })
9245
+ ] }) : null
9246
+ ] });
9247
+ }
9248
+ };
9249
+ function createMonacoDiffResources(monaco, container, content) {
9250
+ const originalModel = monaco.editor.createModel(
9251
+ content.oldValue,
9252
+ content.language
9253
+ );
9254
+ const modifiedModel = monaco.editor.createModel(
9255
+ content.newValue,
9256
+ content.language
9257
+ );
9258
+ let editor = null;
9259
+ try {
9260
+ monaco.editor.setTheme("light");
9261
+ editor = monaco.editor.createDiffEditor(container, {
9262
+ readOnly: true,
9263
+ renderSideBySide: true,
9264
+ minimap: { enabled: false },
9265
+ scrollBeyondLastLine: false,
9266
+ wordWrap: "on",
9267
+ automaticLayout: true
9268
+ });
9269
+ editor.setModel({
9270
+ original: originalModel,
9271
+ modified: modifiedModel
9272
+ });
9273
+ return { monaco, editor, originalModel, modifiedModel };
9274
+ } catch (error) {
9275
+ if (editor) {
9276
+ try {
9277
+ editor.setModel(null);
9278
+ } finally {
9279
+ try {
9280
+ editor.dispose();
9281
+ } finally {
9282
+ disposeMonacoModels(originalModel, modifiedModel);
9283
+ }
9284
+ }
9285
+ } else {
9286
+ disposeMonacoModels(originalModel, modifiedModel);
9287
+ }
9288
+ throw error;
9289
+ }
9290
+ }
9291
+ function updateMonacoDiffResources(resources, content) {
9292
+ if (resources.originalModel.getValue() !== content.oldValue) {
9293
+ resources.originalModel.setValue(content.oldValue);
9294
+ }
9295
+ if (resources.modifiedModel.getValue() !== content.newValue) {
9296
+ resources.modifiedModel.setValue(content.newValue);
9297
+ }
9298
+ const currentLanguage = resources.originalModel.getLanguageId();
9299
+ if (currentLanguage !== content.language) {
9300
+ resources.monaco.editor.setModelLanguage(
9301
+ resources.originalModel,
9302
+ content.language
9303
+ );
9304
+ resources.monaco.editor.setModelLanguage(
9305
+ resources.modifiedModel,
9306
+ content.language
9307
+ );
9308
+ }
9309
+ }
9310
+ function disposeMonacoDiffResources(resources) {
9311
+ try {
9312
+ resources.editor.setModel(null);
9313
+ } finally {
9314
+ try {
9315
+ resources.editor.dispose();
9316
+ } finally {
9317
+ disposeMonacoModels(resources.originalModel, resources.modifiedModel);
9318
+ }
9319
+ }
9320
+ }
9321
+ function disposeMonacoModels(originalModel, modifiedModel) {
9322
+ try {
9323
+ originalModel.dispose();
9324
+ } finally {
9325
+ modifiedModel.dispose();
9326
+ }
9327
+ }
9210
9328
  function languageForPath2(path) {
9211
9329
  const extension = path?.split(".").pop()?.toLowerCase();
9212
9330
  switch (extension) {
@@ -15824,4 +15942,4 @@ export {
15824
15942
  AgentConversationFlow,
15825
15943
  useProjectedAgentConversation
15826
15944
  };
15827
- //# sourceMappingURL=chunk-GDLM6FLK.js.map
15945
+ //# sourceMappingURL=chunk-PZWBLTYH.js.map