Add field presenters for GLQL: bool, time, health, state
What does this MR do and why?
Add new field presenters for GLQL
When rendering a GLQL block, new presenters for boolean, time, state and health status ensures that these values are presented neatly.
Partly addresses issues #477310 (closed) and #477311 (closed)
This is a multi-MR effort to split !161632 (closed) into smaller MRs.
- Push feature flag :glql_integration to frontend (!161942 - merged)
- Render GLQL blocks into a simple list of issues (!162050 - merged)
- Render GLQL blocks into a table of issues (!162081 - merged)
-
Add field presenters for GLQL: bool, time, heal... (!162951 - merged) (
👈 This MR)
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
For GLQL block:
```glql
---
display: list
fields: title, state, author, createdAt, healthStatus, dueDate
---
assignee = currentUser()
```
before | after |
---|---|
How to set up and validate locally
- Enable feature flag
:glql_integration
. - In a project, assign yourself some issues.
- Create a wiki page with the following content:
```glql
---
display: list
fields: title, state, author, createdAt, healthStatus, dueDate, confidential
---
assignee = currentUser()
```
- Save the page
Presentation layer
The optional YAML front matter block above the query contains presentation options.
Currently supported options:
-
display
: How to display the data. Currently supported options:list
ororderedList
. Default:list
. -
limit
: How many items to display. Current default: 100. Max limit is also 100. -
fields
: A comma separated value of fields. If not provided, onlytitle
field is included by default.
Currently supported fields: iid
, author
, state
, title
, createdAt
, updatedAt
, healthStatus
, dueDate
, confidential
. Other fields may work here, but are not officially supported or tested with this MR.
Examples of GLQL queries:
weight = 1
assignee = currentUser()
label in ("devops::plan", "devops::create")
label != "backend" and author = currentUser() and weight = 1 and updated > today()
updated > today()
Supported areas
Rendering of GLQL blocks is supported behind a feature flag in the following areas:
- Wikis (both group and project wikis)
- Epics and epic comments
- Issue and issue comments
- Merge requests and merge request comments
- Work items and work item comments