fix: shift range from a pinned note in its folder; kanban fits the window; list toolbar; quick dump targets only select; aligned bullets; steady search field; browser voice waits 5 s
MindSift CI & Docker Release / Build, Test in Container & Push (push) Successful in 2m28s
MindSift CI & Docker Release / Build, Test in Container & Push (push) Successful in 2m28s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
5a9c5bac37
commit
e2b9daba75
26 files changed
+208
-138
No files matched your search
@@ -437,7 +437,7 @@ export const InstantCaptureBar: React.FC<InstantCaptureBarProps> = ({
|
||||
<div>
|
||||
<div className="flex items-center justify-between mb-1.5">
|
||||
<span className="text-[11px] font-semibold uppercase tracking-wider text-muted">
|
||||
Wohin damit? {content.trim() ? '(Klick speichert sofort oder wählt Ziel)' : '(Ziel für Eingabe wählen)'}
|
||||
Wohin damit?
|
||||
</span>
|
||||
<span className="text-[11px] text-faint">
|
||||
Standard: Quick Dump für späteres Swipen
|
||||
@@ -450,9 +450,6 @@ export const InstantCaptureBar: React.FC<InstantCaptureBarProps> = ({
|
||||
type="button"
|
||||
onClick={() => {
|
||||
setTarget('inbox');
|
||||
if (content.trim()) {
|
||||
executeCapture('inbox');
|
||||
}
|
||||
}}
|
||||
className={`min-h-[36px] px-2.5 border rounded-btn flex items-center gap-1.5 text-left transition-colors cursor-pointer ${
|
||||
target === 'inbox'
|
||||
@@ -469,10 +466,6 @@ export const InstantCaptureBar: React.FC<InstantCaptureBarProps> = ({
|
||||
type="button"
|
||||
onClick={() => {
|
||||
setTarget('task');
|
||||
// With task lists the row below picks one (and saves); otherwise save right away
|
||||
if (content.trim() && writableTaskLists.length === 0) {
|
||||
executeCapture('task');
|
||||
}
|
||||
}}
|
||||
className={`min-h-[36px] px-2.5 border rounded-btn flex items-center gap-1.5 text-left transition-colors cursor-pointer ${
|
||||
target === 'task'
|
||||
@@ -508,9 +501,6 @@ export const InstantCaptureBar: React.FC<InstantCaptureBarProps> = ({
|
||||
type="button"
|
||||
onClick={() => {
|
||||
setTarget('document');
|
||||
if (content.trim()) {
|
||||
executeCapture('document');
|
||||
}
|
||||
}}
|
||||
className={`min-h-[36px] px-2.5 border rounded-btn flex items-center gap-1.5 text-left transition-colors cursor-pointer ${
|
||||
target === 'document'
|
||||
@@ -539,9 +529,6 @@ export const InstantCaptureBar: React.FC<InstantCaptureBarProps> = ({
|
||||
type="button"
|
||||
onClick={() => {
|
||||
setTargetTaskListId(tl.id);
|
||||
if (content.trim()) {
|
||||
executeCapture('task', undefined, tl.id);
|
||||
}
|
||||
}}
|
||||
className={`min-h-[30px] px-2.5 border rounded-btn text-xs flex items-center gap-1.5 transition-colors cursor-pointer ${
|
||||
isSelected
|
||||
@@ -573,9 +560,6 @@ export const InstantCaptureBar: React.FC<InstantCaptureBarProps> = ({
|
||||
onClick={() => {
|
||||
setTarget('list_item');
|
||||
setTargetListId(lst.id);
|
||||
if (content.trim()) {
|
||||
executeCapture('list_item', lst.id);
|
||||
}
|
||||
}}
|
||||
className={`min-h-[30px] px-2.5 border rounded-btn text-xs flex items-center gap-1.5 transition-colors cursor-pointer ${
|
||||
isSelected
|
||||
|
||||
@@ -24,7 +24,7 @@ describe('InstantCaptureBar', () => {
|
||||
sessionStorage.clear();
|
||||
});
|
||||
|
||||
it('shows the list row that fits the target and saves into the chosen task list', async () => {
|
||||
it('shows the list row that fits the target and saves into the chosen task list on send', async () => {
|
||||
await act(async () => {
|
||||
render(<InstantCaptureBar onCaptured={() => {}} lists={lists} defaultShowOptions />);
|
||||
});
|
||||
@@ -38,8 +38,11 @@ describe('InstantCaptureBar', () => {
|
||||
expect(captureThought).not.toHaveBeenCalled();
|
||||
expect(screen.queryByText('Wocheneinkauf')).toBeNull();
|
||||
expect(screen.queryByText('Fremd')).toBeNull();
|
||||
// Picking the list only selects it as well; saving takes the send button (or Enter)
|
||||
fireEvent.click(screen.getByRole('button', { name: /Homelab/ }));
|
||||
expect(captureThought).not.toHaveBeenCalled();
|
||||
await act(async () => {
|
||||
fireEvent.click(screen.getByRole('button', { name: /Homelab/ }));
|
||||
fireEvent.submit(screen.getByRole('textbox').closest('form')!);
|
||||
});
|
||||
expect(captureThought).toHaveBeenCalledWith('Backup prüfen', 'normal', 'manual', '', {
|
||||
target: 'task',
|
||||
|
||||
Reference in new issue
Block a user