Refine MsTextField component: introduce compact mode, enhance visual styling and error handling, and improve placeholder and keyboard interaction logic. Add Dimens and Colors updates, implement navigation rail and header layout for the desktop shell, and update ROADMAP documentation with planned phases.

This commit is contained in:
2026-04-12 23:06:49 +02:00
parent 5eb2dd6904
commit 126522e606
17 changed files with 854 additions and 551 deletions
@@ -3,8 +3,39 @@ CREATE TABLE LocalSettings (
value TEXT NOT NULL
);
-- SyncEvents Tabelle für Offline-First/Event-Sourcing (ADR-0022/Concept)
CREATE TABLE SyncEvents (
sequence_number INTEGER NOT NULL,
origin_node_id TEXT NOT NULL,
event_id TEXT NOT NULL,
turnier_id TEXT,
aggregate_type TEXT NOT NULL,
aggregate_id TEXT NOT NULL,
event_type TEXT NOT NULL,
payload TEXT NOT NULL,
created_at INTEGER NOT NULL,
schema_version INTEGER NOT NULL DEFAULT 1,
checksum TEXT,
synced_at INTEGER, -- Null if not yet synced to backend
PRIMARY KEY (origin_node_id, sequence_number)
);
insertOrReplace:
INSERT OR REPLACE INTO LocalSettings(key, value) VALUES (?, ?);
selectAll:
SELECT * FROM LocalSettings;
-- SyncEvents Queries
insertSyncEvent:
INSERT INTO SyncEvents(sequence_number, origin_node_id, event_id, turnier_id, aggregate_type, aggregate_id, event_type, payload, created_at, schema_version, checksum)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
selectUnsyncedEvents:
SELECT * FROM SyncEvents WHERE synced_at IS NULL ORDER BY sequence_number ASC;
markSynced:
UPDATE SyncEvents SET synced_at = ? WHERE origin_node_id = ? AND sequence_number = ?;
getLastSequenceNumber:
SELECT MAX(sequence_number) FROM SyncEvents WHERE origin_node_id = ?;