Define semantic page action layouts
This commit is contained in:
@@ -19,6 +19,7 @@ const helpContext = read("src/utils/helpContext.ts");
|
||||
const pageLayout = read("src/components/PageLayout.tsx");
|
||||
const workspaceLayout = read("src/components/WorkspaceLayout.tsx");
|
||||
const actionToolbar = read("src/components/ActionToolbar.tsx");
|
||||
const pageActionBar = read("src/components/PageActionBar.tsx");
|
||||
const contentGrid = read("src/components/ContentGrid.tsx");
|
||||
const formSection = read("src/components/FormSection.tsx");
|
||||
const dialogAnatomy = read("src/components/DialogAnatomy.tsx");
|
||||
@@ -58,6 +59,11 @@ assert.match(workspaceLayout, /workspace-layout-\$\{variant\}/, "shared workspac
|
||||
assert.match(workspaceLayout, /data-help-scope="workspace"/, "shared workspaces preserve contextual-help identity");
|
||||
assert.match(actionToolbar, /action-toolbar-wrap-\$\{wrap\}/, "shared toolbars own responsive wrapping");
|
||||
assert.match(actionToolbar, /data-help-scope="toolbar"/, "shared toolbars preserve contextual-help identity");
|
||||
assert.match(pageActionBar, /variant: "collection"/, "collection pages have a semantic action-bar contract");
|
||||
assert.match(pageActionBar, /variant: "detail"/, "detail pages have a semantic action-bar contract");
|
||||
assert.match(pageActionBar, /variant: "editor"/, "editors have a semantic action-bar contract");
|
||||
assert.match(pageActionBar, /<ActionSlot name="reload">/, "page action bars keep reload in a named stable slot");
|
||||
assert.match(pageActionBar, /<ActionSlot name="discard">[\s\S]*<ActionSlot name="save">/, "editor save follows discard in the trailing group");
|
||||
assert.match(contentGrid, /content-grid-collapse-\$\{collapseAt\}/, "shared grids make their collapse point explicit");
|
||||
assert.match(formSection, /form-section-header/, "shared form sections own heading and action placement");
|
||||
assert.match(dialogAnatomy, /dialog-actions-\$\{align\}/, "shared dialog anatomy owns footer action placement");
|
||||
|
||||
@@ -26,6 +26,7 @@ const packageByModule = {
|
||||
notifications: "@govoplan/notifications-webui",
|
||||
organizations: "@govoplan/organizations-webui",
|
||||
ops: "@govoplan/ops-webui",
|
||||
payments: "@govoplan/payments-webui",
|
||||
policy: "@govoplan/policy-webui",
|
||||
portal: "@govoplan/portal-webui",
|
||||
postbox: "@govoplan/postbox-webui",
|
||||
@@ -74,6 +75,7 @@ const cases = [
|
||||
{ name: "mail-only", modules: ["mail"] },
|
||||
{ name: "notifications-only", modules: ["notifications"] },
|
||||
{ name: "organizations-only", modules: ["organizations"] },
|
||||
{ name: "payments-only", modules: ["payments"] },
|
||||
{ name: "idm-with-organizations", modules: ["organizations", "idm"] },
|
||||
{ name: "identity-trust-only", modules: ["identity_trust"] },
|
||||
{ name: "identity-trust-with-access", modules: ["access", "identity_trust"] },
|
||||
@@ -100,7 +102,7 @@ const cases = [
|
||||
{ name: "tasks-only", modules: ["access", "tasks"] },
|
||||
{ name: "tasks-with-contributors", modules: ["access", "approvals", "postbox", "workflow", "dashboard", "tasks"] },
|
||||
{ name: "voting-only", modules: ["access", "voting"] },
|
||||
{ name: "full-product", modules: ["access", "tenancy", "admin", "addresses", "approvals", "policy", "audit", "dashboard", "datasources", "dataflow", "dist_lists", "templates", "workflow", "views", "organizations", "idm", "identity_trust", "encryption", "cases", "committee", "campaigns", "files", "forms", "forms_runtime", "mail", "notifications", "docs", "ops", "calendar", "scheduling", "portal", "postbox", "projects", "quick_access", "reporting", "records", "risk_compliance", "search", "tasks", "voting"] }
|
||||
{ name: "full-product", modules: ["access", "tenancy", "admin", "addresses", "approvals", "policy", "audit", "dashboard", "datasources", "dataflow", "dist_lists", "templates", "workflow", "views", "organizations", "idm", "identity_trust", "encryption", "cases", "committee", "campaigns", "files", "forms", "forms_runtime", "mail", "notifications", "docs", "ops", "payments", "calendar", "scheduling", "portal", "postbox", "projects", "quick_access", "reporting", "records", "risk_compliance", "search", "tasks", "voting"] }
|
||||
];
|
||||
|
||||
const npmExec = process.env.npm_execpath;
|
||||
|
||||
Reference in New Issue
Block a user