diff --git a/packages/app/src/components/prompt-input.tsx b/packages/app/src/components/prompt-input.tsx index 3dd3b4ad59..e26217c900 100644 --- a/packages/app/src/components/prompt-input.tsx +++ b/packages/app/src/components/prompt-input.tsx @@ -1341,8 +1341,7 @@ export const PromptInput: Component = (props) => { if (!directory) return const key = pathKey(directory) return projects().find( - (project) => - pathKey(project.worktree) === key || project.sandboxes?.some((sandbox) => pathKey(sandbox) === key), + (project) => pathKey(project.worktree) === key || project.sandboxes?.some((sandbox) => pathKey(sandbox) === key), ) } const selectedProject = createMemo(() => projectForDirectory(sdk.directory)) @@ -1376,7 +1375,10 @@ export const PromptInput: Component = (props) => { return } void import("@/components/dialog-select-directory").then((x) => { - dialog.show(() => , () => select(null)) + dialog.show( + () => , + () => select(null), + ) }) } @@ -1465,128 +1467,128 @@ export const PromptInput: Component = (props) => { [props.class ?? ""]: !!props.class, }} > - - { - const active = comments.active() - return !!item.commentID && item.commentID === active?.id && item.path === active?.file - }} - openComment={openComment} - remove={(item) => { - if (item.commentID) comments.remove(item.path, item.commentID) - prompt.context.remove(item.key) - }} - t={(key) => language.t(key as Parameters[0])} - /> - - dialog.show(() => ) - } - onRemove={removeAttachment} - removeLabel={language.t("prompt.attachment.remove")} - /> -
{ - const target = e.target - if (!(target instanceof HTMLElement)) return - if (target.closest('[data-action^="prompt-"]')) return - editorRef?.focus() - }} - > -
(scrollRef = el)}> -
{ - editorRef = el - props.ref?.(el) - }} - role="textbox" - aria-multiline="true" - aria-label={designPlaceholder()} - contenteditable="true" - autocapitalize={store.mode === "normal" ? "sentences" : "off"} - autocorrect={store.mode === "normal" ? "on" : "off"} - spellcheck={store.mode === "normal"} - inputMode="text" - // @ts-expect-error - autocomplete="off" - onInput={handleInput} - onPaste={handlePaste} - onCompositionStart={handleCompositionStart} - onCompositionEnd={handleCompositionEnd} - onBlur={handleBlur} - onKeyDown={handleKeyDown} - classList={{ - "select-text": true, - "min-h-[52px] w-full px-4 pt-4 pb-2 focus:outline-none whitespace-pre-wrap leading-5 text-[13px] font-[440] text-v2-text-text-faint [font-family:Inter,var(--font-family-sans)]": true, - "[&_[data-type=file]]:text-syntax-property": true, - "[&_[data-type=agent]]:text-syntax-type": true, - "font-mono!": store.mode === "shell", - }} - /> -
- {designPlaceholder()} + + { + const active = comments.active() + return !!item.commentID && item.commentID === active?.id && item.path === active?.file + }} + openComment={openComment} + remove={(item) => { + if (item.commentID) comments.remove(item.path, item.commentID) + prompt.context.remove(item.key) + }} + t={(key) => language.t(key as Parameters[0])} + /> + + dialog.show(() => ) + } + onRemove={removeAttachment} + removeLabel={language.t("prompt.attachment.remove")} + /> +
{ + const target = e.target + if (!(target instanceof HTMLElement)) return + if (target.closest('[data-action^="prompt-"]')) return + editorRef?.focus() + }} + > +
(scrollRef = el)}> +
{ + editorRef = el + props.ref?.(el) + }} + role="textbox" + aria-multiline="true" + aria-label={designPlaceholder()} + contenteditable="true" + autocapitalize={store.mode === "normal" ? "sentences" : "off"} + autocorrect={store.mode === "normal" ? "on" : "off"} + spellcheck={store.mode === "normal"} + inputMode="text" + // @ts-expect-error + autocomplete="off" + onInput={handleInput} + onPaste={handlePaste} + onCompositionStart={handleCompositionStart} + onCompositionEnd={handleCompositionEnd} + onBlur={handleBlur} + onKeyDown={handleKeyDown} + classList={{ + "select-text": true, + "min-h-[52px] w-full px-4 pt-4 pb-2 focus:outline-none whitespace-pre-wrap leading-5 text-[13px] font-[440] text-v2-text-text-faint [font-family:Inter,var(--font-family-sans)]": true, + "[&_[data-type=file]]:text-syntax-property": true, + "[&_[data-type=agent]]:text-syntax-type": true, + "font-mono!": store.mode === "shell", + }} + /> +
+ {designPlaceholder()} +
-
-
-
- {fileAttachmentInput()} - +
+
+ {fileAttachmentInput()} + + + + + + + + + + +
+ - - - - - - - - +
- - - -
diff --git a/packages/app/src/components/session/session-new-design-view.tsx b/packages/app/src/components/session/session-new-design-view.tsx index 87bfbb910b..c351cd9497 100644 --- a/packages/app/src/components/session/session-new-design-view.tsx +++ b/packages/app/src/components/session/session-new-design-view.tsx @@ -7,9 +7,7 @@ export function NewSessionDesignView(props: { children: JSX.Element }) {
-
- {props.children} -
+
{props.children}
diff --git a/packages/app/src/components/status-popover.tsx b/packages/app/src/components/status-popover.tsx index ed60ed7881..9c071347fb 100644 --- a/packages/app/src/components/status-popover.tsx +++ b/packages/app/src/components/status-popover.tsx @@ -171,7 +171,8 @@ function StatusPopoverView(props: { state: StatusPopoverState }) { }) const popoverProps = { - class: "[&_[data-slot=popover-body]]:p-0 w-[360px] max-w-[calc(100vw-40px)] bg-transparent border-0 shadow-none rounded-xl", + class: + "[&_[data-slot=popover-body]]:p-0 w-[360px] max-w-[calc(100vw-40px)] bg-transparent border-0 shadow-none rounded-xl", gutter: 4, placement: "bottom-end" as const, shift: -168, @@ -192,7 +193,10 @@ function StatusPopoverView(props: { state: StatusPopoverState }) { trigger={
-
+
} {...popoverProps} diff --git a/packages/app/src/i18n/uk.ts b/packages/app/src/i18n/uk.ts index 9c8d08842a..948c9a6cd4 100644 --- a/packages/app/src/i18n/uk.ts +++ b/packages/app/src/i18n/uk.ts @@ -759,8 +759,7 @@ export const dict = { "settings.general.row.followup.option.queue": "Черга", "settings.general.row.followup.option.steer": "Керування", "settings.general.row.showFileTree.title": "Дерево файлів", - "settings.general.row.showFileTree.description": - "Показувати панель дерева файлів у сесіях на робочому столі", + "settings.general.row.showFileTree.description": "Показувати панель дерева файлів у сесіях на робочому столі", "settings.general.row.showNavigation.title": "Елементи навігації", "settings.general.row.showNavigation.description": "Показувати кнопки назад і вперед у заголовку робочого столу", "settings.general.row.showSearch.title": "Палітра команд", diff --git a/packages/app/src/pages/home.tsx b/packages/app/src/pages/home.tsx index b9211e607a..2997efa56a 100644 --- a/packages/app/src/pages/home.tsx +++ b/packages/app/src/pages/home.tsx @@ -240,7 +240,10 @@ function HomeDesign() { />
- }> + } + > 0} fallback={ @@ -458,10 +461,7 @@ function HomeProjectRow(props: { {props.language.t("common.edit")} - props.clearNotifications(props.project)} - > + props.clearNotifications(props.project)}> {props.language.t("sidebar.project.clearNotifications")} diff --git a/packages/app/src/pages/session.tsx b/packages/app/src/pages/session.tsx index a176ced917..6dadd898d9 100644 --- a/packages/app/src/pages/session.tsx +++ b/packages/app/src/pages/session.tsx @@ -1799,9 +1799,7 @@ export default function Page() { }> - - {composerRegion("inline")} - + {composerRegion("inline")}