Migrate Views interface patterns
This commit is contained in:
@@ -11,6 +11,7 @@ from govoplan_core.core.module_guards import (
|
||||
persistent_table_uninstall_guard,
|
||||
)
|
||||
from govoplan_core.core.modules import (
|
||||
DocumentationLink,
|
||||
DocumentationTopic,
|
||||
FrontendModule,
|
||||
MigrationSpec,
|
||||
@@ -309,8 +310,84 @@ manifest = ModuleManifest(
|
||||
documentation_types=("admin", "user"),
|
||||
audience=("administrator", "power_user", "workflow_designer"),
|
||||
related_modules=("access", "admin", "policy", "workflow_engine"),
|
||||
links=(
|
||||
DocumentationLink(
|
||||
label="Views administration",
|
||||
href="/admin?section=system-views",
|
||||
kind="runtime",
|
||||
),
|
||||
DocumentationLink(
|
||||
label="Views API",
|
||||
href="/api/v1/views/definitions",
|
||||
kind="api",
|
||||
),
|
||||
),
|
||||
metadata={
|
||||
"kind": "guide",
|
||||
"help_contexts": [
|
||||
"views.selector",
|
||||
"views.admin.system",
|
||||
"views.admin.tenant",
|
||||
"views.settings.personal",
|
||||
"views.admin.blocked",
|
||||
],
|
||||
},
|
||||
order=18,
|
||||
),
|
||||
DocumentationTopic(
|
||||
id="views.reference.fields-and-consequences",
|
||||
title="View fields, assignments, and consequences",
|
||||
summary=(
|
||||
"Understand immutable revisions, assignment precedence, required "
|
||||
"View safeguards, and the difference between visibility and access."
|
||||
),
|
||||
body=(
|
||||
"A View definition owns immutable revisions of visible surface IDs. "
|
||||
"Publishing makes the latest revision assignable. Available assignments "
|
||||
"let users opt in, defaults apply until changed, and required assignments "
|
||||
"cannot be left. User and group assignments take precedence over tenant "
|
||||
"and system assignments. Pinning preserves one published revision; an "
|
||||
"unpinned assignment follows later publications. Required Views must keep "
|
||||
"the selector and administration escape surfaces. Hiding a surface never "
|
||||
"grants or revokes authorization, and inherited definitions or assignments "
|
||||
"must be changed in their owning scope."
|
||||
),
|
||||
documentation_types=("admin",),
|
||||
audience=("administrator", "power_user", "workflow_designer"),
|
||||
related_modules=("access", "admin", "policy", "workflow_engine"),
|
||||
links=(
|
||||
DocumentationLink(
|
||||
label="Views administration",
|
||||
href="/admin?section=system-views",
|
||||
kind="runtime",
|
||||
),
|
||||
DocumentationLink(
|
||||
label="View assignments API",
|
||||
href="/api/v1/views/assignments",
|
||||
kind="api",
|
||||
),
|
||||
),
|
||||
metadata={
|
||||
"kind": "reference",
|
||||
"help_contexts": [
|
||||
"views.field.name",
|
||||
"views.field.description",
|
||||
"views.field.surfaces",
|
||||
"views.field.assignment-target",
|
||||
"views.field.assignment-mode",
|
||||
"views.field.assignment-priority",
|
||||
"views.action.publish",
|
||||
"views.action.archive",
|
||||
],
|
||||
"consequence_classes": {
|
||||
"publish": "Creates the assignable immutable revision used by unpinned assignments.",
|
||||
"required": "Constrains affected users while retaining selector and administration escape surfaces.",
|
||||
"archive": "Deactivates optional assignments; required assignments must be removed first.",
|
||||
"remove_assignment": "Stops the target from inheriting this assignment without deleting the View.",
|
||||
},
|
||||
},
|
||||
order=19,
|
||||
),
|
||||
),
|
||||
architecture=declared_module_architecture(
|
||||
layer="governance_accountability",
|
||||
|
||||
Reference in New Issue
Block a user