Refactor: remove desktop/Tauri bundle, add i18n, CI/CD pipeline
Nightly Build / build (push) Failing after 6s

- Remove desktop (Tauri) bundle: docs/desktop.md, icons/, tauri.conf.json,
  src/desktop/mod.rs, gen/schemas/
- Remove build.rs (no longer needed)
- Add i18n system (crates/core-api, plugin-mobile-connector, web)
- Refactor config system (src/config.rs, boot_format.rs)
- Add mobile connector features (app, router, device pairing)
- Plugin system improvements (skald-core)
- Update dependencies (Cargo.lock, Cargo.toml)
- CI/CD: Gitea Actions workflows (nightly + release), package.sh,
  verify-version.sh, builds.skaldagent.net config
This commit is contained in:
2026-07-19 22:35:06 +01:00
parent ba911ae8cb
commit fb3eeeeec6
54 changed files with 823 additions and 8002 deletions
+16
View File
@@ -23,6 +23,22 @@ export function t(key, params) {
return s;
}
/**
* Merge additional strings into the dictionaries — the registration seam for
* plugin page fragments, which ship their own `{ en, it, fr }` table and call
* this at module-load time (before their first render). Keys MUST be namespaced
* (`plugin.<id>.<key>`) so a plugin never clobbers a core key or another
* plugin's. Unknown locales are created on demand; missing keys still fall back
* through `t()` (locale → en → key). Merging alone does not re-render — the
* fragment registers before it mounts, and later `locale-changed` events drive
* updates as usual via `I18nMixin`.
*/
export function addStrings(dicts) {
for (const [loc, map] of Object.entries(dicts || {})) {
DICTS[loc] = { ...(DICTS[loc] || {}), ...map };
}
}
export function getLocale() { return _locale; }
export function setLocale(locale, { persist = false } = {}) {