Liking cljdoc? Tell your friends :D

wagoe.admin.core.db-errors

Reading database constraint errors the admin can explain to a user.

Reading database constraint errors the admin can explain to a user.
raw docstring

wagoe.admin.core.display

Display roles for the admin overview (ADR-040).

A field's role says what its value is to a reader — a relation, money, a due date — and decides how a list cell renders it. Roles are derived from the field's type, its name and the entity's relations; an explicit :display in the field config wins. Pure: config in, data out.

Display roles for the admin overview (ADR-040).

A field's role says what its value is to a reader — a relation, money, a
due date — and decides how a list cell renders it. Roles are derived from
the field's type, its name and the entity's relations; an explicit
`:display` in the field config wins. Pure: config in, data out.
raw docstring

wagoe.admin.core.forms

What an entity form shows, which of a form's errors it cannot show next to a field, and the child rows a parent is created with (BOU-570).

What an entity form shows, which of a form's errors it cannot show next
to a field, and the child rows a parent is created with (BOU-570).
raw docstring

wagoe.admin.core.permissions

Who may do what in the admin, as pure decisions.

Under :wagoe/authorization :mode :off and :report today's rule decides: the :admin role. Under :enforce the user's rights do (ADR-041 §6): admin.<entity>/read to see an entity, admin.<entity>/write to change it, each held in scopes the entity can check. A platform admin holds everything, everywhere.

The shell puts the request's rights on the user map under ::access (with-access); a user without it is decided by the role.

Who may do what in the admin, as pure decisions.

Under `:wagoe/authorization :mode :off` and `:report` today's rule
decides: the `:admin` role. Under `:enforce` the user's rights do
(ADR-041 §6): `admin.<entity>/read` to see an entity, `admin.<entity>/write`
to change it, each held in scopes the entity can check. A platform admin
holds everything, everywhere.

The shell puts the request's rights on the user map under `::access`
(`with-access`); a user without it is decided by the role.
raw docstring

wagoe.admin.core.schema-introspection

Pure functions for database schema introspection and entity configuration.

This namespace contains pure business logic for transforming raw database metadata into UI-friendly entity configurations. All functions are pure (no side effects) and testable without database connections.

Key responsibilities:

  • Parse database column metadata into field configurations
  • Infer appropriate UI widgets from database types
  • Detect relationships and foreign keys
  • Merge auto-detected configuration with manual overrides
  • Generate sensible defaults for labels and field ordering
Pure functions for database schema introspection and entity configuration.

This namespace contains pure business logic for transforming raw database
metadata into UI-friendly entity configurations. All functions are pure
(no side effects) and testable without database connections.

Key responsibilities:
- Parse database column metadata into field configurations
- Infer appropriate UI widgets from database types
- Detect relationships and foreign keys
- Merge auto-detected configuration with manual overrides
- Generate sensible defaults for labels and field ordering
raw docstring

wagoe.admin.core.ui

Admin UI components using Hiccup for server-side HTML generation.

This namespace is a thin FACADE: the implementation lives in focused sibling namespaces under wagoe.admin.core.ui.*. Every public function consumers rely on is re-exported here so admin-ui/entity-list-page, ui/format-field-label, etc. keep resolving unchanged.

Implementation namespaces:

  • wagoe.admin.core.ui.base — shared URL/field/column primitives
  • wagoe.admin.core.ui.layout — sidebar nav, home, error pages
  • wagoe.admin.core.ui.list — entity list page, table, rows, search
  • wagoe.admin.core.ui.filters — advanced filter builder
  • wagoe.admin.core.ui.inline-editing — inline (double-click) cell editing
  • wagoe.admin.core.ui.detail — detail/edit page, form, field grouping
  • wagoe.admin.core.ui.drawer — the record drawer beside the list

See each impl namespace for the original docstrings on these functions.

Admin UI components using Hiccup for server-side HTML generation.

This namespace is a thin FACADE: the implementation lives in focused
sibling namespaces under `wagoe.admin.core.ui.*`. Every public function
consumers rely on is re-exported here so `admin-ui/entity-list-page`,
`ui/format-field-label`, etc. keep resolving unchanged.

Implementation namespaces:
- `wagoe.admin.core.ui.base`           — shared URL/field/column primitives
- `wagoe.admin.core.ui.layout`         — sidebar nav, home, error pages
- `wagoe.admin.core.ui.list`           — entity list page, table, rows, search
- `wagoe.admin.core.ui.filters`        — advanced filter builder
- `wagoe.admin.core.ui.inline-editing` — inline (double-click) cell editing
- `wagoe.admin.core.ui.detail`         — detail/edit page, form, field grouping
- `wagoe.admin.core.ui.drawer`         — the record drawer beside the list

See each impl namespace for the original docstrings on these functions.
raw docstring

wagoe.admin.core.ui.base

Shared admin UI primitives used across multiple ui.* sections.

Leaf namespace: URL helpers, field-value rendering, list-column width heuristics, and small formatting/label utilities. Must NOT require any other wagoe.admin.core.ui.* implementation namespace — it is the dependency root that the focused sections build on.

Shared admin UI primitives used across multiple ui.* sections.

Leaf namespace: URL helpers, field-value rendering, list-column width
heuristics, and small formatting/label utilities. Must NOT require any
other wagoe.admin.core.ui.* implementation namespace — it is the
dependency root that the focused sections build on.
raw docstring

wagoe.admin.core.ui.cells

List cells rendered by display role (ADR-040).

cell turns one value into the content of its list cell according to the field's role; cell-class is the class every cell of that role carries, so the stylesheet styles roles, never fields. What a cell needs beyond the value — a relation's title, a has-many count, the time — arrives in the overview the shell computed for the page. Pure Hiccup.

List cells rendered by display role (ADR-040).

`cell` turns one value into the content of its list cell according to the
field's role; `cell-class` is the class every cell of that role carries, so
the stylesheet styles roles, never fields. What a cell needs beyond the
value — a relation's title, a has-many count, the time — arrives in the
overview the shell computed for the page. Pure Hiccup.
raw docstring

wagoe.admin.core.ui.detail

Entity detail/edit page components: form widgets, field grouping, the entity form, parent-context/related-records tables, and the detail page.

Pure Hiccup generators. Depends on base for URL and field helpers.

Entity detail/edit page components: form widgets, field grouping, the
entity form, parent-context/related-records tables, and the detail page.

Pure Hiccup generators. Depends on `base` for URL and field helpers.
raw docstring

wagoe.admin.core.ui.drawer

The record drawer: one record beside its list, opened by clicking its row.

Read-only, rendered by the same display roles as the list cells (ADR-040), so a relation is a name, an enum a badge, money formatted. Editing stays on the detail page; the drawer links there. Pure Hiccup.

The record drawer: one record beside its list, opened by clicking its row.

Read-only, rendered by the same display roles as the list cells (ADR-040),
so a relation is a name, an enum a badge, money formatted. Editing stays on
the detail page; the drawer links there. Pure Hiccup.
raw docstring

wagoe.admin.core.ui.filters

Advanced filter builder components for admin entity lists.

Pure Hiccup generators for the filter UI: operator selection per field type, value inputs, filter rows, and the overall filter builder.

Advanced filter builder components for admin entity lists.

Pure Hiccup generators for the filter UI: operator selection per field
type, value inputs, filter rows, and the overall filter builder.
raw docstring

wagoe.admin.core.ui.inline-editing

Inline (double-click) table-cell editing components.

Pure Hiccup generators for the editable-cell display mode, the inline edit form, and the inline edit form with a validation error.

Inline (double-click) table-cell editing components.

Pure Hiccup generators for the editable-cell display mode, the inline
edit form, and the inline edit form with a validation error.
raw docstring

wagoe.admin.core.ui.layout

Admin nav contribution, page layout, error pages, and URL utilities.

Pure Hiccup generators for the admin chrome: the admin's contribution to the sidebar of the shell in wagoe.shared.ui.core.shell, the dashboard home, 403/404 error pages and the build-table-url helper.

Admin nav contribution, page layout, error pages, and URL utilities.

Pure Hiccup generators for the admin chrome: the admin's contribution to
the sidebar of the shell in `wagoe.shared.ui.core.shell`, the dashboard
home, 403/404 error pages and the `build-table-url` helper.
raw docstring

wagoe.admin.core.ui.list

Entity list-page components: search form, table rows, table, and the complete list page (toolbar + filter builder + table).

Pure Hiccup generators. Depends on base for URL helpers, field-value rendering, and column sizing, and on filters for the filter builder.

Entity list-page components: search form, table rows, table, and the
complete list page (toolbar + filter builder + table).

Pure Hiccup generators. Depends on `base` for URL helpers, field-value
rendering, and column sizing, and on `filters` for the filter builder.
raw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
←Move to previous article
→Move to next article
Ctrl+/Jump to the search field
× close