merge upstream

This commit is contained in:
2026-10-12 10:29:42 +02:00
5 changed files with 29 additions and 5 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
services: services:
crumbs: crumbs:
image: ghcr.io/bretzel-app/crumbs:0.35.1 image: ghcr.io/bretzel-app/crumbs:0.35.2
container_name: crumbs container_name: crumbs
ports: ports:
- "3000:3000" - "3000:3000"
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"name": "crumbs", "name": "crumbs",
"private": true, "private": true,
"version": "0.35.1", "version": "0.35.2",
"type": "module", "type": "module",
"packageManager": "pnpm@9.15.9", "packageManager": "pnpm@9.15.9",
"license": "MIT", "license": "MIT",
+1 -1
View File
@@ -60,7 +60,7 @@
let showColorPicker = $state(false); let showColorPicker = $state(false);
let showImageUpload = $state(false); let showImageUpload = $state(false);
// svelte-ignore state_referenced_locally // svelte-ignore state_referenced_locally
let rawMarkdownMode = $state(note ? (note.checklistMode ?? false) : prefs.defaultNoteMode === 'markdown'); let rawMarkdownMode = $state(prefs.defaultNoteMode === 'markdown');
let textareaEl: HTMLTextAreaElement | undefined = $state(); let textareaEl: HTMLTextAreaElement | undefined = $state();
let tiptapEditor: Editor | undefined = $state(); let tiptapEditor: Editor | undefined = $state();
let editorTick = $state(0); let editorTick = $state(0);
+25 -1
View File
@@ -1,4 +1,4 @@
import { test, expect } from './helpers/fixtures.js'; import { test, expect, noteCard } from './helpers/fixtures.js';
import type { Page } from '@playwright/test'; import type { Page } from '@playwright/test';
const DEFAULT_PREFS = { const DEFAULT_PREFS = {
@@ -81,6 +81,30 @@ test.describe('Settings — Preferences', () => {
await expect(page.getByTestId('note-content-input')).toBeVisible(); await expect(page.getByTestId('note-content-input')).toBeVisible();
}); });
test('Scenario: Default note mode applies when reopening an existing note', async ({
authenticatedPage: page
}) => {
await resetPreferences(page);
// Given a note titled "Existing Markdown Note" exists
const title = `Existing Markdown Note ${Date.now()}`;
await page.request.post('/api/notes', { data: { title, content: 'Some **bold** text' } });
// And the user's default note mode is Markdown
await gotoWithStablePrefs(page, '/settings/preferences');
const putResponse = page.waitForResponse((res) => res.url().includes('/api/preferences') && res.request().method() === 'PUT');
await page.getByTestId('pref-mode-markdown').click();
await putResponse;
// When the user opens the note
await gotoWithStablePrefs(page, '/');
await noteCard(page, title).click();
// Then the note editor opens in markdown mode showing the raw source
await expect(page.getByTestId('note-content-input')).toBeVisible();
await expect(page.getByTestId('note-content-input')).toHaveValue('Some **bold** text');
});
test('Scenario: Footer toggle hides and shows footer', async ({ test('Scenario: Footer toggle hides and shows footer', async ({
authenticatedPage: page authenticatedPage: page
}) => { }) => {
+1 -1
View File
@@ -292,7 +292,7 @@
<li><a href="https://github.com/bretzel-app/crumbs/blob/main/docs/DEPLOYMENT.md" target="_blank" rel="noopener">Docs</a></li> <li><a href="https://github.com/bretzel-app/crumbs/blob/main/docs/DEPLOYMENT.md" target="_blank" rel="noopener">Docs</a></li>
<li><a href="https://github.com/bretzel-app/crumbs/blob/main/LICENSE" target="_blank" rel="noopener">License</a></li> <li><a href="https://github.com/bretzel-app/crumbs/blob/main/LICENSE" target="_blank" rel="noopener">License</a></li>
</ul> </ul>
<span class="footer-version">v0.35.1</span> <span class="footer-version">v0.35.2</span>
</div> </div>
</footer> </footer>