@volter-ai-dev/supercode-ui 0.1.43 → 0.1.44
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/activity.mjs +1 -0
- package/components.mjs +3 -2
- package/composer.mjs +2 -1
- package/conversation.mjs +1 -0
- package/core.mjs +1 -0
- package/embed.mjs +3 -2
- package/index.d.ts +1 -0
- package/messenger.mjs +3 -2
- package/package.json +1 -1
- package/react/activity.mjs +1 -0
- package/react/components.mjs +3 -2
- package/react/composer.mjs +2 -1
- package/react/conversation.mjs +1 -0
- package/react/messenger.mjs +3 -2
- package/react/sessions.mjs +1 -0
- package/react/settings.mjs +1 -0
- package/sessions.mjs +1 -0
- package/settings.mjs +1 -0
package/activity.mjs
CHANGED
|
@@ -13,6 +13,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
13
13
|
newChat: "New chat",
|
|
14
14
|
searchChats: "Search chats",
|
|
15
15
|
askAgent: "Ask your agent\u2026",
|
|
16
|
+
attachContext: "Attach files or images",
|
|
16
17
|
continueHere: "Continue here",
|
|
17
18
|
continueWithTerminal: "Continue with terminal",
|
|
18
19
|
joinLive: "Join live",
|
package/components.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|
|
@@ -1513,7 +1514,7 @@ function Composer({ state, adapter, labels = DEFAULT_LABELS, memoryKey = state.a
|
|
|
1513
1514
|
}, onDragLeave: (event) => {
|
|
1514
1515
|
if (!event.currentTarget.contains(event.relatedTarget)) setDragging(false);
|
|
1515
1516
|
}, onDrop: dropImages, children: [
|
|
1516
|
-
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label":
|
|
1517
|
+
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS, onClick: pickContext, children: picking ? /* @__PURE__ */ jsx3("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx3(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
1517
1518
|
/* @__PURE__ */ jsx3("textarea", { ref: textarea, rows: 1, "aria-label": `Message ${harnessDisplayName(state.harness) || "agent"}`, placeholder: state.startup !== "ready" ? "Connecting\u2026" : pendingStatus === "failed" ? "Retry or edit the unsent message\u2026" : pendingStatus === "editing" ? "Edit and resend\u2026" : steerAvailable && context.length === 0 && images.length === 0 ? "Redirect the current turn\u2026" : queueBlocked ? "Queue a follow-up\u2026" : labels.askAgent, value: draft, disabled: state.mode !== "control" && !state.canSend, onPaste: pasteImages, onInput: (event) => {
|
|
1518
1519
|
const value = event.currentTarget.value;
|
|
1519
1520
|
setDraft(value);
|
|
@@ -3078,7 +3079,7 @@ function NewChat({ state, adapter, onBack, onClose, onStarted, labels, memoryKey
|
|
|
3078
3079
|
}
|
|
3079
3080
|
} }),
|
|
3080
3081
|
/* @__PURE__ */ jsxs9("footer", { className: "scui-new-envelope-controls", children: [
|
|
3081
|
-
adapter.pickContext ? /* @__PURE__ */ jsx10("button", { className: "scui-attach", type: "button", "aria-label":
|
|
3082
|
+
adapter.pickContext ? /* @__PURE__ */ jsx10("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: mode === "terminal" || picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS || Boolean(starting), onClick: pickContext, children: picking ? /* @__PURE__ */ jsx10("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx10(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
3082
3083
|
/* @__PURE__ */ jsx10(Picker, { harnesses: state.harnesses, value: harness, disabled: Boolean(starting), adapter, logo: components.HarnessLogo, onChange: (value) => {
|
|
3083
3084
|
setHarness(value);
|
|
3084
3085
|
remember({ harness: value });
|
package/composer.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|
|
@@ -514,7 +515,7 @@ function Composer({ state, adapter, labels = DEFAULT_LABELS, memoryKey = state.a
|
|
|
514
515
|
}, onDragLeave: (event) => {
|
|
515
516
|
if (!event.currentTarget.contains(event.relatedTarget)) setDragging(false);
|
|
516
517
|
}, onDrop: dropImages, children: [
|
|
517
|
-
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label":
|
|
518
|
+
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS, onClick: pickContext, children: picking ? /* @__PURE__ */ jsx3("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx3(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
518
519
|
/* @__PURE__ */ jsx3("textarea", { ref: textarea, rows: 1, "aria-label": `Message ${harnessDisplayName(state.harness) || "agent"}`, placeholder: state.startup !== "ready" ? "Connecting\u2026" : pendingStatus === "failed" ? "Retry or edit the unsent message\u2026" : pendingStatus === "editing" ? "Edit and resend\u2026" : steerAvailable && context.length === 0 && images.length === 0 ? "Redirect the current turn\u2026" : queueBlocked ? "Queue a follow-up\u2026" : labels.askAgent, value: draft, disabled: state.mode !== "control" && !state.canSend, onPaste: pasteImages, onInput: (event) => {
|
|
519
520
|
const value = event.currentTarget.value;
|
|
520
521
|
setDraft(value);
|
package/conversation.mjs
CHANGED
|
@@ -17,6 +17,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
17
17
|
newChat: "New chat",
|
|
18
18
|
searchChats: "Search chats",
|
|
19
19
|
askAgent: "Ask your agent\u2026",
|
|
20
|
+
attachContext: "Attach files or images",
|
|
20
21
|
continueHere: "Continue here",
|
|
21
22
|
continueWithTerminal: "Continue with terminal",
|
|
22
23
|
joinLive: "Join live",
|
package/core.mjs
CHANGED
|
@@ -13,6 +13,7 @@ export const DEFAULT_LABELS = Object.freeze({
|
|
|
13
13
|
newChat: 'New chat',
|
|
14
14
|
searchChats: 'Search chats',
|
|
15
15
|
askAgent: 'Ask your agent…',
|
|
16
|
+
attachContext: 'Attach files or images',
|
|
16
17
|
continueHere: 'Continue here',
|
|
17
18
|
continueWithTerminal: 'Continue with terminal',
|
|
18
19
|
joinLive: 'Join live',
|
package/embed.mjs
CHANGED
|
@@ -19,6 +19,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
19
19
|
newChat: "New chat",
|
|
20
20
|
searchChats: "Search chats",
|
|
21
21
|
askAgent: "Ask your agent\u2026",
|
|
22
|
+
attachContext: "Attach files or images",
|
|
22
23
|
continueHere: "Continue here",
|
|
23
24
|
continueWithTerminal: "Continue with terminal",
|
|
24
25
|
joinLive: "Join live",
|
|
@@ -1479,7 +1480,7 @@ function Composer({ state, adapter, labels = DEFAULT_LABELS, memoryKey = state.a
|
|
|
1479
1480
|
}, onDragLeave: (event) => {
|
|
1480
1481
|
if (!event.currentTarget.contains(event.relatedTarget)) setDragging(false);
|
|
1481
1482
|
}, onDrop: dropImages, children: [
|
|
1482
|
-
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label":
|
|
1483
|
+
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS, onClick: pickContext, children: picking ? /* @__PURE__ */ jsx3("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx3(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
1483
1484
|
/* @__PURE__ */ jsx3("textarea", { ref: textarea, rows: 1, "aria-label": `Message ${harnessDisplayName(state.harness) || "agent"}`, placeholder: state.startup !== "ready" ? "Connecting\u2026" : pendingStatus === "failed" ? "Retry or edit the unsent message\u2026" : pendingStatus === "editing" ? "Edit and resend\u2026" : steerAvailable && context.length === 0 && images.length === 0 ? "Redirect the current turn\u2026" : queueBlocked ? "Queue a follow-up\u2026" : labels.askAgent, value: draft, disabled: state.mode !== "control" && !state.canSend, onPaste: pasteImages, onInput: (event) => {
|
|
1484
1485
|
const value = event.currentTarget.value;
|
|
1485
1486
|
setDraft(value);
|
|
@@ -2998,7 +2999,7 @@ function NewChat({ state, adapter, onBack, onClose, onStarted, labels, memoryKey
|
|
|
2998
2999
|
}
|
|
2999
3000
|
} }),
|
|
3000
3001
|
/* @__PURE__ */ jsxs8("footer", { className: "scui-new-envelope-controls", children: [
|
|
3001
|
-
adapter.pickContext ? /* @__PURE__ */ jsx9("button", { className: "scui-attach", type: "button", "aria-label":
|
|
3002
|
+
adapter.pickContext ? /* @__PURE__ */ jsx9("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: mode === "terminal" || picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS || Boolean(starting), onClick: pickContext, children: picking ? /* @__PURE__ */ jsx9("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx9(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
3002
3003
|
/* @__PURE__ */ jsx9(Picker, { harnesses: state.harnesses, value: harness, disabled: Boolean(starting), adapter, logo: components.HarnessLogo, onChange: (value) => {
|
|
3003
3004
|
setHarness(value);
|
|
3004
3005
|
remember({ harness: value });
|
package/index.d.ts
CHANGED
package/messenger.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|
|
@@ -1476,7 +1477,7 @@ function Composer({ state, adapter, labels = DEFAULT_LABELS, memoryKey = state.a
|
|
|
1476
1477
|
}, onDragLeave: (event) => {
|
|
1477
1478
|
if (!event.currentTarget.contains(event.relatedTarget)) setDragging(false);
|
|
1478
1479
|
}, onDrop: dropImages, children: [
|
|
1479
|
-
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label":
|
|
1480
|
+
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS, onClick: pickContext, children: picking ? /* @__PURE__ */ jsx3("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx3(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
1480
1481
|
/* @__PURE__ */ jsx3("textarea", { ref: textarea, rows: 1, "aria-label": `Message ${harnessDisplayName(state.harness) || "agent"}`, placeholder: state.startup !== "ready" ? "Connecting\u2026" : pendingStatus === "failed" ? "Retry or edit the unsent message\u2026" : pendingStatus === "editing" ? "Edit and resend\u2026" : steerAvailable && context.length === 0 && images.length === 0 ? "Redirect the current turn\u2026" : queueBlocked ? "Queue a follow-up\u2026" : labels.askAgent, value: draft, disabled: state.mode !== "control" && !state.canSend, onPaste: pasteImages, onInput: (event) => {
|
|
1481
1482
|
const value = event.currentTarget.value;
|
|
1482
1483
|
setDraft(value);
|
|
@@ -2995,7 +2996,7 @@ function NewChat({ state, adapter, onBack, onClose, onStarted, labels, memoryKey
|
|
|
2995
2996
|
}
|
|
2996
2997
|
} }),
|
|
2997
2998
|
/* @__PURE__ */ jsxs8("footer", { className: "scui-new-envelope-controls", children: [
|
|
2998
|
-
adapter.pickContext ? /* @__PURE__ */ jsx9("button", { className: "scui-attach", type: "button", "aria-label":
|
|
2999
|
+
adapter.pickContext ? /* @__PURE__ */ jsx9("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: mode === "terminal" || picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS || Boolean(starting), onClick: pickContext, children: picking ? /* @__PURE__ */ jsx9("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx9(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
2999
3000
|
/* @__PURE__ */ jsx9(Picker, { harnesses: state.harnesses, value: harness, disabled: Boolean(starting), adapter, logo: components.HarnessLogo, onChange: (value) => {
|
|
3000
3001
|
setHarness(value);
|
|
3001
3002
|
remember({ harness: value });
|
package/package.json
CHANGED
package/react/activity.mjs
CHANGED
|
@@ -13,6 +13,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
13
13
|
newChat: "New chat",
|
|
14
14
|
searchChats: "Search chats",
|
|
15
15
|
askAgent: "Ask your agent\u2026",
|
|
16
|
+
attachContext: "Attach files or images",
|
|
16
17
|
continueHere: "Continue here",
|
|
17
18
|
continueWithTerminal: "Continue with terminal",
|
|
18
19
|
joinLive: "Join live",
|
package/react/components.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|
|
@@ -1513,7 +1514,7 @@ function Composer({ state, adapter, labels = DEFAULT_LABELS, memoryKey = state.a
|
|
|
1513
1514
|
}, onDragLeave: (event) => {
|
|
1514
1515
|
if (!event.currentTarget.contains(event.relatedTarget)) setDragging(false);
|
|
1515
1516
|
}, onDrop: dropImages, children: [
|
|
1516
|
-
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label":
|
|
1517
|
+
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS, onClick: pickContext, children: picking ? /* @__PURE__ */ jsx3("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx3(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
1517
1518
|
/* @__PURE__ */ jsx3("textarea", { ref: textarea, rows: 1, "aria-label": `Message ${harnessDisplayName(state.harness) || "agent"}`, placeholder: state.startup !== "ready" ? "Connecting\u2026" : pendingStatus === "failed" ? "Retry or edit the unsent message\u2026" : pendingStatus === "editing" ? "Edit and resend\u2026" : steerAvailable && context.length === 0 && images.length === 0 ? "Redirect the current turn\u2026" : queueBlocked ? "Queue a follow-up\u2026" : labels.askAgent, value: draft, disabled: state.mode !== "control" && !state.canSend, onPaste: pasteImages, onInput: (event) => {
|
|
1518
1519
|
const value = event.currentTarget.value;
|
|
1519
1520
|
setDraft(value);
|
|
@@ -3078,7 +3079,7 @@ function NewChat({ state, adapter, onBack, onClose, onStarted, labels, memoryKey
|
|
|
3078
3079
|
}
|
|
3079
3080
|
} }),
|
|
3080
3081
|
/* @__PURE__ */ jsxs9("footer", { className: "scui-new-envelope-controls", children: [
|
|
3081
|
-
adapter.pickContext ? /* @__PURE__ */ jsx10("button", { className: "scui-attach", type: "button", "aria-label":
|
|
3082
|
+
adapter.pickContext ? /* @__PURE__ */ jsx10("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: mode === "terminal" || picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS || Boolean(starting), onClick: pickContext, children: picking ? /* @__PURE__ */ jsx10("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx10(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
3082
3083
|
/* @__PURE__ */ jsx10(Picker, { harnesses: state.harnesses, value: harness, disabled: Boolean(starting), adapter, logo: components.HarnessLogo, onChange: (value) => {
|
|
3083
3084
|
setHarness(value);
|
|
3084
3085
|
remember({ harness: value });
|
package/react/composer.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|
|
@@ -514,7 +515,7 @@ function Composer({ state, adapter, labels = DEFAULT_LABELS, memoryKey = state.a
|
|
|
514
515
|
}, onDragLeave: (event) => {
|
|
515
516
|
if (!event.currentTarget.contains(event.relatedTarget)) setDragging(false);
|
|
516
517
|
}, onDrop: dropImages, children: [
|
|
517
|
-
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label":
|
|
518
|
+
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS, onClick: pickContext, children: picking ? /* @__PURE__ */ jsx3("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx3(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
518
519
|
/* @__PURE__ */ jsx3("textarea", { ref: textarea, rows: 1, "aria-label": `Message ${harnessDisplayName(state.harness) || "agent"}`, placeholder: state.startup !== "ready" ? "Connecting\u2026" : pendingStatus === "failed" ? "Retry or edit the unsent message\u2026" : pendingStatus === "editing" ? "Edit and resend\u2026" : steerAvailable && context.length === 0 && images.length === 0 ? "Redirect the current turn\u2026" : queueBlocked ? "Queue a follow-up\u2026" : labels.askAgent, value: draft, disabled: state.mode !== "control" && !state.canSend, onPaste: pasteImages, onInput: (event) => {
|
|
519
520
|
const value = event.currentTarget.value;
|
|
520
521
|
setDraft(value);
|
package/react/conversation.mjs
CHANGED
|
@@ -17,6 +17,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
17
17
|
newChat: "New chat",
|
|
18
18
|
searchChats: "Search chats",
|
|
19
19
|
askAgent: "Ask your agent\u2026",
|
|
20
|
+
attachContext: "Attach files or images",
|
|
20
21
|
continueHere: "Continue here",
|
|
21
22
|
continueWithTerminal: "Continue with terminal",
|
|
22
23
|
joinLive: "Join live",
|
package/react/messenger.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|
|
@@ -1476,7 +1477,7 @@ function Composer({ state, adapter, labels = DEFAULT_LABELS, memoryKey = state.a
|
|
|
1476
1477
|
}, onDragLeave: (event) => {
|
|
1477
1478
|
if (!event.currentTarget.contains(event.relatedTarget)) setDragging(false);
|
|
1478
1479
|
}, onDrop: dropImages, children: [
|
|
1479
|
-
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label":
|
|
1480
|
+
adapter.pickContext && state.mode === "control" ? /* @__PURE__ */ jsx3("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS, onClick: pickContext, children: picking ? /* @__PURE__ */ jsx3("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx3(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
1480
1481
|
/* @__PURE__ */ jsx3("textarea", { ref: textarea, rows: 1, "aria-label": `Message ${harnessDisplayName(state.harness) || "agent"}`, placeholder: state.startup !== "ready" ? "Connecting\u2026" : pendingStatus === "failed" ? "Retry or edit the unsent message\u2026" : pendingStatus === "editing" ? "Edit and resend\u2026" : steerAvailable && context.length === 0 && images.length === 0 ? "Redirect the current turn\u2026" : queueBlocked ? "Queue a follow-up\u2026" : labels.askAgent, value: draft, disabled: state.mode !== "control" && !state.canSend, onPaste: pasteImages, onInput: (event) => {
|
|
1481
1482
|
const value = event.currentTarget.value;
|
|
1482
1483
|
setDraft(value);
|
|
@@ -2995,7 +2996,7 @@ function NewChat({ state, adapter, onBack, onClose, onStarted, labels, memoryKey
|
|
|
2995
2996
|
}
|
|
2996
2997
|
} }),
|
|
2997
2998
|
/* @__PURE__ */ jsxs8("footer", { className: "scui-new-envelope-controls", children: [
|
|
2998
|
-
adapter.pickContext ? /* @__PURE__ */ jsx9("button", { className: "scui-attach", type: "button", "aria-label":
|
|
2999
|
+
adapter.pickContext ? /* @__PURE__ */ jsx9("button", { className: "scui-attach", type: "button", "aria-label": labels.attachContext ?? DEFAULT_LABELS.attachContext, disabled: mode === "terminal" || picking || context.length >= MAX_CONTEXT_ITEMS && images.length >= MAX_IMAGE_ITEMS || Boolean(starting), onClick: pickContext, children: picking ? /* @__PURE__ */ jsx9("i", { className: "scui-control-spinner" }) : /* @__PURE__ */ jsx9(UiIcon, { name: "attach", size: 17 }) }) : null,
|
|
2999
3000
|
/* @__PURE__ */ jsx9(Picker, { harnesses: state.harnesses, value: harness, disabled: Boolean(starting), adapter, logo: components.HarnessLogo, onChange: (value) => {
|
|
3000
3001
|
setHarness(value);
|
|
3001
3002
|
remember({ harness: value });
|
package/react/sessions.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|
package/react/settings.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|
package/sessions.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|
package/settings.mjs
CHANGED
|
@@ -16,6 +16,7 @@ var DEFAULT_LABELS = Object.freeze({
|
|
|
16
16
|
newChat: "New chat",
|
|
17
17
|
searchChats: "Search chats",
|
|
18
18
|
askAgent: "Ask your agent\u2026",
|
|
19
|
+
attachContext: "Attach files or images",
|
|
19
20
|
continueHere: "Continue here",
|
|
20
21
|
continueWithTerminal: "Continue with terminal",
|
|
21
22
|
joinLive: "Join live",
|