@molecule/app-ide-react 1.6.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +70 -4
- package/dist/command-metadata.d.ts.map +1 -1
- package/dist/command-metadata.js +9 -2
- package/dist/command-metadata.js.map +1 -1
- package/dist/components/ChatPanel.d.ts +14 -2
- package/dist/components/ChatPanel.d.ts.map +1 -1
- package/dist/components/ChatPanel.js +443 -169
- package/dist/components/ChatPanel.js.map +1 -1
- package/dist/components/EditorPanel.d.ts +1 -1
- package/dist/components/EditorPanel.d.ts.map +1 -1
- package/dist/components/EditorPanel.js +6 -1
- package/dist/components/EditorPanel.js.map +1 -1
- package/dist/components/FileExplorer.d.ts +1 -1
- package/dist/components/FileExplorer.d.ts.map +1 -1
- package/dist/components/FileExplorer.js +2 -2
- package/dist/components/FileExplorer.js.map +1 -1
- package/dist/components/FileExplorerContextMenu.d.ts +6 -1
- package/dist/components/FileExplorerContextMenu.d.ts.map +1 -1
- package/dist/components/FileExplorerContextMenu.js +19 -7
- package/dist/components/FileExplorerContextMenu.js.map +1 -1
- package/dist/components/SearchPanel.d.ts +1 -1
- package/dist/components/SearchPanel.d.ts.map +1 -1
- package/dist/components/SearchPanel.js +9 -6
- package/dist/components/SearchPanel.js.map +1 -1
- package/dist/components/ShareModal.d.ts +13 -1
- package/dist/components/ShareModal.d.ts.map +1 -1
- package/dist/components/ShareModal.js +2 -2
- package/dist/components/ShareModal.js.map +1 -1
- package/dist/components/ToolCallCard.d.ts.map +1 -1
- package/dist/components/ToolCallCard.js +6 -3
- package/dist/components/ToolCallCard.js.map +1 -1
- package/dist/types.d.ts +36 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@ AUTO-GENERATED — DO NOT EDIT THIS FILE.
|
|
|
3
3
|
Generated by `mlcl sync-docs` from the package's src/index.ts JSDoc + mlcl/registry.json.
|
|
4
4
|
Edits here are overwritten on the next commit (molecule's pre-commit hook regenerates).
|
|
5
5
|
To change this document, edit the module-level JSDoc in src/index.ts.
|
|
6
|
-
Generated: 2026-08-
|
|
6
|
+
Generated: 2026-08-28T09:55:58.055Z
|
|
7
7
|
-->
|
|
8
8
|
|
|
9
9
|
# @molecule/app-ide-react
|
|
@@ -270,9 +270,20 @@ interface ChatPanelProps {
|
|
|
270
270
|
* that user's profile (e.g. molecule.dev's profile modal). Receives the clicked
|
|
271
271
|
* user's {@link ChatUserIdentity}. Omit it (the default) to render the avatars
|
|
272
272
|
* non-interactive (static image/icon, exactly as before). Only real user
|
|
273
|
-
* avatars are clickable — the molecule glyph on auto-sent messages is not
|
|
273
|
+
* avatars are clickable — the molecule glyph on auto-sent messages is not, and
|
|
274
|
+
* in a multi-user conversation only the SIGNED-IN user's own avatars are
|
|
275
|
+
* (hosts open the *own*-profile editor from this, so a teammate's avatar must
|
|
276
|
+
* not fire it — see {@link currentUserId}).
|
|
274
277
|
*/
|
|
275
278
|
onProfileClick?: (user: ChatUserIdentity) => void
|
|
279
|
+
/**
|
|
280
|
+
* The signed-in user's id, used to tell their OWN messages from a teammate's
|
|
281
|
+
* (a message's persisted `author.id`). Gates avatar clickability: an authored
|
|
282
|
+
* message fires {@link onProfileClick} only when its author IS the signed-in
|
|
283
|
+
* user. Omit in a solo host — author-less messages (the local echo, legacy
|
|
284
|
+
* rows) are always treated as the signed-in user's own.
|
|
285
|
+
*/
|
|
286
|
+
currentUserId?: string
|
|
276
287
|
/** Called when the server signals (via the `ready_to_build` stream event) that discovery is complete and the sandbox should boot. */
|
|
277
288
|
onReadyToBuild?: () => void
|
|
278
289
|
/**
|
|
@@ -357,7 +368,14 @@ interface ChatPanelProps {
|
|
|
357
368
|
* invokes this callback (the host opens its own custom-provider management
|
|
358
369
|
* surface). Omit to hide the row — the shared package stays host-agnostic.
|
|
359
370
|
*/
|
|
360
|
-
onManageCustomModels?: (
|
|
371
|
+
onManageCustomModels?: (context?: {
|
|
372
|
+
/**
|
|
373
|
+
* The mode a "Use this model" action should target — the `/model` picker's
|
|
374
|
+
* scoped mode when it has one, else the LIVE conversation mode (discovery
|
|
375
|
+
* runs in plan mode, so it maps to `'plan'`).
|
|
376
|
+
*/
|
|
377
|
+
mode?: 'plan' | 'execute'
|
|
378
|
+
}) => void
|
|
361
379
|
/**
|
|
362
380
|
* Bump to make the panel re-read its persisted model/settings state — e.g.
|
|
363
381
|
* after the host's custom-provider surface sets the chat model via "Use".
|
|
@@ -376,6 +394,16 @@ interface ChatPanelProps {
|
|
|
376
394
|
* available.
|
|
377
395
|
*/
|
|
378
396
|
canEdit?: boolean
|
|
397
|
+
/**
|
|
398
|
+
* Whether the current user may MANAGE public share links — the `/share`
|
|
399
|
+
* command, the header share button, and the ShareModal's create/revoke
|
|
400
|
+
* controls. Distinct from {@link canEdit} because hosts commonly gate share
|
|
401
|
+
* minting ABOVE editor (molecule.dev mints/lists/revokes at admin+): an
|
|
402
|
+
* editor with `canEdit` true but `canShare` false gets no `/share` surface
|
|
403
|
+
* instead of a modal whose every request 403s. Defaults to `canEdit !==
|
|
404
|
+
* false` (back-compat: hosts that gate the modal themselves see no change).
|
|
405
|
+
*/
|
|
406
|
+
canShare?: boolean
|
|
379
407
|
/** Spinner/busy indicator node to show for in-chat loading states (e.g. the "designing" indicator). Falls back to a built-in dots animation. */
|
|
380
408
|
spinner?: ReactNode
|
|
381
409
|
/** Path of the currently focused file in the editor (shown first in @ picker). */
|
|
@@ -697,6 +725,12 @@ Properties for the editor panel component.
|
|
|
697
725
|
```typescript
|
|
698
726
|
interface EditorPanelProps {
|
|
699
727
|
className?: string
|
|
728
|
+
/**
|
|
729
|
+
* Render the editor read-only (Monaco `readOnly`) — for read-only project
|
|
730
|
+
* VIEWERS, whose file writes the server rejects anyway. Typing is blocked at
|
|
731
|
+
* the editor, so a viewer never composes an edit that cannot be saved.
|
|
732
|
+
*/
|
|
733
|
+
readOnly?: boolean
|
|
700
734
|
/** Called whenever the active file changes (tab switch, file open, file close). */
|
|
701
735
|
onActiveFileChange?: (path: string | null) => void
|
|
702
736
|
/** Called once after the editor is fully mounted and ready to accept files. */
|
|
@@ -726,6 +760,12 @@ Properties for file explorer.
|
|
|
726
760
|
|
|
727
761
|
```typescript
|
|
728
762
|
interface FileExplorerProps {
|
|
763
|
+
/**
|
|
764
|
+
* Read-only mode (a project viewer): the context menu omits every mutating
|
|
765
|
+
* entry. Pair with omitting the mutation handlers (onRename/onDelete/…) so
|
|
766
|
+
* keyboard shortcuts and drag-moves no-op too.
|
|
767
|
+
*/
|
|
768
|
+
readOnly?: boolean
|
|
729
769
|
files: FileNode[]
|
|
730
770
|
onFileSelect: (path: string) => void
|
|
731
771
|
onFileDoubleClick?: (path: string) => void
|
|
@@ -1131,6 +1171,12 @@ interface SearchPanelProps {
|
|
|
1131
1171
|
excludedDirs?: string[]
|
|
1132
1172
|
/** Persist an edited excluded-dir set (the host owns storage). */
|
|
1133
1173
|
onExcludedDirsChange?: (dirs: string[]) => void
|
|
1174
|
+
/**
|
|
1175
|
+
* Read-only mode (a project viewer): search stays fully usable, but the
|
|
1176
|
+
* Replace toggle/inputs/buttons are hidden (bulk writes are editor work).
|
|
1177
|
+
* Pair with omitting onExcludedDirsChange so exclude edits never persist.
|
|
1178
|
+
*/
|
|
1179
|
+
readOnly?: boolean
|
|
1134
1180
|
}
|
|
1135
1181
|
```
|
|
1136
1182
|
|
|
@@ -1329,6 +1375,15 @@ interface UserAvatarProps {
|
|
|
1329
1375
|
* ignored (see {@link resolveUserAvatar}) and the generic icon is shown.
|
|
1330
1376
|
*/
|
|
1331
1377
|
userAvatar?: string | null
|
|
1378
|
+
/**
|
|
1379
|
+
* The message author's display name, for a TEAMMATE's message. When set and
|
|
1380
|
+
* there is no renderable avatar, the fallback tile shows the name's initial
|
|
1381
|
+
* (e.g. "T" for Test) instead of the generic `user` glyph — so a teammate
|
|
1382
|
+
* without a profile picture is still identifiable at a glance and is NEVER
|
|
1383
|
+
* shown with the viewer's own avatar. Also used as the accessible label /
|
|
1384
|
+
* image alt in place of the solo "You".
|
|
1385
|
+
*/
|
|
1386
|
+
name?: string
|
|
1332
1387
|
/** Diameter of the avatar in pixels. Defaults to 24. */
|
|
1333
1388
|
size?: number
|
|
1334
1389
|
/**
|
|
@@ -1707,6 +1762,7 @@ function ChatPanel({
|
|
|
1707
1762
|
onActivityClick,
|
|
1708
1763
|
onRenderError,
|
|
1709
1764
|
onProfileClick,
|
|
1765
|
+
currentUserId,
|
|
1710
1766
|
onReadyToBuild,
|
|
1711
1767
|
awaitingSandboxBoot,
|
|
1712
1768
|
onClientAction,
|
|
@@ -1735,6 +1791,7 @@ function ChatPanel({
|
|
|
1735
1791
|
isPro,
|
|
1736
1792
|
isAnonymous,
|
|
1737
1793
|
canEdit = true,
|
|
1794
|
+
canShare,
|
|
1738
1795
|
buildUpgradeCta,
|
|
1739
1796
|
buildHelpUpgradeSection,
|
|
1740
1797
|
userAvatar,
|
|
@@ -1845,6 +1902,7 @@ Code editor panel with tab bar and Monaco integration.
|
|
|
1845
1902
|
```typescript
|
|
1846
1903
|
function EditorPanel({
|
|
1847
1904
|
className,
|
|
1905
|
+
readOnly,
|
|
1848
1906
|
onActiveFileChange,
|
|
1849
1907
|
onEditorReady,
|
|
1850
1908
|
onTabsChange,
|
|
@@ -1872,6 +1930,7 @@ function FileExplorer({
|
|
|
1872
1930
|
onFileSelect,
|
|
1873
1931
|
onFileDoubleClick,
|
|
1874
1932
|
onDirExpand,
|
|
1933
|
+
readOnly,
|
|
1875
1934
|
onRename,
|
|
1876
1935
|
onDelete,
|
|
1877
1936
|
onDeleteMultiple,
|
|
@@ -2390,6 +2449,7 @@ function SearchPanel({
|
|
|
2390
2449
|
className,
|
|
2391
2450
|
excludedDirs,
|
|
2392
2451
|
onExcludedDirsChange,
|
|
2452
|
+
readOnly,
|
|
2393
2453
|
}: SearchPanelProps): JSX.Element
|
|
2394
2454
|
```
|
|
2395
2455
|
|
|
@@ -2452,12 +2512,18 @@ function ShareModal({
|
|
|
2452
2512
|
projectId,
|
|
2453
2513
|
initialRole = DEFAULT_SHARE_ROLE,
|
|
2454
2514
|
roles = [DEFAULT_SHARE_ROLE],
|
|
2515
|
+
canManage = true,
|
|
2516
|
+
canCreate = canManage,
|
|
2517
|
+
canRevoke = canManage,
|
|
2455
2518
|
onClose,
|
|
2456
2519
|
onCreated,
|
|
2457
2520
|
}: {
|
|
2458
2521
|
projectId: string
|
|
2459
2522
|
initialRole?: ShareRole
|
|
2460
2523
|
roles?: readonly ShareRole[]
|
|
2524
|
+
canManage?: boolean
|
|
2525
|
+
canCreate?: boolean
|
|
2526
|
+
canRevoke?: boolean
|
|
2461
2527
|
onClose: () => void
|
|
2462
2528
|
onCreated?: (result: ShareLinkResult) => void
|
|
2463
2529
|
}): JSX.Element
|
|
@@ -2553,7 +2619,7 @@ visual is wrapped in an accessible button so the avatar can open the user's
|
|
|
2553
2619
|
profile.
|
|
2554
2620
|
|
|
2555
2621
|
```typescript
|
|
2556
|
-
function UserAvatar({ userAvatar, size = 24, onClick }: UserAvatarProps): JSX.Element
|
|
2622
|
+
function UserAvatar({ userAvatar, name, size = 24, onClick }: UserAvatarProps): JSX.Element
|
|
2557
2623
|
```
|
|
2558
2624
|
|
|
2559
2625
|
- `props` — {@link UserAvatarProps}.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-metadata.d.ts","sourceRoot":"","sources":["../src/command-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,uEAAuE;AACvE,MAAM,MAAM,kBAAkB,GAC5B,SAAS,GAAG,MAAM,GAAG,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,CAAA;AAEvE,iDAAiD;AACjD,MAAM,WAAW,eAAe;IAC9B,qEAAqE;IACrE,GAAG,EAAE,kBAAkB,CAAA;IACvB,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAA;CACd;AAED,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,EAAE,SAAS,eAAe,EAO/C,CAAA;AAEV,kDAAkD;AAClD,MAAM,WAAW,UAAU;IACzB,4DAA4D;IAC5D,EAAE,EAAE,MAAM,CAAA;IACV,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB,8CAA8C;IAC9C,QAAQ,EAAE,kBAAkB,CAAA;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,UAAU,
|
|
1
|
+
{"version":3,"file":"command-metadata.d.ts","sourceRoot":"","sources":["../src/command-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,uEAAuE;AACvE,MAAM,MAAM,kBAAkB,GAC5B,SAAS,GAAG,MAAM,GAAG,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,CAAA;AAEvE,iDAAiD;AACjD,MAAM,WAAW,eAAe;IAC9B,qEAAqE;IACrE,GAAG,EAAE,kBAAkB,CAAA;IACvB,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAA;CACd;AAED,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,EAAE,SAAS,eAAe,EAO/C,CAAA;AAEV,kDAAkD;AAClD,MAAM,WAAW,UAAU;IACzB,4DAA4D;IAC5D,EAAE,EAAE,MAAM,CAAA;IACV,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB,8CAA8C;IAC9C,QAAQ,EAAE,kBAAkB,CAAA;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,UAAU,EA4LhC,CAAA;AAEV,4FAA4F;AAC5F,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;AAExC,6DAA6D;AAC7D,MAAM,WAAW,YAAY;IAC3B,2CAA2C;IAC3C,QAAQ,EAAE,eAAe,CAAA;IACzB,oDAAoD;IACpD,QAAQ,EAAE,UAAU,EAAE,CAAA;CACvB;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,GAAE,SAAS,UAAU,EAAa,EAC1C,UAAU,GAAE,SAAS,eAAe,EAAuB,GAC1D,YAAY,EAAE,CAOhB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,SAAS,UAAU,EAAE,GAAG,SAAS,EACvC,IAAI,EAAE,MAAM,GACX,OAAO,CAST"}
|
package/dist/command-metadata.js
CHANGED
|
@@ -42,7 +42,7 @@ export const COMMANDS = [
|
|
|
42
42
|
{
|
|
43
43
|
id: 'cost',
|
|
44
44
|
label: '/cost',
|
|
45
|
-
description:
|
|
45
|
+
description: "Show token usage & share of the project's AI allowance",
|
|
46
46
|
category: 'context',
|
|
47
47
|
viewerSafe: true,
|
|
48
48
|
},
|
|
@@ -156,7 +156,14 @@ export const COMMANDS = [
|
|
|
156
156
|
// disabled), so opening it to look is fine.
|
|
157
157
|
viewerSafe: true,
|
|
158
158
|
},
|
|
159
|
-
{
|
|
159
|
+
{
|
|
160
|
+
id: 'sounds',
|
|
161
|
+
label: '/sounds',
|
|
162
|
+
description: 'Notification sounds',
|
|
163
|
+
category: 'settings',
|
|
164
|
+
// Per-user, per-device preference (localStorage) — nothing project-shared.
|
|
165
|
+
viewerSafe: true,
|
|
166
|
+
},
|
|
160
167
|
{
|
|
161
168
|
id: 'mic',
|
|
162
169
|
label: '/mic',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-metadata.js","sourceRoot":"","sources":["../src/command-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAcH,mEAAmE;AACnE,MAAM,CAAC,MAAM,kBAAkB,GAA+B;IAC5D,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;IACpC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;IAC9B,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;IAC5C,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;IAChC,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;IACtC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;CAC5B,CAAA;AAmDV;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAA0B;IAC7C,UAAU;IACV,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE,QAAQ,EAAE,SAAS,EAAE;IACxF;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,gCAAgC;QAC7C,QAAQ,EAAE,SAAS;KACpB;IACD;QACE,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,OAAO;QACd,WAAW,EAAE
|
|
1
|
+
{"version":3,"file":"command-metadata.js","sourceRoot":"","sources":["../src/command-metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,6 +74,12 @@ export interface MessageItemProps {
|
|
|
74
74
|
handleFileRevert: (path: string, content: string) => Promise<void>;
|
|
75
75
|
setInputAndCursorEnd: (val: string) => void;
|
|
76
76
|
setModelPicker: React.Dispatch<React.SetStateAction<ModelPicker | null>>;
|
|
77
|
+
/**
|
|
78
|
+
* The live conversation mode (discovery maps to 'plan') — scopes the
|
|
79
|
+
* loop-limit banner's "Change model" picker so the pick lands on the mode the
|
|
80
|
+
* user is actually in.
|
|
81
|
+
*/
|
|
82
|
+
chatMode: 'plan' | 'execute';
|
|
77
83
|
/** Signed-in user's avatar shown beside their own messages (SOC1); icon fallback when absent/unsafe. */
|
|
78
84
|
userAvatar?: string | null;
|
|
79
85
|
/** When set, the user avatar becomes clickable and fires this to open the user's profile (C5). */
|
|
@@ -88,6 +94,8 @@ export interface MessageItemProps {
|
|
|
88
94
|
buildUpgradeCta?: ChatPanelProps['buildUpgradeCta'];
|
|
89
95
|
/** Agent display name — used in the team-only badge tooltip ("{{agentName}} ignores it"). */
|
|
90
96
|
agentName?: string;
|
|
97
|
+
/** Whether the user may write shared project state — false hides/inertizes write affordances in the message (revert, ask_user answers). */
|
|
98
|
+
canEdit?: boolean;
|
|
91
99
|
}
|
|
92
100
|
/** Props for the inner chat surface (timeline + composer), remounted per conversation. */
|
|
93
101
|
export interface ChatInnerProps {
|
|
@@ -100,6 +108,8 @@ export interface ChatInnerProps {
|
|
|
100
108
|
isAnonymous?: boolean;
|
|
101
109
|
/** Whether the user may write shared project state — see {@link ChatPanelProps.canEdit}. */
|
|
102
110
|
canEdit?: boolean;
|
|
111
|
+
/** Whether the user may manage public share links — see {@link ChatPanelProps.canShare}. */
|
|
112
|
+
canShare?: boolean;
|
|
103
113
|
/** Host-supplied upgrade/sign-in CTA builder — see {@link ChatPanelProps.buildUpgradeCta}. */
|
|
104
114
|
buildUpgradeCta?: ChatPanelProps['buildUpgradeCta'];
|
|
105
115
|
/** Host-supplied `/help` upgrade section builder — see {@link ChatPanelProps.buildHelpUpgradeSection}. */
|
|
@@ -146,7 +156,9 @@ export interface ChatInnerProps {
|
|
|
146
156
|
/** Changing this value opens the `/settings` view (used by the header gear button). */
|
|
147
157
|
openSettingsSignal?: number;
|
|
148
158
|
/** Shows a "manage your own models" row in the `/model` picker — see {@link ChatPanelProps.onManageCustomModels}. */
|
|
149
|
-
onManageCustomModels?: (
|
|
159
|
+
onManageCustomModels?: (context?: {
|
|
160
|
+
mode?: 'plan' | 'execute';
|
|
161
|
+
}) => void;
|
|
150
162
|
/** Bump to re-read persisted model/settings — see {@link ChatPanelProps.modelSelectionSignal}. */
|
|
151
163
|
modelSelectionSignal?: number;
|
|
152
164
|
/** Changing this value opens the `/report` bug-report modal (used by the header bug button). */
|
|
@@ -185,7 +197,7 @@ export interface ChatInnerProps {
|
|
|
185
197
|
* @param props - Component props (see {@link MessageItemProps}).
|
|
186
198
|
* @returns The rendered chat panel element.
|
|
187
199
|
*/
|
|
188
|
-
export declare function ChatPanel({ projectId, endpoint, initialMessage, onInitialMessageSent, activeFile, openTabs, onFileOpen, onFileDoubleClick, onFileDiff, onFileRevert, onFileChange, onFileDeleted, onCommit, onActivityClick, onRenderError, onProfileClick, currentUserId, onReadyToBuild, awaitingSandboxBoot, onClientAction, onTurnComplete, onLoadingChange, onNavigatePreview, onRegisterPushHandler, autoSubmitSignal, initialInputValue, hideConversationMenu, renderConversationHeader, conversationId: controlledConversationId, chatKey: controlledChatKey, onConversationId: controlledOnConversationId, openShareSignal: controlledShareSignal, openReportSignal: controlledReportSignal, openSettingsSignal: controlledSettingsSignal, onManageCustomModels, gitStatusTick, pendingMessage, pendingMessageKey, pendingMessageSuppressUser, pendingMessageUserInitiated, userEditedFile, userEditedFileKey, isPro, isAnonymous, canEdit, buildUpgradeCta, buildHelpUpgradeSection, userAvatar, agentName, productName, version, extraCommands, feedbackUrl, className, }: ChatPanelProps): JSX.Element;
|
|
200
|
+
export declare function ChatPanel({ projectId, endpoint, initialMessage, onInitialMessageSent, activeFile, openTabs, onFileOpen, onFileDoubleClick, onFileDiff, onFileRevert, onFileChange, onFileDeleted, onCommit, onActivityClick, onRenderError, onProfileClick, currentUserId, onReadyToBuild, awaitingSandboxBoot, onClientAction, onTurnComplete, onLoadingChange, onNavigatePreview, onRegisterPushHandler, autoSubmitSignal, initialInputValue, hideConversationMenu, renderConversationHeader, conversationId: controlledConversationId, chatKey: controlledChatKey, onConversationId: controlledOnConversationId, openShareSignal: controlledShareSignal, openReportSignal: controlledReportSignal, openSettingsSignal: controlledSettingsSignal, onManageCustomModels, gitStatusTick, pendingMessage, pendingMessageKey, pendingMessageSuppressUser, pendingMessageUserInitiated, userEditedFile, userEditedFileKey, isPro, isAnonymous, canEdit, canShare, buildUpgradeCta, buildHelpUpgradeSection, userAvatar, agentName, productName, version, extraCommands, feedbackUrl, className, }: ChatPanelProps): JSX.Element;
|
|
189
201
|
export declare namespace ChatPanel {
|
|
190
202
|
var displayName: string;
|
|
191
203
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatPanel.d.ts","sourceRoot":"","sources":["../../src/components/ChatPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAa,MAAM,OAAO,CAAA;AAY3C,OAAO,KAAK,EAAa,WAAW,EAAmB,MAAM,uBAAuB,CAAA;AAuCpF,OAAO,KAAK,EAAE,cAAc,EAAoB,eAAe,EAAE,MAAM,aAAa,CAAA;AACpF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAevD,OAAO,EAEL,KAAK,UAAU,EAGhB,MAAM,oBAAoB,CAAA;AAW3B,OAAO,KAAK,EAAsB,SAAS,EAAE,MAAM,gCAAgC,CAAA;
|
|
1
|
+
{"version":3,"file":"ChatPanel.d.ts","sourceRoot":"","sources":["../../src/components/ChatPanel.tsx"],"names":[],"mappings":"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"}
|