feat: vault-aligned server v1 + UX polish
All checks were successful
CI / Windows build (push) Successful in 7m47s
All checks were successful
CI / Windows build (push) Successful in 7m47s
Redesign the optional FastAPI companion around vault files (manifest / PUT/GET/DELETE + OCR jobs) instead of legacy strokes_json notes. Wire a client Server settings panel for health/login. Polish shell UX: l10n for settings/home/board, sticky-board empty state, and a narrow-screen diagnostics FAB. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -489,4 +489,103 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||
|
||||
@override
|
||||
String get syncNotConfigured => 'Enter a server URL to enable sync.';
|
||||
|
||||
@override
|
||||
String get settingsDefaults => 'Defaults';
|
||||
|
||||
@override
|
||||
String get settingsAppearance => 'Appearance';
|
||||
|
||||
@override
|
||||
String get settingsAbout => 'About';
|
||||
|
||||
@override
|
||||
String get settingsDefaultTool => 'Default tool';
|
||||
|
||||
@override
|
||||
String get settingsDefaultColor => 'Default color';
|
||||
|
||||
@override
|
||||
String get settingsDefaultWidth => 'Default stroke width';
|
||||
|
||||
@override
|
||||
String get settingsPressureCurve => 'Pressure curve';
|
||||
|
||||
@override
|
||||
String get settingsClearConfirmBody =>
|
||||
'This resets pen defaults and appearance. Notes and documents are not affected.';
|
||||
|
||||
@override
|
||||
String get serverSection => 'BadNote Server';
|
||||
|
||||
@override
|
||||
String get serverUrl => 'Server URL';
|
||||
|
||||
@override
|
||||
String get serverUrlHint => 'http://192.168.1.10:8080';
|
||||
|
||||
@override
|
||||
String get serverUsername => 'Username';
|
||||
|
||||
@override
|
||||
String get serverPassword => 'Password';
|
||||
|
||||
@override
|
||||
String get serverSave => 'Save & sign in';
|
||||
|
||||
@override
|
||||
String get serverTest => 'Test connection';
|
||||
|
||||
@override
|
||||
String serverTestOk(String version) {
|
||||
return 'Connected · API $version';
|
||||
}
|
||||
|
||||
@override
|
||||
String serverTestFail(String error) {
|
||||
return 'Connection failed: $error';
|
||||
}
|
||||
|
||||
@override
|
||||
String get serverLoggedIn => 'Signed in';
|
||||
|
||||
@override
|
||||
String get serverHint =>
|
||||
'Optional. Self-hosted vault assist + deferred OCR; notes stay fully offline.';
|
||||
|
||||
@override
|
||||
String get boardEmptyTitle => 'No sticky notes yet';
|
||||
|
||||
@override
|
||||
String get boardEmptyBody =>
|
||||
'Tap + to add a card. Write [[other-card-id]] in the body to create a backlink.';
|
||||
|
||||
@override
|
||||
String get relativeJustNow => 'Just now';
|
||||
|
||||
@override
|
||||
String relativeMinutesAgo(int n) {
|
||||
return '${n}m ago';
|
||||
}
|
||||
|
||||
@override
|
||||
String relativeHoursAgo(int n) {
|
||||
return '${n}h ago';
|
||||
}
|
||||
|
||||
@override
|
||||
String get relativeYesterday => 'Yesterday';
|
||||
|
||||
@override
|
||||
String diagExported(int bytes) {
|
||||
return 'Diagnostic pack exported ($bytes bytes)\nPath copied';
|
||||
}
|
||||
|
||||
@override
|
||||
String diagExportFail(String error) {
|
||||
return 'Export failed: $error';
|
||||
}
|
||||
|
||||
@override
|
||||
String get processingOcr => 'Processing OCR…';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user