Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6e48c04af8 | ||
|
|
c8059c8afc | ||
|
|
3d33d7a217 |
@@ -13,3 +13,21 @@ Mail, Postbox, and future chat providers are composed inside the one Messages
|
|||||||
overlay while retaining their independent delivery and authority semantics.
|
overlay while retaining their independent delivery and authority semantics.
|
||||||
|
|
||||||
See [Quick Access architecture](docs/QUICK_ACCESS.md).
|
See [Quick Access architecture](docs/QUICK_ACCESS.md).
|
||||||
|
|
||||||
|
## Git-source WebUI package
|
||||||
|
|
||||||
|
The repository root exposes `@govoplan/quick-access-webui` for Git-tagged release
|
||||||
|
dependencies. It mirrors the owning `webui/package.json` version, public
|
||||||
|
TypeScript/CSS exports and peer requirements, with entry paths under
|
||||||
|
`webui/src`. Consumers provide the shared Core/React peers; the facade runs no
|
||||||
|
development or install scripts. The source archive contains `webui/src`, this
|
||||||
|
README and any repository license file. Run module development checks from `webui/`; Python
|
||||||
|
installation remains governed by `pyproject.toml`.
|
||||||
|
|
||||||
|
Das Repository stellt `@govoplan/quick-access-webui` am Wurzelpfad für versionierte
|
||||||
|
Git-Abhängigkeiten bereit. Version, öffentliche TypeScript-/CSS-Exporte und
|
||||||
|
Peer-Anforderungen entsprechen `webui/package.json`; die Einstiegspfade liegen
|
||||||
|
unter `webui/src`. Gemeinsame Core-/React-Peers stellt die einbindende Anwendung
|
||||||
|
bereit. Die Fassade führt keine Entwicklungs- oder Installationsskripte aus.
|
||||||
|
Entwicklungsprüfungen bleiben in `webui/`, die Python-Installation weiterhin in
|
||||||
|
`pyproject.toml` definiert.
|
||||||
|
|||||||
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"name": "@govoplan/quick-access-webui",
|
||||||
|
"version": "0.1.21",
|
||||||
|
"private": true,
|
||||||
|
"type": "module",
|
||||||
|
"main": "webui/src/index.ts",
|
||||||
|
"module": "webui/src/index.ts",
|
||||||
|
"types": "webui/src/index.ts",
|
||||||
|
"exports": {
|
||||||
|
".": {
|
||||||
|
"types": "./webui/src/index.ts",
|
||||||
|
"import": "./webui/src/index.ts"
|
||||||
|
},
|
||||||
|
"./styles/quick-access.css": "./webui/src/styles/quick-access.css"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@govoplan/core-webui": "^0.1.18",
|
||||||
|
"lucide-react": "^1.23.0",
|
||||||
|
"react": ">=19.2.7 <20",
|
||||||
|
"react-dom": ">=19.2.7 <20",
|
||||||
|
"react-router": ">=8.3.0 <9"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@govoplan/core-webui": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"files": [
|
||||||
|
"webui/src",
|
||||||
|
"README.md",
|
||||||
|
"LICENSE"
|
||||||
|
]
|
||||||
|
}
|
||||||
+1
-1
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|||||||
|
|
||||||
[project]
|
[project]
|
||||||
name = "govoplan-quick-access"
|
name = "govoplan-quick-access"
|
||||||
version = "0.1.19"
|
version = "0.1.21"
|
||||||
description = "Governed configurable Quick Access rail for GovOPlaN."
|
description = "Governed configurable Quick Access rail for GovOPlaN."
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
requires-python = ">=3.12"
|
requires-python = ">=3.12"
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
"""GovOPlaN Quick Access module."""
|
"""GovOPlaN Quick Access module."""
|
||||||
|
|
||||||
__version__ = "0.1.19"
|
__version__ = "0.1.21"
|
||||||
|
|||||||
@@ -0,0 +1,32 @@
|
|||||||
|
"""German translations for public structured documentation metadata."""
|
||||||
|
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
from typing import Any
|
||||||
|
|
||||||
|
|
||||||
|
GERMAN_STRUCTURED_TRANSLATIONS: dict[str, dict[str, Any]] = {'quick-access.data-subject-requests': {'consequence_classes': {'delete_personal_profile': 'Entfernt '
|
||||||
|
'persönliche '
|
||||||
|
'Overrides; '
|
||||||
|
'Reged '
|
||||||
|
'Defaults '
|
||||||
|
'gelten '
|
||||||
|
'wieder.',
|
||||||
|
'export_personal_profile': 'Gibt '
|
||||||
|
'begrenzte '
|
||||||
|
'Schienenpräferenzen '
|
||||||
|
'zurück, '
|
||||||
|
'niemals '
|
||||||
|
'werkzeugeigene '
|
||||||
|
'Daten.',
|
||||||
|
'retain_tenant_attribution': 'Preserves '
|
||||||
|
'minimiert '
|
||||||
|
'Mandant-Politik '
|
||||||
|
'Rechenschaftspflicht '
|
||||||
|
'Nachweise.'}},
|
||||||
|
'quick-access.user': {'steps': ['Öffnen Sie eine Kategorie auf der richtigen Schiene und wählen '
|
||||||
|
'Sie ein verfügbares kompaktes Werkzeug.',
|
||||||
|
'Füllen Sie die begrenzte Aktion des Eigentümermoduls aus oder '
|
||||||
|
'stornieren Sie sie ausdrücklich.',
|
||||||
|
'Folgen Sie dem Owning-Page-Link, wenn die Aufgabe die kompakte '
|
||||||
|
'Oberfläche übersteigt.']}}
|
||||||
@@ -1,5 +1,8 @@
|
|||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
|
from govoplan_core.core.modules import with_documentation_structured_translations
|
||||||
|
from govoplan_quick_access.backend.german_structured_documentation import GERMAN_STRUCTURED_TRANSLATIONS
|
||||||
|
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
from govoplan_core.core.access import (
|
from govoplan_core.core.access import (
|
||||||
@@ -35,7 +38,7 @@ from govoplan_quick_access.backend.dsar_provider import (
|
|||||||
|
|
||||||
MODULE_ID = "quick_access"
|
MODULE_ID = "quick_access"
|
||||||
MODULE_NAME = "Quick Access"
|
MODULE_NAME = "Quick Access"
|
||||||
MODULE_VERSION = "0.1.19"
|
MODULE_VERSION = "0.1.21"
|
||||||
|
|
||||||
READ_SCOPE = "quick_access:profile:read"
|
READ_SCOPE = "quick_access:profile:read"
|
||||||
WRITE_SCOPE = "quick_access:profile:write"
|
WRITE_SCOPE = "quick_access:profile:write"
|
||||||
@@ -184,6 +187,9 @@ DOCUMENTATION = (
|
|||||||
title="Quick Access rail",
|
title="Quick Access rail",
|
||||||
summary="Keep selected work, calendar, message, and file tools available beside the current page.",
|
summary="Keep selected work, calendar, message, and file tools available beside the current page.",
|
||||||
body=(
|
body=(
|
||||||
|
"Documentation books sit immediately beside the visible heading or contextual label for the "
|
||||||
|
"displayed Quick Access tool, not among operational action buttons. Field help remains beside "
|
||||||
|
"its label. "
|
||||||
"Open a category on the right rail to use compact tools without leaving the current task. "
|
"Open a category on the right rail to use compact tools without leaving the current task. "
|
||||||
"Messages combines enabled Mail, Postbox, and future chat contributions in one overlay. "
|
"Messages combines enabled Mail, Postbox, and future chat contributions in one overlay. "
|
||||||
"Personal settings can reorder or hide items that remain available under system, tenant, "
|
"Personal settings can reorder or hide items that remain available under system, tenant, "
|
||||||
@@ -218,6 +224,9 @@ DOCUMENTATION = (
|
|||||||
"title": "Schnellzugriffsleiste",
|
"title": "Schnellzugriffsleiste",
|
||||||
"summary": "Ausgewaehlte Werkzeuge fuer Arbeit, Kalender, Nachrichten und Dateien neben der aktuellen Seite verwenden.",
|
"summary": "Ausgewaehlte Werkzeuge fuer Arbeit, Kalender, Nachrichten und Dateien neben der aktuellen Seite verwenden.",
|
||||||
"body": (
|
"body": (
|
||||||
|
"Dokumentationsbücher stehen unmittelbar neben der sichtbaren Überschrift oder "
|
||||||
|
"Kontextbezeichnung für das angezeigte Schnellzugriffswerkzeug, nicht zwischen ausführbaren "
|
||||||
|
"Aktionsschaltflächen. Feldhilfe bleibt neben der Feldbezeichnung. "
|
||||||
"Eine Kategorie in der rechten Leiste oeffnet kompakte Werkzeuge, ohne die aktuelle Aufgabe zu verlassen. "
|
"Eine Kategorie in der rechten Leiste oeffnet kompakte Werkzeuge, ohne die aktuelle Aufgabe zu verlassen. "
|
||||||
"Nachrichten fuehrt Beitraege aus Mail, Postfach und kuenftigen Chat-Modulen in einer Einblendung zusammen. "
|
"Nachrichten fuehrt Beitraege aus Mail, Postfach und kuenftigen Chat-Modulen in einer Einblendung zusammen. "
|
||||||
"Persoenliche Einstellungen koennen alle durch System, Mandant, Berechtigungen und Ansicht zugelassenen Eintraege ordnen oder ausblenden. "
|
"Persoenliche Einstellungen koennen alle durch System, Mandant, Berechtigungen und Ansicht zugelassenen Eintraege ordnen oder ausblenden. "
|
||||||
@@ -251,6 +260,9 @@ DOCUMENTATION = (
|
|||||||
title="Quick Access policy",
|
title="Quick Access policy",
|
||||||
summary="Govern which registered compact tools lower scopes may use and how they are ordered by default.",
|
summary="Govern which registered compact tools lower scopes may use and how they are ordered by default.",
|
||||||
body=(
|
body=(
|
||||||
|
"Documentation books sit immediately beside the visible heading or contextual label for the "
|
||||||
|
"displayed Quick Access tool, not among operational action buttons. Field help remains beside "
|
||||||
|
"its label. "
|
||||||
"The catalogue follows installed module registrations. System settings constrain tenants; "
|
"The catalogue follows installed module registrations. System settings constrain tenants; "
|
||||||
"tenant settings constrain users. An item may remain available, be blocked, or be forced. "
|
"tenant settings constrain users. An item may remain available, be blocked, or be forced. "
|
||||||
"Effective entries identify the system, tenant, user, or module source of availability and ordering; "
|
"Effective entries identify the system, tenant, user, or module source of availability and ordering; "
|
||||||
@@ -270,6 +282,9 @@ DOCUMENTATION = (
|
|||||||
"title": "Richtlinien fuer den Schnellzugriff",
|
"title": "Richtlinien fuer den Schnellzugriff",
|
||||||
"summary": "Verfuegbarkeit und Standardreihenfolge registrierter kompakter Werkzeuge steuern.",
|
"summary": "Verfuegbarkeit und Standardreihenfolge registrierter kompakter Werkzeuge steuern.",
|
||||||
"body": (
|
"body": (
|
||||||
|
"Dokumentationsbücher stehen unmittelbar neben der sichtbaren Überschrift oder "
|
||||||
|
"Kontextbezeichnung für das angezeigte Schnellzugriffswerkzeug, nicht zwischen ausführbaren "
|
||||||
|
"Aktionsschaltflächen. Feldhilfe bleibt neben der Feldbezeichnung. "
|
||||||
"Der Katalog folgt den Registrierungen installierter Module. Systemeinstellungen begrenzen Mandanten, "
|
"Der Katalog folgt den Registrierungen installierter Module. Systemeinstellungen begrenzen Mandanten, "
|
||||||
"Mandanteneinstellungen begrenzen Benutzer. Ein Eintrag kann verfuegbar, gesperrt oder erzwungen sein. "
|
"Mandanteneinstellungen begrenzen Benutzer. Ein Eintrag kann verfuegbar, gesperrt oder erzwungen sein. "
|
||||||
"Effektive Eintraege nennen System, Mandant, Benutzer oder Modul als Quelle fuer Verfuegbarkeit und Reihenfolge; "
|
"Effektive Eintraege nennen System, Mandant, Benutzer oder Modul als Quelle fuer Verfuegbarkeit und Reihenfolge; "
|
||||||
@@ -425,6 +440,11 @@ manifest = ModuleManifest(
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
manifest = with_documentation_structured_translations(
|
||||||
|
manifest, locale="de", translations=GERMAN_STRUCTURED_TRANSLATIONS
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def get_manifest() -> ModuleManifest:
|
def get_manifest() -> ModuleManifest:
|
||||||
return manifest
|
return manifest
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@govoplan/quick-access-webui",
|
"name": "@govoplan/quick-access-webui",
|
||||||
"version": "0.1.19",
|
"version": "0.1.21",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ import { Link, useLocation } from "react-router";
|
|||||||
import {
|
import {
|
||||||
DismissibleAlert,
|
DismissibleAlert,
|
||||||
DocumentationHelpLink,
|
DocumentationHelpLink,
|
||||||
|
TextWithHelp,
|
||||||
IconButton,
|
IconButton,
|
||||||
LoadingFrame,
|
LoadingFrame,
|
||||||
dispatchQuickAccessResult,
|
dispatchQuickAccessResult,
|
||||||
@@ -308,7 +309,11 @@ export default function QuickAccessRail({ settings, auth, tools, launchContext }
|
|||||||
>
|
>
|
||||||
<div className="quick-access-tool-heading">
|
<div className="quick-access-tool-heading">
|
||||||
<div>
|
<div>
|
||||||
<strong>{translateText(tool.label)}</strong>
|
<TextWithHelp help={metadata?.helpContextId ? (
|
||||||
|
<DocumentationHelpLink reference={{ contextId: metadata.helpContextId, moduleId: tool.module_id }} />
|
||||||
|
) : undefined}>
|
||||||
|
<strong>{translateText(tool.label)}</strong>
|
||||||
|
</TextWithHelp>
|
||||||
{recommendedToolIds.has(tool.id) ? (
|
{recommendedToolIds.has(tool.id) ? (
|
||||||
<span className="quick-access-recommended">
|
<span className="quick-access-recommended">
|
||||||
{translateText("i18n:govoplan-quick-access.recommended_for_view")}
|
{translateText("i18n:govoplan-quick-access.recommended_for_view")}
|
||||||
@@ -316,9 +321,6 @@ export default function QuickAccessRail({ settings, auth, tools, launchContext }
|
|||||||
) : null}
|
) : null}
|
||||||
{tool.description ? <small>{translateText(tool.description)}</small> : null}
|
{tool.description ? <small>{translateText(tool.description)}</small> : null}
|
||||||
</div>
|
</div>
|
||||||
{metadata?.helpContextId ? (
|
|
||||||
<DocumentationHelpLink reference={{ contextId: metadata.helpContextId, moduleId: tool.module_id }} />
|
|
||||||
) : null}
|
|
||||||
{tool.full_page_path ? (
|
{tool.full_page_path ? (
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
|
|||||||
Reference in New Issue
Block a user