feat(cabana): read-only Plugins screen with installed plugins

- GET /plugins (backend.view_plugins, superusers always pass) lists the
  plugins from party.Installed, or party.Activated IDs for older builds,
  with the built framework version and whether the registry is configured
- Settings -> System -> Plugins entry with the new SettingsEntry.path,
  added only for principals allowed to open it
- PluginsView at /system/plugins with an Installed tab (reka-ui Tabs);
  settings panel, rail, breadcrumbs and page title know the route
- OpenAPI and SPA types regenerated; contract, token-class and
  conformance inventories list the route; en/pl strings; docs
This commit is contained in:
Jakub Zych
2026-10-29 19:05:46 +01:00
parent 0418900122
commit c4b1ac4076
27 changed files with 998 additions and 12 deletions

View File

@@ -645,6 +645,57 @@
"backend::lang.page.not_found": {
"other": "Nie znaleziono strony."
},
"backend::lang.permissions.view_plugins": {
"other": "Podgląd wtyczek"
},
"backend::lang.plugins.column_plugin": {
"other": "Wtyczka"
},
"backend::lang.plugins.column_source": {
"other": "Źródło"
},
"backend::lang.plugins.column_version": {
"other": "Wersja"
},
"backend::lang.plugins.empty": {
"other": "Brak zainstalowanych wtyczek."
},
"backend::lang.plugins.framework": {
"other": "Framework :version"
},
"backend::lang.plugins.load_failed": {
"other": "Nie udało się wczytać listy wtyczek."
},
"backend::lang.plugins.menu_description": {
"other": "Zainstalowane wtyczki, ich wersje i dostępne aktualizacje oraz katalog wtyczek."
},
"backend::lang.plugins.menu_label": {
"other": "Wtyczki"
},
"backend::lang.plugins.no_version": {
"other": "Brak wersji"
},
"backend::lang.plugins.source_local": {
"other": "W aplikacji"
},
"backend::lang.plugins.source_module": {
"other": "Moduł Go"
},
"backend::lang.plugins.source_submodule": {
"other": "Submoduł git"
},
"backend::lang.plugins.tab_installed": {
"other": "Zainstalowane"
},
"backend::lang.plugins.tab_marketplace": {
"other": "Katalog"
},
"backend::lang.plugins.tabs_label": {
"other": "Sekcje ekranu Wtyczki"
},
"backend::lang.plugins.title": {
"other": "Wtyczki"
},
"backend::lang.relation.add": {
"other": "Dodaj"
},